Determining Neato board revision without opening, updating

News and information about the Neato XV-11 Robotic Vacuum. All discussion and troubleshooting questions go here.

Determining Neato board revision without opening, updating

Postby noodlepringle » May 9th, 2019, 11:58 pm

I've been enjoying my Neato XV-21 robot for some time and decided to find another for my mother. I've picked up one that only runs version 3.0, so I'd like to update it to at least 3.1 so it'll do corner cleavers (but essentially as high an update as I can do on it).

I've done extensive reading and have understood the difference between the Binky and Cruz boards, but what I'm having difficulty on is how to figure out what revision a board is without having to open and fully remove the board to find the printed text on it.

Is there an easy way to do this? I have the NeatoControl program functioning and can connect and interact with the robot's firmware, but I'm still not sure what I'm seeing in the feedback.

Here is a printout of what's coming back from "getversion":
=============================================
Component,Major,Minor,Build
ModelID,-1,XV21,
ConfigID,2,,
Serial Number,WTD42112DD,0076603,P
Software,3,0,17235
BatteryType,1,NIMH_12CELL,
BlowerType,1,BLOWER_ORIG,
BrushSpeed,1200,,
BrushMotorType,1,BRUSH_MOTOR_ORIG,
SideBrushType,1,SIDE_BRUSH_NONE,
WheelPodType,1,WHEEL_POD_ORIG,
DropSensorType,1,DROP_SENSOR_ORIG,
MagSensorType,1,MAG_SENSOR_ORIG,
WallSensorType,1,WALL_SENSOR_ORIG,
Locale,1,LOCALE_USA,
LDS Software,V2.6.15295,0000000000,
LDS Serial,WTD41612AA-0184974,,
LDS CPU,F2802x/c001,,
BootLoader Software,17225,P,p
MainBoard Vendor ID,543,,
MainBoard Serial Number,000000000000000000000000,,
MainBoard Software,17242,1,
MainBoard Boot,16219,
MainBoard Version,4,0,
ChassisRev,2,,
UIPanelRev,1,,
======================================

Additionally, I see there are several ways to do the updates, but which is the safest? If I can find a copy of the proper program made by neato, can I point it to a downloaded firmware file? Or is the script method I see around just as safe?

I also see some mention that if it's a Cruz, that the Vorwerk firmware will work on it, but I understand that it then thinks it uses a lithium battery? Ideally I'd like to have it happily charge the onboard NiMH, and being that my mother is 2000+ kilometres away I'd like to have it reliably work.

I know I could leave the firmware on what it has (3.0), but in testing I see it struggles on corners and gets hung up in chair legs far more than the other 2 XV-21's I have here that run 3.1 and 3.4.

Many thanks for any tips - there's so much complex reading material on this!

Jesse
Last edited by noodlepringle on May 11th, 2019, 3:14 am, edited 1 time in total.
noodlepringle
 
Posts: 4
Joined: May 9th, 2019, 11:50 pm

Re: Determining Neato board revision without opening?

Postby glnc222 » May 10th, 2019, 11:42 am

I think you have to open it. Observe precautions mentioned in links in Mods & Repairs list, top of forum -- also including links to the offline firmware update methods. The two critical dissassembly precautions are not to break the levers on the wheel microswitches when installing the suspension springs when reassembling, and when opening the case (always after releasing the suspension springs), not to pull on the LCD ribbon cable which lacks a strain relief on the LCD board, where it is surface mount soldered and almost impossible to repair.

I don't know how to tell the board version from the USB data and it is essential to have this as the cpu was revised and so have different code files, and installing the wrong one will destroy the system (the firmware flashing and USB com is done by the firmware itself...). An unpublished USB command SetConfig is used in the updating script files to configure the software for either the Vorwerk or Neato models, with options for the battery type and side brush etc. The Vorwerk updating method is convoluted in that the unit is first configured as a Vorwerk with SetConfig and then put back to Neato afterword. SetConfig BatteryType 3 for lithium charging, 2 for NiMh -- used to replace NiMh with DIY lithium most conveniently (links in Mods & Repairs). The difference between these methods is mainly that the firmware files for the Cruz boards are in one method post and the Binky files in the other.

I think the last major addition was the "corner clever" improved maneuvering added in 3.1 with not much of importance in later versions IMHO, just assorted little tweaks.

Batteries must be good as I think the flashing must be done on battery instead of dock power because the power management software is getting revised in the process.

The script procedures are what the online updating operations used, just invoking those scripts with the web page coding. The web page would analyze the versions, however, to insure correctness, download the correct code file etc. Online updating was discontinued by Neato years ago but Russian users captured the updating files.
The USB driver package installs both the driver per se and an updater program consisting of a script driven terminal emulator, with updating performed by scripts referencing the code files and performing configuration operations besides flashing the code storage.
glnc222
Robot Master
 
Posts: 4909
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Determining Neato board revision without opening?

Postby Lewiy » May 11th, 2019, 1:12 am

You can see the revision in the Support menu on the bot display. Rev113 is Cruz, 64 - Binky.
Lewiy
Robot Master
 
Posts: 152
Joined: September 27th, 2014, 3:33 am

Re: Determining Neato board revision without opening?

Postby noodlepringle » May 11th, 2019, 2:26 am

Thanks to both of you for your help - I pulled it apart and found it to be a binky rev 4 (I'm assuming this means rev64).

Now I see links in hexor's tools to update to 3.1, but is there a 3.4 link hiding anywhere? There's lots of talk about russian links etc, but I can't seem to find anything more than mentions of going to the neato website etc which is all gone now.

Any hints? Or should I just stick with 3.1?

EDIT: of course sorry I misread, yes onscreen it says rev64 - and I managed to run the hexor utility to get it to 3.1, but hoping I can get it up to 3.4 like my other one as it does very well making its way back through the labyrinthian house to its charger, so any hints on the whereabouts of this firmware would be great!

EDIT#2: After the update the neato decided its battery was needing a charge (I assume it's a state thing, so I let it do its thing). But I noticed that there's something quirky going on now with the docking. I bumped it off its charger, and instead of doing the little wiggle to try to make contact again, one side simply reversed until it started pushing its back end up in the air. Is this a config setting that needs to be changed, or is something else afoot here?
noodlepringle
 
Posts: 4
Joined: May 9th, 2019, 11:50 pm

Re: Determining Neato board revision without opening?

Postby Lewiy » May 11th, 2019, 3:18 am

Probably the firmware files were saved only in private archives. The firmware 3.4 that I uploaded to my device a few years ago is in the attachment - https://yadi.sk/d/O3xXQ8t_NLw9lA. I hope you fully understand the risks associated with flashing the device.
After flashing check configuration by GetVersion
Lewiy
Robot Master
 
Posts: 152
Joined: September 27th, 2014, 3:33 am

Re: Determining Neato board revision without opening, updati

Postby noodlepringle » May 11th, 2019, 3:39 am

Thanks so much Lewiy.

Yep definitely understand the risks. It's become somewhat more important now that I reflash as the bot is now quite screwy since the upgrade to 3.1 - it's driving drunk, thinking its battery isn't charged, and in neatocontrol is reporting things like PINKY_INVALID_MESSAGE and PINKY_MSG_SIZE_MISMATCH etc.

I assume there's something up with the firmware from hexor - unless you know what this might be?

EDIT: hmmm... seems something is up - either it's firmware, or something has gone wrong since pulling it apart and reassembling. Even after the update to 3.4, if I try to pull it off its charger, instead of wiggling back on, it'll just full reverse its left wheel until I reset it. Any insights into this? I'm not too familiar with the way the wheels and feedback from them works
noodlepringle
 
Posts: 4
Joined: May 9th, 2019, 11:50 pm

Re: Determining Neato board revision without opening, updati

Postby Lewiy » May 11th, 2019, 4:05 am

Display information on the NeatoControl tabs (Options, Sensors, Scanner). Or get this information using the terminal commands.
Lewiy
Robot Master
 
Posts: 152
Joined: September 27th, 2014, 3:33 am

Re: Determining Neato board revision without opening, updati

Postby noodlepringle » May 11th, 2019, 4:53 am

Thanks so much Lewiy - checked it all out and found that no matter what speed I set the wheel to in the neatocontrol program, the left wheel would go full speed. I opened the casing and blew some air around the left wheel, and reseated the connector. Bingo - was just me being stupid and disturbing the connector when I disassembled. Many thanks - v3.4 is now fully working and performing beautifully on corners. Being that I have several bots here around me, I've been able to check 3.0 against 3.1 against 3.4 and I can say that 3.4 is the gentlest and best at corners. Behaviour is quite different in tight spots, and the one stool that can hang up the robots is able to be escaped by the neato in 3.4, where the others fail and call out for me to get them.

Perhaps there could be a clean post at some point with links to firmware and step by step guide in this forum for others like me to follow? I'm happy to pitch in and write a draft if that helps?
noodlepringle
 
Posts: 4
Joined: May 9th, 2019, 11:50 pm

Re: Determining Neato board revision without opening, updati

Postby Lewiy » May 11th, 2019, 7:42 am

There is a fixed topic at the root - viewtopic.php?f=20&t=19005. See also the link - viewtopic.php?p=134696#p134710 - you may want to add your experience there.
Lewiy
Robot Master
 
Posts: 152
Joined: September 27th, 2014, 3:33 am

Re: Determining Neato board revision without opening, updati

Postby glnc222 » May 11th, 2019, 4:16 pm

no matter what speed I set the wheel to in the neatocontrol program, the left wheel would go full speed.

Speed is regulated by a tachometer input to the cpu for feedback control. Loss of that signal was probably involved. The cpu then sends a PWM motor speed control signal to the motor (pulse width modulation to control motor power).
In this case the cpu is performing the speed control; experience showed that the suction fan has internal feedback control circuits, though still equipped with the PWM input to set the speed, and tachometer output to detect blockages etc.

Links to firmware updating threads are listed in the Mods & Repairs index thread top of forum, towards the bottom.
Any additions you care to make will be listed there for permanent reference.
glnc222
Robot Master
 
Posts: 4909
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.


Return to Neato Robotics

Who is online

Users browsing this forum: anjosva, im1kissfan, kersian and 286 guests