iRobot Roomba i7+ Configuration using Rest980

Glad it works @ddppddpp !

You are going to be out of luck with the selective rooms tho as the 980 does not have imprint maps.

Upgrade time :wink:

@Syrius I’v managed to get the maping interface first local directly on my HA then after correct port forward also via duckdns.
I will see tomorrow when my Roomba 980 start sheduled job how goes live map generation…

One more question. How to set up my own floor.png image when Clear Map is generated? I have seen here /config/vaccum. - note 2 c letters Do I need to put this picture in this folder? Or it is the one defined in php-nginx Docker Image addon:
image - vacuum?!
Sorry for noob question. Thanks in advance.

This is the correct spelling?

The floor.png goes in the same directory as image.php which should be /vacuum

Ah, there is a typo on the image :see_no_evil: (the red text is part of the example vacuum/floor.png file)

I’ll fix that up shortly :+1:

OK, do I need to restart the addons (php, Rest980) so the floor.png shows up in the screen while live map is generated?
Obviously I need to manually create vacuum folder in HA root directory - /config/vacuum
Hm, i can find image.php nowhere under my configuration (Hass.io on RPI3+).

@SuperMario You have to copy the files from my repo

Apologies - this wasn’t clear in my instructions either :disappointed: I’ll amend this shortly also

I’m stuck :frowning:
When requesting http://:/ image.php I get the following:

Notice: Undefined offset: -1 in /config/vacuum/image.php on line 37

Warning: Cannot modify header information - headers already sent by (output started at /config/vacuum/image.php:37) in /config/vacuum/image.php on line 193

and then the png stream gets dumped in the browser.
I guess the reason is that my vacuum.log file is empty therefore the array manipulators get offended.
Also, I had to change the $vacuum_log declaration to plain http, as with https I was getting all kinds of errors…

If your vacuum.log is empty, that’s likely the culprit. Have you setup the automations and run a clean? It should populate the log file allowing the map to be generated

Sorry I use https for my setup so must have left that in. I will amend it shortly

https - actually I do have letsencrypt certs up and running…
for the clean/vacuum log - thanks, I’ll give it a try once the kids are up :slight_smile:

nothing is getting logged in vaccum.log, yet I see no errors accessing the file or the add-on’s logs :frowning:

Hmm that’s not good!

  • When the vacuum is cleaning, Is the phase correctly showing as cleaning and is the location updating?
  • are the automations currently executing? (You can check last trigger time in settings, automations page)
  • what do the home assistant logs show?
  • can you Post/PM me the relevant config sections?

The phase/status/battery level is updating correctly in Lovelace, however none of the automations have been triggered and there are no erros in the logs.
I triggered the notify service manually with a set of coords and image.php is visualized correctly.
Question: should I do anything in hassioip:3000/map like start/stop drawing or is it irrelevant?

There is an automation to update the rest980 sensor every 2 seconds (during cleaning) and another notification to write the coordinates when they change. Can you please verify the triggers and conditions in these files correctly match your sensors and values?

Feel free to PM me the sections and I’ll look over it

Thanks for helping us Hassio people.

I got the addons installed.

But im stuck at BLID/Password. You are linking to a guide with npm commands and such.
Im using HASIO therminal, and cant use those commands. When what?

Can you guide me through the portainer.io?

Thanks i advance for helping

Hi @jhvdb,

I have created a new Hass.io Add-on which is a modified version of dorita980 which you can use to retrieve the BLID and Password!

roombapw in my hass-addons repo.

Please follow the included instructions and let me know if you have any issues :slight_smile:

I’m trying to get this to work.
When ever i go to http://myip:3000/api/local/info/state i get an empty json {}
All the sensors in HA is unknown

any advice is appreciated

EDIT:
Heres my log from the rest980 addon

GET /favicon.ico 404 1.392 ms - 136
Error: Endpoint not found.
    at /usr/src/app/app.js:62:13
    at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/usr/src/app/node_modules/express/lib/router/index.js:317:13)
    at /usr/src/app/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:335:12)
    at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
    at /usr/src/app/node_modules/express/lib/router/index.js:635:15
    at next (/usr/src/app/node_modules/express/lib/router/index.js:260:14)
    at jsonParser (/usr/src/app/node_modules/body-parser/lib/types/json.js:110:7)
    at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/usr/src/app/node_modules/express/lib/router/index.js:317:13)
    at /usr/src/app/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:335:12)
    at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
    at Function.handle (/usr/src/app/node_modules/express/lib/router/index.js:174:3)
    at router (/usr/src/app/node_modules/express/lib/router/index.js:47:12)
    at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/usr/src/app/node_modules/express/lib/router/index.js:317:13)
    at /usr/src/app/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:335:12)
    at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
    at authHandler (/usr/src/app/app.js:23:48)
GET /api/local/info/state 200 102.119 ms - 2
GET /api/local/info/state 200 100.614 ms - 2
GET /api/local/info/state 200 102.290 ms - 2

While my clean map is being generated and I managed to scale/rotate the floor image so that it fits the roomba orientation, I’m noticing that the further the point is from the home station, the bigger the angle of diversion from the vertical/horizontal lines:
22
Anybody with similar map deviations?

Can you check and double check the credentials? Also, are you running the inbuilt vacuum component? They don’t play together.

What model do you have?

I havent noticed this on the i7. Ive wiped the map and re-created it a couple of times and it remains fairly accurate against my original floorplan.

It could be a limitation of the hardware? :frowning: Might need someone else here with a 980 to weight in