Add support for irobot roomba clean specific room

Hi, just wondering if you just used the logger code as suggested and roomba returned region ID?
I tried the same but for whatever reason there is no region ID being logged in debug.

I’ve managed to get the debug and last command working, but not sure how to use this to trigger the room specific cleaning? What would i need to put in the command/params box on the actions page to get this working?

I created a script for each room and put them as a button on my dashboard.
For example:

alias: Roomba Flur
sequence:
  - target:
      entity_id: vacuum.roomba
    data:
      command: start
      params:
        pmap_id: jfL4aTvJSzSlBdlDrte44A
        regions:
          - region_id: "7"
            type: rid
        user_pmapv_id: 241124T080112
    action: vacuum.send_command
mode: single
icon: mdi:rectangle-outline
fields: {}

Be sure to use your own entity_id, pmap_id, region_id and user_pmapv_id from your log.

1 Like

Thanks!

I was struggling and had almost exactly the same code but it wasn’t triggering anything! Ended up using chatGPT and it must have been a formatting error or something as it produced pretty much the same code is written, except the strings were in quotations, and it worked.

Ended up creating 3 helper template buttons that I can add to my dashboard

Glad to hear.

It’s also important to check the continuous-checkbox of the integration again.


As far as I know it is not possible to log the commands and being able to trigger the scripts at the same time because logging requires the checkbox to be off and the scripts require it to be on.

Hi Hildnero,

This was the best approach for me by far! I have all single room working now, but when I want to add multiple regions the script does nothing.

I have a setup like this

regions:
  - region_id: "6"
    type: rid
  - region_id: "1"
    type: rid

But when I run the script nothing happens. For the scripts with only 1 region everything works as it should.

Any ideas how to specify several regions for one script?

Best regards

Hi there, glad it helped!

I did not dive into that yet.

But the best approach would be to trigger the cleaning of your desired rooms in the iRobot app and then check what the log is saying.

I know that the app also passes multiple regions to a single command if you select more than one room. But maybe just in a different way than you are attempting.

Or maybe it passes anything like multiple_regions: true to the command?

Please keep me updated on that if you find a solution!

I am an idiot…

I copy pasted the script for the rooms and forgot to change the entity to my roombas Id. Everthing is working, also multiple rooms :slight_smile:

Best regards