bloomkd46 / homebridge-iRobot

A homebridge plugin for controlling iRobot devices
Apache License 2.0
61 stars 14 forks source link

Bug Report: No Devices Detected #122

Open qoodanny opened 2 years ago

qoodanny commented 2 years ago

Describe The Bug:

I entered all information correctly

To Reproduce:

I restarted the home bridge and double checked the info

Expected behavior:

j7+ and m6 should be detected

Logs:

[5/17/2022, 6:55:53 AM] [iRobot] Logging into iRobot...
[5/17/2022, 6:55:55 AM] [iRobot] Configuring roomba: Braava jet M6
[5/17/2022, 6:56:05 AM] [iRobot] Failed to configure roomba: Braava jet M6 see below for details
[5/17/2022, 6:56:05 AM] [iRobot] No Roomba Found With Blid: *

[5/17/2022, 6:56:05 AM] [iRobot] Configuring roomba: Roomba J7+
[5/17/2022, 6:56:16 AM] [iRobot] Failed to configure roomba: Roomba J7+ see below for details
[5/17/2022, 6:56:16 AM] [iRobot] No Roomba Found With Blid: *

[5/17/2022, 6:56:16 AM] [iRobot] Disabling Unconfigured Roomba: Braava jet M6
[5/17/2022, 6:56:16 AM] TypeError: Cannot read properties of undefined (reading 'name')
    at getRoombas (/usr/local/lib/node_modules/homebridge-irobot/src/getRoombas.ts:50:63)
    at iRobotPlatform.discoverDevices (/usr/local/lib/node_modules/homebridge-irobot/src/platform.ts:65:36)
    at HomebridgeAPI.<anonymous> (/usr/local/lib/node_modules/homebridge-irobot/src/platform.ts:34:12)
    at HomebridgeAPI.emit (node:events:532:35)
    at HomebridgeAPI.signalFinished (/usr/local/lib/node_modules/homebridge/src/api.ts:275:10)
    at Server.start (/usr/local/lib/node_modules/homebridge/src/server.ts:175:14)
[5/17/2022, 6:56:16 AM] Got SIGTERM, shutting down Homebridge...

Config:

"name": "iRobot",
            "email": "*",
            "password": "*",
            "roombas": [
                {
                    "autoConfig": true,
                    "info": {
                        "ver": 2
                    }
                }
            ],
            "manualDiscovery": false,
            "lowBattery": 20,
            "offAction": "pause:dock",
            "status": "cycle:clean",
            "eveStatus": "inverted:cycle:clean",
            "bin": "filter:contact",
            "ignoreMultiRoomBin": true,
            "hideStuckSensor": false,
            "disableMultiRoom": false,
            "platform": "iRobotPlatform"

Node Version:

v16.14.0

NPM Version:

8.3.1

Homebridge Version:

v1.4.1

Plugin Version:

v2.1.16

Operating System:

MacOS

maverick85 commented 2 years ago

Did you ever get over this issue? I'm having the exact same problem.

Apparently the module does connect to iRobot as it gives the message:

[11/08/2022, 13:58:35] [iAspiras] Logging into iRobot...
[11/08/2022, 13:58:37] [iAspiras] Configuring roomba: iRobot
[11/08/2022, 13:58:47] [iAspiras] Failed to configure roomba: iRobot see below for details
[11/08/2022, 13:58:47] [iAspiras] No Roomba Found With Blid: my-roomba-blid

This blid is the same I get if using the dorita980 app to retrieve the info locally.

Also using dorita980's I tested to get the credentials from the

# get-roomba-password-cloud <email> <password>
Found 1 robot(s)!
Robot "iRobot" (sku: R966040 SoftwareVer: v2.4.16-126):
BLID=> my-roomba-blid
Password=> :1:0000000000:abcdefGHIJKLM <= Yes, all this string.

Use this credentials in dorita980 lib :)
bloomkd46 commented 2 years ago

For now just manually put in the Roomba’s IP address in the config. The no Roomba found error means that it failed to find your Roomba during a network scan at boot. This is caused by some routers blocking the scan, I am working on a more reliable scan for the next update

maverick85 commented 2 years ago

@bloomkd46 thank you for your reply. So my devices are on a separate vlan but router has open communication between subnets, regardless it seemed like the issue was here indeed. This was a bit strange bc I have Home Assistant and it connected to the iRobot just fine. Only HB wasn't. In the meanwhile I moved iRobot from the devices vlan to the main LAN and it connected just fine.

Veldkornet commented 1 year ago

I have this same issue, my Roomba 980 is on a different VLAN to HomeBridge (but is reachable). Even after manually filling in the IP and all other information, it still fails to find my Roomba. Works fine from HomeAssistant.

DrakeAnglin commented 1 year ago

Im having the same issue. Is there a workaround for this?

maverick85 commented 1 year ago

Yeah, go for home-assistant. All your problems get solved at once.

bloomkd46 commented 1 year ago

Please try the latest beta: npm

Veldkornet commented 1 year ago

Please try the latest beta: npm

Yes! For me it it is now discovered, it finds the device and then just asks you to enter the IP manually, and I'm able to add it to Apple Home. It does however throw a bunch of errors, and is shown as unavailable in Apple Home

[1/5/2023, 7:04:02 AM] [iRobot] R2D2: Connecting... 
[1/5/2023, 7:04:02 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Status Low Battery': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:04:02 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Battery Level': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:04:02 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Charging State': Unhandled error thrown inside read handler for characteristic: Cannot use 'in' operator to search for 'cleanMissionStatus' in undefined. See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:04:02 AM] [iRobot] R2D2: Updating IP Address To 192.168.133.112 
[1/5/2023, 7:04:02 AM] [iRobot] R2D2: Unavailable 
[1/5/2023, 7:04:02 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:04:02 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:04:03 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:05:43 AM] [iRobot] R2D2: Connecting... 
[1/5/2023, 7:05:44 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Status Low Battery': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:05:44 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Battery Level': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:05:44 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Charging State': Unhandled error thrown inside read handler for characteristic: Cannot use 'in' operator to search for 'cleanMissionStatus' in undefined. See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:05:44 AM] [iRobot] R2D2: Updating IP Address To 192.168.133.112 
[1/5/2023, 7:05:44 AM] [iRobot] R2D2: Unavailable 
[1/5/2023, 7:05:44 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:05:45 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:05:46 AM] [iRobot] R2D2: Connecting... 
[1/5/2023, 7:05:46 AM] [iRobot] R2D2: Updating IP Address To 192.168.133.112 
[1/5/2023, 7:05:46 AM] [iRobot] R2D2: Unavailable 
[1/5/2023, 7:05:46 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:05:46 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Status Low Battery': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:05:47 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Connecting... 
[1/5/2023, 7:06:33 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Status Low Battery': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Updating IP Address To 192.168.133.112 
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Unavailable 
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Connecting... 
[1/5/2023, 7:06:33 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Status Low Battery': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:06:33 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Charging State': Unhandled error thrown inside read handler for characteristic: Cannot use 'in' operator to search for 'cleanMissionStatus' in undefined. See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:06:33 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Battery Level': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Updating IP Address To 192.168.133.112 
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Unavailable 
[1/5/2023, 7:06:33 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:06:34 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:06:34 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:06:55 AM] [iRobot] R2D2: Connecting... 
[1/5/2023, 7:06:55 AM] [homebridge-irobot] This plugin threw an error from the characteristic 'Status Low Battery': Unhandled error thrown inside read handler for characteristic: Cannot read properties of undefined (reading 'batPct'). See https://homebridge.io/w/JtMGR for more info.
[1/5/2023, 7:06:55 AM] [iRobot] R2D2: Updating IP Address To 192.168.133.112 
[1/5/2023, 7:06:55 AM] [iRobot] R2D2: Unavailable 
[1/5/2023, 7:06:55 AM] [iRobot] R2D2: Disconnected 
[1/5/2023, 7:06:56 AM] [iRobot] R2D2: Disconnected