homebridge-roomba2
homebridge-roomba2 copied to clipboard
Constant timeouts. Attached what was returned when I tried to install dorita
I get constant timeouts. Had odd returns when I pasted sudo npm install -g dorita980 command in tp://hoobs.local:9090
hoobs@hoobs:~ $ hoobs@hoobs:~ $ sudo npm install -g dorita980 [sudo] password for hoobs: npm WARN deprecated [email protected]: this library is no longer supported npm WARN deprecated [email protected]: request-promise has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142 npm WARN deprecated [email protected]: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
changed 126 packages, and audited 127 packages in 20s
3 packages are looking for funding
run npm fund
for details
4 high severity vulnerabilities
To address all issues (including breaking changes), run: npm audit fix --force
Run npm audit
for details.
hoobs@hoobs:~ $
Steps to Reproduce (for bugs)
It's my current log when I start Roomba2
Versions
- Homebridge: 1.4.0
- Node: 16.14.0
- Plugin: 1.3.1
### Homebridge Log / Command Output
16/03/2022, 12:50:11Roomba BridgeRoombaDEBUG: Connection close received
16/03/2022, 12:51:08Roomba BridgeRoombaWARNINGTimed out after 60001ms trying to connect to Roomba
16/03/2022, 12:51:08Roomba BridgeRoombaWARNINGReleasing an unexpected Roomba instance
16/03/2022, 12:51:08Roomba BridgeRoombaWARNINGFailed to connect to Roomba to refresh state: Connect timed out
16/03/2022, 12:51:08Roomba BridgeRoombaDEBUG: Refreshing Roomba's status (repeating in 1m)
16/03/2022, 12:51:08Roomba BridgeRoombaDEBUG: Connecting to Roomba (0 others waiting)...
16/03/2022, 12:51:08Roomba BridgeRoombaDEBUG: Connection close received
16/03/2022, 12:52:08Roomba BridgeRoombaWARNINGTimed out after 60000ms trying to connect to Roomba
16/03/2022, 12:52:08Roomba BridgeRoombaWARNINGReleasing an unexpected Roomba instance
16/03/2022, 12:52:08Roomba BridgeRoombaWARNINGFailed to connect to Roomba to refresh state: Connect timed out
16/03/2022, 12:52:08Roomba BridgeRoombaDEBUG: Refreshing Roomba's status (repeating in 1m)
16/03/2022, 12:52:08Roomba BridgeRoombaDEBUG: Connecting to Roomba (0 others waiting)...
16/03/2022, 12:52:11Roomba BridgeRoombaDEBUG: Connection close received
16/03/2022, 12:53:08Roomba BridgeRoombaWARNINGTimed out after 60001ms trying to connect to Roomba
16/03/2022, 12:53:08Roomba BridgeRoombaWARNINGReleasing an unexpected Roomba instance
16/03/2022, 12:53:08Roomba BridgeRoombaWARNINGFailed to connect to Roomba to refresh state: Connect timed out
16/03/2022, 12:53:08Roomba BridgeRoombaDEBUG: Refreshing Roomba's status (repeating in 1m)
16/03/2022, 12:53:08Roomba BridgeRoombaDEBUG: Connecting to Roomba (0 others waiting)...
16/03/2022, 12:53:11Roomba BridgeRoombaDEBUG: Connection close received
16/03/2022, 12:54:08Roomba BridgeRoombaWARNINGTimed out after 60002ms trying to connect to Roomba
16/03/2022, 12:54:08Roomba BridgeRoombaWARNINGReleasing an unexpected Roomba instance
16/03/2022, 12:54:08Roomba BridgeRoombaWARNINGFailed to connect to Roomba to refresh state: Connect timed out
16/03/2022, 12:54:08Roomba BridgeRoombaDEBUG: Refreshing Roomba's status (repeating in 1m)
16/03/2022, 12:54:08Roomba BridgeRoombaDEBUG: Connecting to Roomba (0 others waiting)...
16/03/2022, 12:54:11Roomba BridgeRoombaDEBUG: Connection close received
16/03/2022, 12:54:53Roomba BridgeRoombaDEBUG: Connecting to Roomba (0 others waiting)...
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Running status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Low Battery status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Battery level: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Charging status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Bin status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Dock status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Running status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Bin status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Docking status: Returning no value due to timeout
16/03/2022, 12:54:54Roomba BridgeRoombaDEBUG: Returning Home: Returning no value due to timeout
16/03/2022, 12:54:58Roomba BridgeRoombaDEBUG: Watching Roomba's status (repeating in 5s, idle timeout in 595s)
16/03/2022, 12:55:03Roomba BridgeRoombaDEBUG: Watching Roomba's status (repeating in 5s, idle timeout in 590s)
16/03/2022, 12:55:03Roomba BridgeRoombaDEBUG: Connecting to Roomba (1 others waiting)...
+1, checked my credentials. Log shows as:
[3/23/2022, 10:19:47 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:19:47 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:19:57 PM] [roomba] Timed out after 60001ms trying to connect to Roomba
[3/23/2022, 10:19:57 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:19:57 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:20:07 PM] [roomba] Timed out after 60000ms trying to connect to Roomba
[3/23/2022, 10:20:07 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:20:07 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:20:22 PM] [roomba] Timed out after 60001ms trying to connect to Roomba
[3/23/2022, 10:20:22 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:20:22 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:20:32 PM] [roomba] Timed out after 60001ms trying to connect to Roomba
[3/23/2022, 10:20:32 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:20:32 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:20:42 PM] [roomba] Timed out after 60001ms trying to connect to Roomba
[3/23/2022, 10:20:42 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:20:42 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:20:52 PM] [roomba] Timed out after 60000ms trying to connect to Roomba
[3/23/2022, 10:20:52 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:20:52 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:21:02 PM] [roomba] Timed out after 60001ms trying to connect to Roomba
[3/23/2022, 10:21:02 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:21:02 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
[3/23/2022, 10:21:12 PM] [roomba] Timed out after 60001ms trying to connect to Roomba
[3/23/2022, 10:21:12 PM] [roomba] Releasing an unexpected Roomba instance
[3/23/2022, 10:21:12 PM] [roomba] Failed to connect to Roomba to refresh state: Connect timed out
+1, same issue. 980 works fine but J7 has issues
6/8/2022, 9:29:33 AMRoomba BridgeNew RoombaWARNINGTimed out after 60001ms trying to connect to Roomba 6/8/2022, 9:29:33 AMRoomba BridgeNew RoombaWARNINGReleasing an unexpected Roomba instance 6/8/2022, 9:29:33 AMRoomba BridgeNew RoombaWARNINGFailed to connect to Roomba to refresh state: Connect timed out 6/8/2022, 9:29:35 AMRoomba BridgeNew RoombaWARNINGTimed out after 59999ms trying to connect to Roomba 6/8/2022, 9:29:35 AMRoomba BridgeNew RoombaWARNINGReleasing an unexpected Roomba instance 6/8/2022, 9:30:33 AMRoomba BridgeNew RoombaWARNINGTimed out after 59999ms trying to connect to Roomba 6/8/2022, 9:30:33 AMRoomba BridgeNew RoombaWARNINGReleasing an unexpected Roomba instance 6/8/2022, 9:30:33 AMRoomba BridgeNew RoombaWARNINGFailed to connect to Roomba to refresh state: Connect timed out
Please test this again with the latest beta release. There were issues with Node 18 and with J7 that are hopefully resolved. Other issues with connecting to Roomba occur if there is something else connected to Roomba, like the app, or another Roomba integration. Please re-open if you continue to have the same issue.
Still getting this pretty constantly with a 960, reserved IP address on the roomba, Node v16 and v18, reboots and reconnects on all applicable devices and services. 1.2.2 remains the most stable and responsive (for me at least)
@asweet could you please post some logs of this issue from the latest plugin version?
I get similar issues with my 960... it seems to happen most often (but not always) when the Roomba gets interrupted during a cleaning cycle (ex. the battery dies before it makes it back to the base). It does seem to be better with the latest version, but I will keep an eye on it and try to capture some logs the next time I see it occur.
@karlvr Sorry for the radio silence, been a while since I looked at this. Not sure I have the logs from two weeks back.
On the other hand, after having some difficulties rolling back to 1.2.2, I've since completely reinstalled the roomba2 plugin, and cleared out any plugin data from before (if there was any... I don't remember), and set it all up from scratch on version 1.4 with node v16.18.1 (I bounced between node versions).
So far, so good, even when the roomba dies in the middle of a job. Only getting "Releasing an unexpected Roomba instance" notifications, but the plugin is functioning properly from what I can see so far.
May have spoke too soon. got a long string of Connect timed out alerts. Roomba has a reserved IP address, so that didn't change, it was also definitely connected to wifi the whole time. I was able to connect to it through the iRobot app when I noticed that homekit wasn't able to talk to the bot.
[2022-12-20, 4:45:49 p.m.] [Ba-Boomba] Failed to refresh Roomba's state: Connect timed out
[2022-12-20, 5:01:49 p.m.] [Ba-Boomba] Failed to refresh Roomba's state: Connect timed out
[2022-12-20, 5:17:49 p.m.] [Ba-Boomba] Failed to refresh Roomba's state: Connect timed out
Rebooting the roomba didn't resolve it, but subsequently rebooting the entire homebridge server did. I'll turn on debug logs for the plugin and report more if it happens again.
OK, @karlvr this might be a bit overkill, but I'm attaching 2 hours of annotated plugin debug log.
At a high level, here's what happens:
[2023-01-12, 2:09:40 p.m.] Roomba running, performing a cleaning job
[2023-01-12, 2:21:09 p.m.] Roomba moves to dock
[2023-01-12, 2:24:13 p.m.] Roomba docks
[2023-01-12, 2:27:38 p.m.] Plugin connects to roomba only after an unusually long time, 34s instead of 3.2s
[2023-01-12, 2:27:38 p.m.] First of the "Releasing an unexpected Roomba instance" error
[2023-01-12, 2:52:07 p.m.] First of the "Failed to refresh Roomba's state: Connect timed out" errors
[2023-01-12, 2:53:28 p.m.] Last of the "Releasing an unexpected Roomba instance" errors
[2023-01-12, 3:09:33 p.m.] A single "ECONNRESET" error
[2023-01-12, 3:30:00 p.m.] Used Unifi admin page to force Roomba to reconnect to WiFi (estimated time), errors continue
[2023-01-12, 3:36:04 p.m.] Full restart of server, errors continue
[2023-01-12, 3:38:38 p.m.] Last of the "Failed to refresh Roomba's state: Connect timed out" errors
[2023-01-12, 3:43:00 p.m.] Restarted Roomba through the iRobot app (estimated time)
[2023-01-12, 3:58:21 p.m.] Opened Home app on laptop, roomba data is up to date and shown as connected
Problem seems to be cleared from then on. Until it happens again, of course.
Versions and configurations OS: Debian GNU/Linux Buster (10) Homebridge: 1.6.0 Node: 16.18.1 Roomba2 Plugin: 1.4.0 running under a child bridge Roomba Model: R960020 Roomba IP: DHCP with static reservation (IP address filled in in the plugin configuration)
Throughout the process, apart from intentional restarts and disconnects, pings from my laptop to the roomba were rock solid (generally single digit millisecond ping time, negligible packet loss).
From memory, I get the feeling that the disconnects tend to start happening generally after the roomba has completed a job, but not all the time. I'm wondering if it's reporting something back to iRobot, and in so doing somehow blocks the plugin from connecting. This seems to be supported by the dns server logs for the roomba's queries, which I've attached to the log file.
Hey Facing exactly same issue with 980 with Fixed IP address on the bot. And indeed Irobot app is still working but not anymore on Homebridge. iT Was working Yesterday, and now the plugin cannot Reach him anymore.
BTW, saying is not able to reach, I tried tthe command getpassword for the sake of it is still working for a part, he is able to give blid and other info, but he is not able to get the password.
Here is the error from the get password if it can help to solve the probs: node:events:491 throw er; // Unhandled 'error' event ^
Error: connect ETIMEDOUT 192.168.1.11:8883 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1300:16) Emitted 'error' event on TLSSocket instance at: at emitErrorNT (node:internal/streams/destroy:151:8) at emitErrorCloseNT (node:internal/streams/destroy:116:3) at process.processTicksAndRejections (node:internal/process/task_queues:82:21) { errno: -110, code: 'ETIMEDOUT', syscall: 'connect', address: 'XXX.XXX.1.11', port: 8883 }
Node.js v18.12.1
Please try the latest beta 1.5.0-beta.0 (instructions for installation at https://github.com/homebridge-plugins/homebridge-roomba2/wiki/Pre-release-versions) as I have changed the connection logic to support more / newer Roomba's.