Botvac Connected with Neato Plugin

Posted on
Sat Feb 03, 2024 3:05 am
GlennNZ offline
User avatar
Posts: 1573
Joined: Dec 07, 2014
Location: Central Coast, Australia

Botvac Connected with Neato Plugin

Potentially. Looks like certificate based issues, and/or version of library issues. Probably need to downgrade current pybotvac to previous version that was working in 3.10.

Seems exception with urllib3.exceptions.SubjectAltNameWarning, which appears to have not existed in urllib for some time..

If do, in terminal window (not Indigo scripting window)
Code: Select all
pip3.10 show pybotvac


Should show previous python 3.10 version of pybotvac that you had running.

& then install this version the python 3.11 via pip3.11. Because it is already installed and a later version you can either uninstall and reinstall specifying the same version. Or force-install

Code: Select all
pip3.11 install 'pybotvac==0.0.23' --force-reinstall


NB: With the 0.0.23 — being whatever version was reported by pip 3.10

If all that seems difficult, probably would try the 0.0.23 or 0.0.22 versions


Sent from my iPad using Tapatalk
Last edited by GlennNZ on Sat Feb 03, 2024 5:31 am, edited 1 time in total.

Posted on
Sat Feb 03, 2024 5:07 am
GlennNZ offline
User avatar
Posts: 1573
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: Botvac Connected with Neato Plugin

On further looking at this, I believe it is because of urllib3 change between these 2 python versions of Indigo, and because the pybotvac library hasn’t been updated to support the urllib3 changes.

Would skip my last post.
(There still may be a pybotvac version issue = but doesn’t seem the main issue)

I think the best way to fix this in the 2023.2 landscape would be to add a requirements.txt file to the plugin.

Total contents of requirements.txt
pybotvac
urllib3==1.26.16

It goes in the Server Plugin folder of the pluginBundle, Contents, Server Plugin folder (same directory as plugin.py file)
&
Will need API info.plist changed to ServerAPIVersion
3.4

All this is getting a bit tricky understandably. Ideally hopefully plugin author can update the plugin - and hopefully this helps a bit


Sent from my iPad using Tapatalk

Posted on
Sun Feb 04, 2024 12:10 am
GlennNZ offline
User avatar
Posts: 1573
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: Botvac Connected with Neato Plugin

Hi

Given the author hasn't replied to some queries (I understand) I have made the changes I refer to as above, which avoids those errors.

Remains untestable as to other issues.

But here is a version, dependant on Indigo 2023.2 - but automatically installs pybotvac and also co-installs just for this plugin urllib3

https://github.com/Ghawken/Indigo-Sunri ... .0.1.1.zip

Posted on
Sun Feb 04, 2024 3:51 am
McJohn offline
User avatar
Posts: 631
Joined: Dec 18, 2012
Location: The Netherlands

Re: Botvac Connected with Neato Plugin

thank you for your work, it is appreciated again.

Red errors are gone, but the vacuum cleaner no longer listens to commands. Nothing happens.
(via the iPhone app it works well)

See log below:

Loading plugin "Neato Botvac 0.1.1" using API v3.4
Starting plugin "Neato Botvac 0.1.1" (pid 45127)
Processing requirements for plugin "Neato Botvac 0.1.1"
Requirements installing, this may take a few seconds...
Finished installing requirements for "Neato Botvac 0.1.1", continuing startup
Started plugin "Neato Botvac 0.1.1"
Neato Botvac Debug Debug logging enabled
Neato Botvac Neato account updated
Neato Botvac Robots found:
Neato Botvac Neato upstairs (OPS12516-689E19A20823)
Neato Botvac Debug "Neato” thread started
Neato Botvac "Neato" request status
Neato Botvac Debug "Neato" available commands: {'start': True, 'stop': False, 'pause': False, 'resume': False, 'goToBase': False}
Neato Botvac Debug "Neato" status update complete
Neato Botvac Debug "Neato" thread cancelled
Neato Botvac Debug "Neato" thread started

Neato Botvac "Neato" request status
Neato Botvac Debug "Neato" available commands: {'start': True, 'stop': False, 'pause': False, 'resume': False, 'goToBase': False}
Neato Botvac Debug "Neato" status update complete



Then the Action Group "Get Robot Info" gives:

Neato Botvac "Neato" get robot info
Neato Botvac {
"data": {
"BatteryType": 4,
"BlowerType": 1,
"BoardRev": 1,
"BrushDirection": 0,
"BrushMotorType": 1,
"BrushPresent": 1,
"Build": 0,
"CPUMACID": "689e19a20823",
"CartID": 1,
"ChassisRev": 1,
"CumulativeCartridgeTimeInSecs": 1460128,
"DropSensorType": 1,
"LDSMotorType": 2,
"Locale": 1,
"MagSensorType": 1,
"MainBrdMfgDate": "OPS11216",
"Major": 2,
"Minor": 2,
"ModelName": "905-0249",
"NeatoServer": "neato.cometa.io",
"PadDirection": 1,
"PadPresent": 0,
"PlatenPresent": 0,
"RobotMfgDate": "OPS12516",
"SideBrushPower": 1500,
"SideBrushType": 2,
"USMode": 3,
"VacuumDirection": 0,
"VacuumPresent": 1,
"WallSensorType": 1,
"WheelPodType": 1,
"blowerHW": 0,
"blowerSWMajor": 0,
"blowerSWMinor": 0,
"bootLoaderVersion": 27828,
"brushSpeed": 1400,
"brushSpeedEco": 800,
"capacity_mode": 0,
"chemistry_name": "LION",
"current_multiplier": 1,
"data_ver": 512,
"design_capacity": 4200,
"design_voltage": 14400,
"device_name": "F164A1028",
"driverID": 0,
"driverVersion": 0,
"hardware_version_major": 0,
"hardware_version_minor": 0,
"ldsBuildNum": "0000000000",
"ldsCPU": "F2802x/c001",
"ldsSerial": "OPS12316AA-0142877",
"ldsVer": "V2.6.15295",
"manufacturer": 0,
"max_current": 0,
"max_voltage": 0,
"mfg_access": 49152,
"mfg_day": 16,
"mfg_month": 2,
"mfg_name": "Panasonic",
"mfg_year": 2036,
"modelName": "BotVacConnected",
"nAutoCycleCleaningsStarted": 0,
"nCleaningsStartedWhereDustBinWasFull": 0,
"qaState": 13398,
"runTime": 876160,
"serial_number": 38148,
"software_version_major": 0,
"software_version_minor": 0,
"sw_ver": 2048,
"uiBoardHWVer": 0,
"uiBoardSWVer": 19,
"ultrasonicHW": 0,
"ultrasonicSW": 0,
"vacuumPwrPercent": 80,
"vacuumPwrPercentEco": 65,
"vacuumSpeed": 64880,
"voltage_multiplier": 1
},
"error": "ui_alert_invalid",
"reqId": "1",
"result": "ok",
"version": 1


And the Action Group "get general info" gives:

Neato Botvac "Neato" get general info
Neato Botvac {
"error": "ui_alert_invalid",
"reqId": "1",
"result": "ko",
"version": 1
}

Posted on
Sun Feb 04, 2024 4:15 am
GlennNZ offline
User avatar
Posts: 1573
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: Botvac Connected with Neato Plugin

I’m afraid fixing the obvious library based issues is where my help probably ends. Seems like that has happened based on this communication that has occurred.

Seems like it connects to the robot, but that is the limit? Might relate to the certificate issues which seem to abound in the library pulls - although they are all a year or so old. But really could be anything!

It is a cloud connection though - so could possibility see if can login and figure out/work with your account details. Probably not that great an idea because I’m sure you don’t want your vacuum starting at 2am in the morning…. So unless super-keen probably wouldn’t recommend?

(I just deleted a paragraph talking about how good the latest AI iroombas are (cost aside) despite being round, betting Neato in all reviews that I could find… but then realised was probably unneeded and rubbing salt in wound! Sorry - just done it again!)

Best of luck

Glenn


Sent from my iPad using Tapatalk

Posted on
Sun Feb 04, 2024 5:07 am
McJohn offline
User avatar
Posts: 631
Joined: Dec 18, 2012
Location: The Netherlands

Re: Botvac Connected with Neato Plugin

Thank you very much for your extended explanation.
It is indeed strange that a connection is made with the robot, but then it stops.

Not every update is progress, so sometimes you lose things in life...
With Indigo 2021.1, this plugin worked perfectly last week, so I can't imagine it would be certificates (or problems at the Neato site).
(and the cloud login apparently also works, otherwise no information about the robot will appear in the log)

The vacuum cleaner still works fine and we are extremely satisfied with the D-shape of the Neato.
Round doesn't fit in a corner :lol:

It was nice to work with you again Glenn.

Posted on
Sun Feb 04, 2024 2:04 pm
GlennNZ offline
User avatar
Posts: 1573
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: Botvac Connected with Neato Plugin

Well - it still could the earlier thought which is the version changes with the pybotvac library. I’ll have a look….

iRoomba did make a D sized robot - the S - but largely then replaced it, with round…


Sent from my iPad using Tapatalk

Posted on
Sun Feb 04, 2024 10:09 pm
GlennNZ offline
User avatar
Posts: 1573
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: Botvac Connected with Neato Plugin

I have created an Neato account and will see if can replicate some of the issues
No promises as obviously a bit hard without a device connected to said account ….

Actually it all is working well, minus missing a robot to actually control...
Seems to connect.
The error msg invalid UI that you report is common and means nothing it would seem.

So would double check Neato devices - selection etc.
Then post/email a full debug log and can have a further look.

Posted on
Mon Feb 05, 2024 3:47 am
McJohn offline
User avatar
Posts: 631
Joined: Dec 18, 2012
Location: The Netherlands

Re: Botvac Connected with Neato Plugin

Thanks for your feedback Glenn.

I saw that Neato stopped making the best vacuum robot.
https://neatorobotics.com
That's too bad.
So we'll have to be careful with ours, they're still doing great.
I checked whether I could enable a more extensive log in the plugin, but the debug information shown is the maximum.

There is a menu in the Plugin; "Update Neato Account"
when I do that then I saw in the log:

Neato Botvac Neato account updated
Neato Botvac Robots found:
Neato Botvac Neato (OPS12516-689E19A20823)

Posted on
Mon Feb 05, 2024 3:53 am
GlennNZ offline
User avatar
Posts: 1573
Joined: Dec 07, 2014
Location: Central Coast, Australia

Re: Botvac Connected with Neato Plugin

Wow - didn’t realise they had stopped trading

The connection is a cloud account so that potentially might go away some time as well….

Seems to connect to be and show robots

Would restart with debugging on and see what is shown .
Would reopen devices and make sure robots is listed and selected


Sent from my iPhone using Tapatalk

Posted on
Mon Feb 05, 2024 8:20 am
McJohn offline
User avatar
Posts: 631
Joined: Dec 18, 2012
Location: The Netherlands

Re: Botvac Connected with Neato Plugin

Made a new Indigo Neato Device, called Neato Botvac upstairs
The strange thing is that with an action from an Action Group, the log says:

Neato Botvac "new device" start house cleaning
Neato Botvac "new device" request status
Neato Botvac Debug "new device" available commands: {'start': True, 'stop': False, 'pause': False, 'resume': False, 'goToBase': False}
Neato Botvac Debug "new device" status update complete

I wonder why it says "new device"
Never saw that.
But there seems to be a connection because the battery status is ok and there is custom state info.
Attachments
Screenshot 2024-02-05 at 15.14.46.png
Screenshot 2024-02-05 at 15.14.46.png (496.47 KiB) Viewed 447 times

Posted on
Mon Feb 05, 2024 8:23 am
McJohn offline
User avatar
Posts: 631
Joined: Dec 18, 2012
Location: The Netherlands

Re: Botvac Connected with Neato Plugin

PS; after a restart of the plugin it says with a Start Action:

Neato Botvac "Neato Botvac upstairs" start house cleaning
Neato Botvac "Neato Botvac upstairs" request status
Neato Botvac Debug "Neato Botvac upstairs" available commands: {'start': True, 'stop': False, 'pause': False, 'resume': False, 'goToBase': False}
Neato Botvac Debug "Neato Botvac upstairs" status update complete


But nothing happened.

Posted on
Mon Feb 05, 2024 9:03 am
FlyingDiver offline
User avatar
Posts: 7222
Joined: Jun 07, 2014
Location: Southwest Florida, USA

Re: Botvac Connected with Neato Plugin

McJohn wrote:
I wonder why it says "new device"
Never saw that.


That's caused by the plugin developer not updating the internal device representation after you rename the device. When the device is first initialized, it has the default name Indigo gives it when it's created. You changing the name happens after that, and sometimes a developer won't refresh the device info properly.

I should know, I'm guilty of the same thing in some of my plugins. I've fixed it in most, but not all.

joe (aka FlyingDiver)
my plugins: http://forums.indigodomo.com/viewforum.php?f=177

Posted on
Mon Feb 05, 2024 9:26 am
McJohn offline
User avatar
Posts: 631
Joined: Dec 18, 2012
Location: The Netherlands

Re: Botvac Connected with Neato Plugin

Thank you for the explanation and honest confession :D

Posted on
Mon Feb 05, 2024 1:19 pm
kmarkley offline
Posts: 185
Joined: Nov 15, 2016

Re: Botvac Connected with Neato Plugin

Hello everyone. As you probably noticed, I'm not around much these days. I haven't completely stopped maintaining my plugins, but I'm really not staying on top of it either (and don't expect to ).

Sorry about the errors on upgrade. When I first stopped bundling the pybotvac library with the plugin, I thought it would be helpful to throw an error on import telling users they had to install the library themselves. Bad idea in hindsight as it masked other sorts of import issues.

@GennNZ, is it possible to turn your edits into a pull request?

Also happy to accept any volunteer co-maintainers.

Who is online

Users browsing this forum: No registered users and 11 guests