Open Chauvis opened 3 months ago
Hey there @pschmitt, @cyr-ius, @shenxn, @xitee1, @orhideous, mind taking a look at this issue as it has been labeled with an integration (roomba
) you are listed as a code owner for? Thanks!
(message by CodeOwnersMention)
roomba documentation roomba source (message by IssueLinks)
You will need to pair your roomba with the phone application and setup an account/password with irobot. Then you
./password.py <login> <password>
from https://github.com/NickWaterton/Roomba980-Python That being the email and password you just created.
Then you grab only the letters from the password line..
Obfuscated example:
"password": ":1:234567890:aBcDeFgHiKl",
Your password would be aBcDeFgHiKl
I may be misremembering and it includes 23456890 I was throwing spaghetti at the wall and don't remember what I literally just did. I do know that it didn't work till after I did the reset the wifi with the buttons per the prompting but only after having entered the password. It could have been my phone timed out though.. Might turn it off when trying to set it up or fully uninstall the app to be sure it's not hanging on in the background it will break it if it's running.
Not everything like the documentation https://www.home-assistant.io/integrations/roomba/#manually-retrieving-your-credentials shows.
Note if is already registered you will have to reset the firmware by pressing all 3 buttons for about 10 seconds, then pair the app by pressing the 2 buttons listed (home and spot clean), Might need to repeat that a few times till the app sees it and prompts you again to reset the firmware and it will communicate properly for the password script to function as 980+ models need an updated firmware to communicate as the SSH was expired.
@ransombot i am hitting same issue with a R98---- aka 980 (i have added a j755020 and i755020 and j655020 just fine) and whether i use the one you suggested or https://github.com/koalazak/dorita980 the password returned from the cloud login for the 980 just doesn't work with the integration; note the 980 was working in the past too, i had to remove it and re-add it as it had stopped working at some point....
i have tried rebooting the 980, made sure it is pingable, made sure the app isn't open on the phone, etc etc - any ideas?
"30F8891redacted": {
"password": ":1:redacted",
"sku": "R98----",
"softwareVer": "v2.4.17-138",
"name": "MIL",
"cap": {
"pose": 1,
"ota": 2,
"multiPass": 2,
"carpetBoost": 1,
"pp": 1,
"binFullDetect": 1,
"langOta": 1,
"maps": 1,
"edge": 1,
"eco": 1,
"svcConf": 1
},
"digiCap": {},
"svcDeplId": "v011",
"user_cert": false
},
This is the logging error:
2024-06-10 18:03:21.811 ERROR (roombapy) [roombapy.remote_client] Can't connect to 192.168.1.129
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/roombapy/remote_client.py", line 93, in connect
self._open_mqtt_connection()
File "/usr/local/lib/python3.12/site-packages/roombapy/remote_client.py", line 121, in _open_mqtt_connection
self.mqtt_client.reconnect()
File "/usr/local/lib/python3.12/site-packages/paho/mqtt/client.py", line 1044, in reconnect
sock = self._create_socket_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/paho/mqtt/client.py", line 3685, in _create_socket_connection
return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/socket.py", line 852, in create_connection
raise exceptions[0]
File "/usr/local/lib/python3.12/socket.py", line 837, in create_connection
sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused
Having the same issue with my 960. I was able to pair my i5 with no issues but the 960 refuses to connect. They are both on the same network. Tried a factory reset on the 960. Is it possibly a timeout issue or is my 960 using an old version of TLS or ciphers? Looks like there are a lot of open issues about the same topic that have been closed with no fix. Any chance we might get this fixed? This was working for my 960 a while back and it broke. When it broke is beyond me.
Traceback (most recent call last):
File "/usr/local/lib/python3.12/site-packages/roombapy/remote_client.py", line 93, in connect
self._open_mqtt_connection()
File "/usr/local/lib/python3.12/site-packages/roombapy/remote_client.py", line 121, in _open_mqtt_connection
self.mqtt_client.reconnect()
File "/usr/local/lib/python3.12/site-packages/paho/mqtt/client.py", line 1044, in reconnect
sock = self._create_socket_connection()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/site-packages/paho/mqtt/client.py", line 3685, in _create_socket_connection
return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/socket.py", line 852, in create_connection
raise exceptions[0]
File "/usr/local/lib/python3.12/socket.py", line 837, in create_connection
sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused
Interesting development. I was able to set up the integration when the 960 was running a job and with the irobot app running! I used the password path to do the integration.
Interesting development. I was able to set up the integration when the 960 was running a job and with the irobot app running! I used the password path to do the integration.
so i am clear, so i should try running a job, keep app open and then try entering the password in hass?
--edit-- no bueno for me, what else did you do before running the job...?
also here are some extra logs... you can see it connected AND got MQTT messages - whatever this is, it isn't password related -its something else....
I am not sure if the factory reset I did helped but I did factory reset. When I did my factory reset, I used the irobot app to set up the roomba again. I closed the app and I pulled the new password and gave it to home assistant but had the same timeout issue again. I ended up running a job and a bit later I remembered a post a while back of someone saying they tried it when it was running a job with successful results. I tried it and it worked.
Also I didn't press the home and spot clean when asked during the integration setup since it was cleaning so it timed out on the first attempt of auto setup. It presents the password prompt after.
I have the same issue. I had to reset the roomba (an 960) to factory defaults because I needed to change the WiFi network. But I'm now unable to add the robot into Home Assistant. Before the reset it was working and connected to HA for over 3 years without any issue. I am able to get the password by using this procedure: https://github.com/koalazak/dorita980#how-to-get-your-usernameblid-and-password but no luck connecting it to home assistant.
Here were my steps that fixed it.
(note i tried 1 and 2 several times and that didn't work so one of the other steps is key)
can confirm, password was only accepted while cleaning (started from the app)
Model: R981040
Can confirm as well, i added my R98---- while cleaning started from the app. Thank you @scyto for solution :)
The problem
Hello, Sorry for my broken english I can't add a roomba 980 to the integration. the password is not automatically recovered and when I enter the one recovered with the BLID, home assistant tells me connection failure. Thank you
What version of Home Assistant Core has the issue?
Core
What was the last working version of Home Assistant Core?
Core-2024.5.2
What type of installation are you running?
Home Assistant OS
Integration causing the issue
Roomba
Link to integration documentation on our website
https://www.home-assistant.io/integrations/roomba/
Diagnostics information
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
No response
Additional information
No response