Since a few weeks back my Neato component won’t work anymore.
The Hass log is showing the following:
17-01-10 20:45:58 homeassistant.components.switch: Error while setting up platform neato
Traceback (most recent call last):
File “/srv/hass/lib/python3.4/site-packages/homeassistant/helpers/entity_component.py”, line 150, in _async_setup_platform
entity_platform.add_entities, discovery_info
File “/usr/lib/python3.4/asyncio/futures.py”, line 388, in iter
yield self # This tells Task to wait for completion.
File “/usr/lib/python3.4/asyncio/tasks.py”, line 286, in _wakeup
value = future.result()
File “/usr/lib/python3.4/asyncio/futures.py”, line 277, in result
raise self._exception
File “/usr/lib/python3.4/concurrent/futures/thread.py”, line 54, in run
result = self.fn(*self.args, **self.kwargs)
File “/srv/hass/lib/python3.4/site-packages/homeassistant/components/switch/neato.py”, line 26, in setup_platform
if not hass.data[NEATO_ROBOTS]:
KeyError: ‘neato_robots’
Config is pretty straight forward, so nothing should be wrong there?
I had the same problem but the fix above solved the problem for me as well. The Neato component was changed a while ago, going from being only a switch to now being a hub with both sensors, switches and a “camera”.
File "/home/homeassistant/.homeassistant/deps/pybotvac/robot.py", line 109, in __call__
signing = hmac.new(key=self.secret.encode('utf8'),
AttributeError: 'NoneType' object has no attribute 'encode'
I had the Neato component up and running for some time. Automation worked just fine (cleaning my flat when the family was away etc) But after upgrade (think it was around .60) I started to get the error below.
Any clues? Looks like the neato component is losing the password at some point. Or is there some other secret that fails to get generated during the session setup?
I also noticed that the neato component does not turn up on the “Manage Applications” in the personal preferences on neatorobotics.com/personal-info/ page (as ifttt does if configured to have access)
The app has just been updated, so I’m wondering if they have changed something at their end. my D3 stopped cleaning a couple of days ago, but it’s going again, also the app takes longer to connect for some reason.
I’m only here because my HA hasn’t been getting any info from my D3 for the last few hours.
I’m seeing the same thing with a Botvac Connected.
File "/usr/lib/python3.6/site-packages/pybotvac/robot.py", line 148, in __call__
signing = hmac.new(key=self.secret.encode('utf8'),
AttributeError: 'NoneType' object has no attribute 'encode'
This turned out to have a reasonable, albeit annoying explanation.
I have multiple botvacs tied to my account, some of which do not have wifi (and hence, no stored secrets).
Once I removed the non-wifi botvacs from my neato account the component works!
Try resetting your BotVac and reregistering it again. I believe this worked for me, only takes a few minutes. Follow the instructions on the app. Good Luck