iRobot Roomba i7+ Configuration using Rest980

Unfortuantly this add-on is code based. Please have a go at following the steps in the GH Repo.

Getting this info is explained in Step 5 from the GH Repo. Please follow all the steps to ensure you set this up correctly!

you should have a sensor.vacuum if you have following the steps - do you see this entity?

Thanks, you are correct this was not called out in the documentation - I have corrected this.

Bascially yes

  • sensor.rest980 pulls the data in from the HA Addon (so you will need a second sensor i.e. sensor.rest980_2)
  • sensor.vacuum templates the retrieved data into a more user-friendly format

in theory it should, but it will depend on the capabilities the i6 has for how much functionaility you will get from this.

I may need some more help setting up mop.
As of now I’ve done:
enabled _2 versions of both rest980 and php_nginx.
Running them on ports 4000 and 4001, managed to grab RID (region ID info from port 4000).
I think I’m missing something when it comes to lovelace.
I created MOP section in secrets.yaml
created mop.yaml under packages, replaced vacuum by mop and rest980 by rest980_2.
Created config/mop directory (similar to config/vacuum) updated mop.yaml with that directory.
Went to Overview added new card with proper info (I think it’s proper). However I get:

In my packages/mop.yaml, i’ve
image

Thanks

Hmm, should be right.

Firstly have you rebooted since creating them (or reloaded the relevant YAML component)
Also, do you see these entities if you look on the developer tools => states tab ?

Good Morning, evening afternoon everyone.

I have been fighting with this for days, and losing sleep at night over this. I troubleshoot things for a living, but my oh my this has me stumped.

Some quick notes, I have gotten to the same place twice now, and can’t get things to work right, I have followed your guide the best I can, I have tried to follow others (for other vacuums using their notes and ideas to fix my issues). I have duplicate copies of files everywhere just in case something wasn’t in the right spot.

So now I am here for your help, I can’t fight it anymore. I have attached some images of where I am at with the card. I am going to add here that none of the cleaning room commands work, not even the 2 I did get the ID for (LR and entry) but I am not worried about them, I really just need a full clean, a kitchen clean, the maintenance stuff, and the beautiful card (it really is beautiful).

I am not sure where to go. I also am adding in my config yaml, but has had several revisions as well over my trials.


# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:

# Text to speech
tts:
  - platform: google_translate

group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml


homeassistant:
  packages: !include_dir_named \config\www\community\

# mqtt discovery
mqtt:
  discovery: true  
  
tplink:
  discovery: true
  light:

I may have solveds this on my own (using another thread). If anyone gets stuck like I did (and I am not sure if I am fully solved yet or not, but it looks right) I added

``
homeassistant:
packages:
pack_1: !include vacuum.yaml


to my config.yaml and moved vacuum.yaml to my config folder.

Lastly I added 

resources:

  • type: module
    url: /hacsfiles/lovelace-roomba-vacuum-card/roomba-vacuum-card.js
  • type: module
    url: /hacsfiles/button-card/button-card.js
  • type: module
    url: /hacsfiles/lovelace-fold-entity-row/fold-entity-row.js
  • type: module
    url: /hacsfiles/text-divider-row/text-divider-row.js
  • type: module
    url: /hacsfiles/check-button-card/check-button-card.js
  • type: module
    url: /hacsfiles/lovelace-card-mod/card-mod.js
to my lovelace.yaml above the code for the card (that doesn't seem to do anything so I might just remove that and see if things still work).

Current issue to still be resolved:

Can not save the card in the editor. Not even sure how I got it to work the first time since the save will just literally circle and circle. Maybe it does save but doesn't show it did? I just keep duplicating the card at this point.

The other issue is setting up automation on a schedule. I want specific days and times.

Will try this again later, I got hit with this last few days: Updated core and now <ip>:8123 doesn't load - #6 by hass_noob

Now setting things up again

GL @hass_noob! Wish I could help, but I am a noob as well. I am looking at messing with themes next to make it match the beautiful card it uses. I will make sure and make a snapshot before I do anything with them however so I don’t have an issue!

I want to update that the circle issue with saving was cleared up by clearing cache.

I think I may have gotten the automation for a full run working, but I haven’t tested it (it will self test Saturday (sure I can run it sooner, but I want some joy while I am at work that I got it working lol)).

I need to figure out the map thing next but if I can get this 90% of the way, I will be taking a break (and keeping an eye on here).

So quick update, automation works with the REST clean command you can automate a full clean.

I added in config yaml

mqtt:
  discovery: true
  discovery_prefix: homeassistant  #replace homeassistant with whatever your username was

Some maint/clean things aren’t working right, 51 years over, but some are.

@hass_noob Hows it going for you? I remember you were working on starting it over from scratch.

I get this error when trying to add your repo…

Repository structure for master is not compliant…

I figured it out… I was trying to add to HACS instead of Supervisor…

1 Like

Suggestions? I have 2 i980 iRobots that don’t have the room mapping. In the App, i can create Favorite which defaults to Vacuum Everywhere… How can I still use your great work? I have rest980 and the NGINX working great and can hit the URL for state and the /map works on both of my 980s. I am struggling getting the integration into HA. right now I don’t have sensor.vacuum as an entity and stuck there.

Looking for some help. New to Home Assistant but I have successfully onboarded 2 instances of Rest980 and NGINX and integrated to HA using Supervisor and the HACS. I have 2 980 robots and have them separated out and /map, state, etc working perfect. I followed the direction to had the Lovelace UI card and after fighting and redoing my configuration.yaml, adding the package capability I was able to get a nice looking card on my dashboard for Robot 1. I thought I would just add another card and be done. No Dice!!! I figured out I needed to clone the vacuum.yaml and set up a sensor.vacuum2 and associated configs for HASS integration. I got that working and had two beautiful cards for robot1 and robot2 along with MQTT reporting properly from both robots.

My current issue is the buttons on card 2 interact with robot 1 and I have comb through everything including the javascript and stuck.

Anyone have any ideas?

Hey there, sorry, work been kicking my butt, haven’t even played with my set up for a week.

To answer your question above, maybe, I set the automation to fire off the call service of “rest_command.vacuum_clean” that does a full clean for me. I have full clean (clean everywhere) as a favorite as well on my i7.

I know there was a NGIX(2) and rest980(2) in the addons, if you are using those and still having the issue, then I would look into the code itself, and see if you can see something that might be pointing to original, and not the (2). I wish I could be more help but that is about all I can offer on this issue. I am new to HA, myself, just got my roomba a month ago, and HA set up maybe 2 months ago lol

Let us know how you fix it, so if/when someone else ends up here they can trace your steps and hopefully fix it too. That’s why I am leaving a trail with what I do to fix everything along the way.

I tried a few different combinations, no luck… I agree the issue is on the rest_command, I just can t get the mapping figured out…

i ran into trouble with the roombapw addon. It seems you do not only have to disable the app on your phone but also disable the Roomba integration in home assistant.

I think I’ve captured the issues below, please tag me if ive missed something.

ok so the lovelace config provided is actually two seperate cards. there is the settings and the camera cards. is this still not working for you?

You just need to click on them again to reset the time back to 0

you need to add an attribute for “vacuum_action” to the second card, such as vacuum_action2 if this is what you called for your second robot.

Correct, you cannot use this in conjunction with the native HA vetsion. The MQTT Server on the roomba only allows one connection and the HA version is a little possessive :wink:

Thanks for getting back to us!

I have a camera card on the auto default lovelace, but it never has an image (not sure about when it runs I have it auto run when I am at work).

I had to actually mess around with the config.yaml as well to get the MQTT maint stuff to work. Just clicking on them didn’t do anything unforntunately. However I got most of them.

I honestly thought this was going to be much simpler when I went into HACS to install this, and was under the impression this was basically plug and play, but I have learned a lot, and somethings still don’t work (like maps, and possibly the camera) but I haven’t had time to mess with it again.

Thanks for all your hard work in creating this though and your help in the thread :slight_smile:

Yeah, unfortuatly its not a plug and play operation, but does allow significant customization dependant on needs, catch 22 i suppose.

If i had the time i would try to improve the implement process, but between work and kids… the tank it pretty empty.

Feel free to reach out when you investigate more, im sure we can get it up and running swish in no time :wink:

Hey Jeremy,

I have it working with 2 980 Rest interfaces and two neat cards… 100% great work. Your work to this point is great but really trying to figure out how to abstract the tight coupling to the “rest_command” and a few of the other automation in your implementation with Hassio. The rest_command is an implementation on the core_hassio so trying to understand how to make a design on that might be a challenge. I am new to Hassio and to be honest YAML in general so fought that alot in getting my setup running. I will take a step back and learn more then I want to help for those that want to have multiple iRobot devices. I have 2 more iRobots that are for Tile/Harwood floors that I have but they are annoying with the prep to use them so automation is not fun for those… LOL…

Basically to make it work had to clone and override the vacuum.yaml and the JS files to align to the second robot… There has to be an easier way IMO.

You shoudnt need to override the JS File for the card. I did expost the rest_command command name, which for your defaut robot is vacuum_action.

for example -

entity: sensor.vacuum2
vacuum_action: vacuum_action2
type: 'custom:roomba-vacuum-card'
rest_command:
  vacuum_action2:
    url: >-
      {{ states('input_text.vacuum_action') }}{{ command }}
...