Botvac Connected with Neato Plugin

chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Botvac Connected with Neato Plugin

Post by chobo »

Hi kmarkley,

First, a big thanks for your work on this and all of your other plugins!! I gave this a try with my aging Botvac Connected. No dice. Here's the error I get when starting the plugin with the same credentials I use for the app and website:

Code: Select all

Started plugin "Neato Botvac 0.0.1"
Neato Botvac Error              Error accessing Neato account - check plugin config
Neato Botvac Error              "Botvac1" initialization error.  Try updating Neato account from plugin menu.
Neato Botvac                    "Botvac1" request status
Neato Botvac Error              "Botvac1" thread error 
'Botvac' object has no attribute 'robot'
Traceback (most recent call last):
File "plugin.py", line 362, in run
func(*args)
File "plugin.py", line 393, in request_status
robot_status = self.robot.state
AttributeError: 'Botvac' object has no attribute 'robot'
Thoughts on how best to troubleshoot/resolve?

Thank you!
kmarkley
Posts: 187
Joined: Tue Nov 15, 2016 8:04 pm

Re: Botvac Connected with Neato Plugin

Post by kmarkley »

What do you get in the log when you save the plugin configuration?
chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Re: Botvac Connected with Neato Plugin

Post by chobo »

kmarkley wrote:What do you get in the log when you save the plugin configuration?
Thanks for the prompt reply. Here's what I get:

Code: Select all

Neato Botvac Error              Error accessing Neato account - check plugin config
Just verified again and these credentials do work for the app and website.
kmarkley
Posts: 187
Joined: Tue Nov 15, 2016 8:04 pm

Re: Botvac Connected with Neato Plugin

Post by kmarkley »

Did it work before? If not, how did you configure the device?

Do you have a firewall blacking things? I had to allow outbound requests on port 4443 (not inbound) but most routers on default config should allow this anyway.

Unfortunately there's not a great deal of troubleshooting I can do. I suppose I should log more detail about the error, but it will be a few days before I can update the plugin.
chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Re: Botvac Connected with Neato Plugin

Post by chobo »

Update: looks like the device went offline between plugin install/config and my post. The error mentioned above is maybe what happens when the device is not connected to https://beehive.neatocloud.com? The current error is perhaps a bit more informative:

Code: Select all

Neato Botvac                    Neato account updated
Neato Botvac                    Robots found:
Neato Botvac                         Botvac1 (OPSXXXXX-XXXXXXXXXXXX)
Neato Botvac                    "Botvac1" request status
Neato Botvac Error              "Botvac1" received malformed status message
Neato Botvac Error              "Botvac1" thread error 
'connected'
Traceback (most recent call last):
File "plugin.py", line 362, in run
func(*args)
File "plugin.py", line 422, in request_status
if self.states['connected'] == False:
KeyError: 'connected'
Apologies for the false start above – this is the error we're really chasing.

Thoughts? Thanks!
kmarkley
Posts: 187
Joined: Tue Nov 15, 2016 8:04 pm

Re: Botvac Connected with Neato Plugin

Post by kmarkley »

Try editing and saving your device configuration now that the account is properly connected.
chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Re: Botvac Connected with Neato Plugin

Post by chobo »

kmarkley wrote:Try editing and saving your device configuration now that the account is properly connected.
Unfortunately, same error after trying this edit/save.
kmarkley
Posts: 187
Joined: Tue Nov 15, 2016 8:04 pm

Re: Botvac Connected with Neato Plugin

Post by kmarkley »

Please turn on debugging and reload the plugin.
chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Re: Botvac Connected with Neato Plugin

Post by chobo »

kmarkley wrote:Please turn on debugging and reload the plugin.
Sure thing. Here's the result:

Code: Select all

   Starting plugin "Neato Botvac 0.0.1" (pid 34509)
   Started plugin "Neato Botvac 0.0.1"
   Neato Botvac Debug              Debug logging enabled
   Neato Botvac                    Neato account updated
   Neato Botvac                    Robots found:
   Neato Botvac                         Test Robot (OPSXXXXX-XXXXXXXXXXXX)
   Neato Botvac Debug              "Test  Robot" thread started
   Neato Botvac                    "Test  Robot" request status
   Neato Botvac Error              "Test  Robot" received malformed status message
   Neato Botvac Debug              {
    "action": 0, 
    "availableCommands": {
        "goToBase": false, 
        "pause": false, 
        "resume": false, 
        "start": true, 
        "stop": false
    }, 
    "availableServices": {
        "houseCleaning": "basic-1", 
        "manualCleaning": "basic-1", 
        "maps": "basic-1", 
        "schedule": "basic-1", 
        "spotCleaning": "basic-1"
    }, 
    "cleaning": {
        "category": 0, 
        "mode": 1, 
        "modifier": 1, 
        "spotHeight": 0, 
        "spotWidth": 0
    }, 
    "data": {}, 
    "details": {
        "charge": 96, 
        "dockHasBeenSeen": false, 
        "isCharging": false, 
        "isDocked": true, 
        "isScheduleEnabled": true
    }, 
    "error": "ui_alert_invalid", 
    "meta": {
        "firmware": "2.2.0", 
        "modelName": "BotVacConnected"
    }, 
    "reqId": "1", 
    "result": "ok", 
    "state": 1, 
    "version": 1
}
   Neato Botvac Error              "Test  Robot" thread error 
'connected'
Traceback (most recent call last):
  File "plugin.py", line 362, in run
    func(*args)
  File "plugin.py", line 422, in request_status
    if self.states['connected'] == False:
KeyError: 'connected'
kmarkley
Posts: 187
Joined: Tue Nov 15, 2016 8:04 pm

Re: Botvac Connected with Neato Plugin

Post by kmarkley »

Apparently your robot returns slightly different status info than mine. I can easily fix this but it will be a few days.
chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Re: Botvac Connected with Neato Plugin

Post by chobo »

No rush at all. Thanks much for tackling the plugin in the first place!
chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Re: Botvac Connected with Neato Plugin

Post by chobo »

Just tried this version. Similar issue. Thoughts?

Code: Select all

 Started plugin "Neato Botvac 0.0.2"
   Neato Botvac Debug              Debug logging enabled
   Neato Botvac                    Neato account updated
   Neato Botvac                    Robots found:
   Neato Botvac                         Test Robot ()
   Neato Botvac Debug              "Test  Robot" thread started
   Neato Botvac                    "Test  Robot" request status
   Neato Botvac Error              "Test  Robot" received malformed status message
   Neato Botvac Debug              {
    "action": 0, 
    "availableCommands": {
        "goToBase": false, 
        "pause": false, 
        "resume": false, 
        "start": true, 
        "stop": false
    }, 
    "availableServices": {
        "houseCleaning": "basic-1", 
        "manualCleaning": "basic-1", 
        "maps": "basic-1", 
        "schedule": "basic-1", 
        "spotCleaning": "basic-1"
    }, 
    "cleaning": {
        "category": 0, 
        "mode": 1, 
        "modifier": 1, 
        "spotHeight": 0, 
        "spotWidth": 0
    }, 
    "data": {}, 
    "details": {
        "charge": 100, 
        "dockHasBeenSeen": false, 
        "isCharging": false, 
        "isDocked": true, 
        "isScheduleEnabled": true
    }, 
    "error": "ui_alert_invalid", 
    "meta": {
        "firmware": "2.2.0", 
        "modelName": "BotVacConnected"
    }, 
    "reqId": "1", 
    "result": "ok", 
    "state": 1, 
    "version": 1
}
   Neato Botvac Error              "Test  Robot" thread error 
'connected'
Traceback (most recent call last):
  File "plugin.py", line 362, in run
    func(*args)
  File "plugin.py", line 422, in request_status
    if self.states['connected'] == False:
KeyError: 'connected'
kmarkley
Posts: 187
Joined: Tue Nov 15, 2016 8:04 pm

Re: Botvac Connected with Neato Plugin

Post by kmarkley »

chobo
Posts: 131
Joined: Sun Dec 08, 2013 10:07 am
Location: USA

Re: Botvac Connected with Neato Plugin

Post by chobo »

kmarkley wrote:Hopefully this gets it: https://github.com/kmarkley/Indigo-Neat ... /tag/0.0.3
This did the trick. Status is updating as expected. Will explore actions when I get the time. Thanks so much!
Post Reply

Return to “kmarkley's plugins”