Roomba i7 support

trying to get the map working. What is the local url part of the web page supposed to be? I set my directories to www/spot . and www/spot/res

In my config I have it as

map: True
map_dir: www/roomba
icon_dir: /srv/homeassistant/lib/python3.6/site-packages/roomba/res/

Then to view my camera in home assistant I did this.

camera:

  • platform: local_file
    file_path: /home/homeassistant/.homeassistant/www/roomba/map_notext.png
    name: Vacuum Map

Got it, thanks

what did you use for the image files that go in the res directory?

I am trying to remember but I think I just copied these. https://github.com/NickWaterton/Roomba980-Python/tree/master/roomba/res

got it. finally just cloned it and got everything. Now we need him to make it so it converts these files to a movie we can watch later instead of just watching it real time.

Would be nice to have the map also in the default component. Don’t know how much work that is/possible.

Finally had to go away from this and back to the standard component. The roomba component has enough problems in itself without adding confusion to trouble shooting it by running a custom_component. Hopefully this will get moved in as the standard component.

Hello,

Is this still working for you? I’m on 92.2 and I’m getting the file not found error…HA seem to have restructure the custom component format recently…not sure how to fix…

Still works for me. A couple releases ago custom components needed to be re-organized. Make sure it is now ‘custom_components\roomba\vacuum.py’. So basically rename the vacuum folder to roomba and the roomba.py to vacuum.py.

I messed up the latest HA upgrade and had to redo the setup.

i7 doesn’t seem to respond to HA anymore. It crashes the HA startup with ERROR 104 Connection Refused by host.

When ever I add the roomba in my config file Hassio keeps crashing and wont load.
This issue been open since 2018: https://github.com/home-assistant/home-assistant/issues/16069

I am getting this in my logs:

raceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 126, in _async_setup_platform
    SLOW_SETUP_MAX_WAIT)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 435, in wait_for
    await waiter
concurrent.futures._base.CancelledError
2019-07-20 22:04:04 ERROR (MainThread) [homeassistant.setup] Error during setup of component sensor
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/asyncio/runners.py", line 43, in run
    return loop.run_until_complete(main)
  File "uvloop/loop.pyx", line 1445, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1438, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1347, in uvloop.loop.Loop.run_forever
  File "uvloop/loop.pyx", line 487, in uvloop.loop.Loop._run
  File "uvloop/loop.pyx", line 404, in uvloop.loop.Loop._on_idle
  File "uvloop/cbhandles.pyx", line 68, in uvloop.loop.Handle._run
  File "/usr/src/homeassistant/homeassistant/components/roomba/vacuum.py", line 84, in async_setup_platform
    await hass.async_add_job(roomba.connect)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.7/site-packages/roomba/roomba.py", line 283, in connect
    sys.exit(1)
SystemExit: 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 153, in _async_setup_component
    hass, processed_config)
  File "/usr/src/homeassistant/homeassistant/components/sensor/__init__.py", line 42, in async_setup
    await component.async_setup(config)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 112, in async_setup
    await asyncio.wait(tasks)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 389, in wait
    return await _wait(fs, timeout, return_when, loop)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 482, in _wait
    await waiter
concurrent.futures._base.CancelledError
2019-07-20 22:04:04 ERROR (MainThread) [homeassistant.setup] Error during setup of component zeroconf
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/asyncio/runners.py", line 43, in run
    return loop.run_until_complete(main)
  File "uvloop/loop.pyx", line 1445, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1438, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1347, in uvloop.loop.Loop.run_forever
  File "uvloop/loop.pyx", line 487, in uvloop.loop.Loop._run
  File "uvloop/loop.pyx", line 404, in uvloop.loop.Loop._on_idle
  File "uvloop/cbhandles.pyx", line 68, in uvloop.loop.Handle._run
  File "/usr/src/homeassistant/homeassistant/components/roomba/vacuum.py", line 84, in async_setup_platform
    await hass.async_add_job(roomba.connect)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.7/site-packages/roomba/roomba.py", line 283, in connect
    sys.exit(1)
SystemExit: 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 156, in _async_setup_component
    component.setup, hass, processed_config)  # type: ignore
concurrent.futures._base.CancelledError
2019-07-20 22:04:04 ERROR (MainThread) [homeassistant.setup] Error during setup of component automation
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/asyncio/runners.py", line 43, in run
    return loop.run_until_complete(main)
  File "uvloop/loop.pyx", line 1445, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1438, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1347, in uvloop.loop.Loop.run_forever
  File "uvloop/loop.pyx", line 487, in uvloop.loop.Loop._run
  File "uvloop/loop.pyx", line 404, in uvloop.loop.Loop._on_idle
  File "uvloop/cbhandles.pyx", line 68, in uvloop.loop.Handle._run
  File "/usr/src/homeassistant/homeassistant/components/roomba/vacuum.py", line 84, in async_setup_platform
    await hass.async_add_job(roomba.connect)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.7/site-packages/roomba/roomba.py", line 283, in connect
    sys.exit(1)
SystemExit: 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 153, in _async_setup_component
    hass, processed_config)
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 115, in async_setup
    await _async_process_config(hass, config, component)
  File "/usr/src/homeassistant/homeassistant/components/automation/__init__.py", line 383, in _async_process_config
    await component.async_add_entities(entities)
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 221, in async_add_entities
    await asyncio.wait(tasks)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 389, in wait
    return await _wait(fs, timeout, return_when, loop)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 482, in _wait
    await waiter
concurrent.futures._base.CancelledError
2019-07-20 22:04:04 ERROR (MainThread) [homeassistant.components.light] flux_led: Error on device update!
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/asyncio/runners.py", line 43, in run
    return loop.run_until_complete(main)
  File "uvloop/loop.pyx", line 1445, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1438, in uvloop.loop.Loop.run_until_complete
  File "uvloop/loop.pyx", line 1347, in uvloop.loop.Loop.run_forever
  File "uvloop/loop.pyx", line 487, in uvloop.loop.Loop._run
  File "uvloop/loop.pyx", line 404, in uvloop.loop.Loop._on_idle
  File "uvloop/cbhandles.pyx", line 68, in uvloop.loop.Handle._run
  File "/usr/src/homeassistant/homeassistant/components/roomba/vacuum.py", line 84, in async_setup_platform
    await hass.async_add_job(roomba.connect)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.7/site-packages/roomba/roomba.py", line 283, in connect
    sys.exit(1)
SystemExit: 1

I had the issue of HA failing to boot up with roomba enabled in the config file. It was a problem connecting to the Roomba due to the script using TLS1.0.

I fixed it by editing /usr/local/lib/python3.7/site-packages/roomba/roomba.py and changing two instances of ssl.PROTOCOL_TLSv1 to ssl.PROTOCOL_TLS

How do you modify the roomba.py file and have it persist a restart? I thought the container was stateless, and any changes you make are reverted once it restarts

Changes to containers persist until the container is deleted and/or rebuilt.

This change survives a container restart, but it doesn’t survive a system restart with hass.io because the supervisor rebuilds the container.

sorry but i am new in this, and I am seeing the github, but and maybey this is a stupid question, is in mac terminal where I have to put roomba, all I want is to find my blid and password thanks!!

Just want to mention that the HA roomba components are based on github projects that do not support the latest firmware, and this is likely the cause of most persistent errors. Even with that said, I don’t know of any open source projects that currently support the more interesting advanced features that would make integration with HA amazing like SmartMaps (or w/e they are called).

I have a dog that occasionally visits certain rooms and, if unattended, will pee on the area rugs. I wanted my motion sensors/presence detection to figure this out and send the appropriate roomba into that room to chase him away. Easiest way I found to implement this is with assistant-relay (https://github.com/greghesp/assistant-relay), which is a REST interface for sending text commands to Google Assistant.

So for example, I use curl to send “Tell bjork to vacuum the Guest Bath” to Google Assistant, and everything proceeds flawlessly. (Here, “bjork” is the name of my s9 and “Guest Bath” is a labeled room in bjork’s smart map.)

Note: if you are getting a connection error trying to get the password/blid, you need to change password.py to use

ssl.PROTOCOL_TLSv1_2   

I am thinking of buying i7 so I looked into the home assistant integration. Seams like the native library is a bit buggy and missing features. Does anybody tried running this https://github.com/koalazak/rest980 and controlling the roomba through REST calls ?

Here is how you can fix the issues with the latest Roomba firmware. http://www.brandonclaps.com/?p=193