Neato ESP8266 Remote control (www.neatoscheduler.com)

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

Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby HawtDogFlvrWtr » June 2nd, 2017, 6:50 am

I've been working for the last month or so with an ESP8266-12S on my Neato 80 to expand its once a day schedule. I've come a long way and I wanted to pass out some info, and give away several modules for folks to use with their 70-85's. I've gone away from a simple console interface, and have actually created a site that captures statistics about the Neato, and allows you to schedule cleaning events to your hearts content. The site is https://www.neatoscheduler.com. I have put up several detailed videos from wiring the 8266, to programming it, and also website account creation and list of features.

If you're interested in a free module, pm me with your name and address. I have 8 as it stands right now, but will be making more later. If you're interested in viewing the source, it can be found here: https://github.com/HawtDogFlvrWtr/botvac-wifi

If you already have an 8266 in your Neato and want to attach it to the site, you should just follow video 1 to reprogram it with my sketch. It will automatically start talking to the site and as soon as you create an account.

Video 1 - Soldering and programming the 8266
https://www.youtube.com/embed/QNGhtmJyL_g

Video 2 - Modifying the neato
https://www.youtube.com/embed/7RNAHIHY8kA

Video 3 - Website details
https://www.youtube.com/embed/9XKwpDpHlWs
Last edited by HawtDogFlvrWtr on June 7th, 2017, 7:29 am, edited 2 times in total.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (but way, way more)

Postby mfortuna » June 2nd, 2017, 11:59 am

Excellent project. Thanks for sharing it.
Mike
Reds x 3, Dirt Dog, Disco (now a parts bot), Create, Scooba 350, and Security Dawg
Evolution Mint
Neato XV-11
User avatar
mfortuna
Robot Master
 
Posts: 5767
Joined: February 5th, 2006, 10:35 am
Location: NH

Re: Neato ESP8266 Remote control (but way, way more)

Postby JEfromCanada » June 2nd, 2017, 2:09 pm

Moderator, any way to "sticky" this topic?
Current robots:
Roomba Discovery 4210 (R.I.P. - Freecycled)
Roomba 560 (retired)
Neato XV-11 SW version 3.1.17844, LDS version 2.6.15295, with Pet Brush and Vic's filter (sold)
Neato Botvac 80 SW version 1.1.97, LDS version 2.6.15295, Board SW version 22753
JEfromCanada
Robot Addict
 
Posts: 620
Joined: November 13th, 2007, 5:16 pm
Location: Canada

Re: Neato ESP8266 Remote control (but way, way more)

Postby glnc222 » June 2nd, 2017, 3:58 pm

At least it has been indexed in the "Mods & Repairs" list wiki main page under Botvac WiFi so does not get buried. Second project using that serial connector on the edge of the Botvac system board. A connector for the board is also discussed.

Lots of ESP8266 info at Sparkfun https://www.sparkfun.com/products/13678
$6.95 there so could be even cheaper elsewhere. Popular part.

[edit] Another 8266 project with YouTube video links http://www.robotreviews.com/chat/viewtopic.php?p=143898#p143898
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (but way, way more)

Postby glnc222 » June 4th, 2017, 1:30 pm

Possible use with XV models? The oldest Rev113 Cruz system boards (with side charging plug) have an unpopulated serial interface header, once used for a BlueTooth project http://www.robotreviews.com/chat/viewtopic.php?f=4&t=15349
Newer Rev64 Binky boards have only USB.
Last edited by glnc222 on June 6th, 2017, 11:06 pm, edited 2 times in total.
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (but way, way more)

Postby HawtDogFlvrWtr » June 5th, 2017, 5:58 am

So long as the serial commands are the same, it will work. If they're different, I can certainly write a sketch for them to work.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (but way, way more)

Postby HawtDogFlvrWtr » June 5th, 2017, 7:40 am

I got 6 additional 8266's in yesterday that I'm going to wire up and program. Let me know if you want one and i'll mail it to you for testing.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (but way, way more)

Postby glnc222 » June 5th, 2017, 2:57 pm

The command language, made for the USB connection, is the same on Botvac and XV except for the missing log file features on Botvac. The manual at the company website is linked in Neato Programming Guide thread top of forum.

For PC use (in developing the WiFi addition, exploring the firmware etc., over USB, a driver for Neato is supplied, including a firmware updater program from when online updates were supplied (usable with offline files available from users here). Links in Mods & Repairs list thread. The WiFi addition should operate similar to the USB connection, on the same channel into the robot's cpu on the same firmware functions. There was some work tapping into the cpu IC serial connection pin instead of the serial header, for the newer Rev64 system boards lacking the header, but I think it is running a USB serial protocol, packets etc.

The USB interface, and so the serial port, employed single character packets, echoed to the external host, reproducing old teletype serial interfaces, with in-line backspace editing of commands executed on carriage return. The updater program is a custom script driven terminal emulator. The USB command set includes firmware flashing operations.

The more important difference on XV is a response to commands to clean requesting disconnection of the USB cable to release the robot, requiring a momentary disconnection of the serial interface, after which it can be resumed, eliminated for some reason with Botvac, perhaps anticipating WiFi models. How that works with the serial port is not clear yet. Other projects handle this in various ways, so perhaps some software for the ESP8266 or Arduino can do something if needed, unknown. Windows on a PC can shut down USB interfaces, and some relays were even used in other projects, as well as firmware in programmable WiFi mini routers used. See Mods & Repairs list thread for such projects.

The latest WiFi models D3, D5 no longer have USB ports. The company supports more elaborate software APP development by users in their Neato Developers Network website with more info, expanding into the smartphone app software besides the robot internal firmware. The original Connected model with WiFi still has USB, used for firmware updating from thumb drives using an OTG host interface cable -- so some different firmware on that connection, and maybe using the WiFi as well, I have not used it.

It is possible to use the USB port on Botvac but the connector is inconveniently beneath the dust bin, making the system board edge connector serial port easier to use -- and apparently not needing USB packet protocol, a "USB host interface" -- I haven't checked those details, see the project software. A standard plug for edge connectors can be used besides soldering to the traces, but may require lifting the board while attaching, to squeeze into the case -- at least saves solder mod to the board, more professional. XV models have a mini USB instead of micro, on the outside of the case. The older Rev113 Cruz system boards have an unpopulated serial header (to which a connector can be soldered) besides the USB plug.
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (but way, way more)

Postby HawtDogFlvrWtr » June 6th, 2017, 7:01 am

I'm going to have to invest in an older xv model and a newer xv model to do some testing. I'm not worried about the newer wifi models. Thanks for the info. Where is a usb controller, there is a uart connection I can tap into for an easier interface.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (but way, way more)

Postby HawtDogFlvrWtr » June 6th, 2017, 8:57 am

Woot has them on sale (botvac 80) today. The same one I purchased some months ago:

https://home.woot.com/offers/neato-botv ... me_dly_img
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (but way, way more)

Postby glnc222 » June 6th, 2017, 6:42 pm

Botvac 80 is not an "older XV model" -- different product series, different system boards and construction. Still on the company website, still sold I think, new and used. See WiFi/USB section of Mods & Repairs list main page for links to all radio interface projects. As a vacuum, the newer XV like the last, Signature, has some better firmware, with a cpu change on the system board Rev64 Binky-- but only the USB interface. As mentioned above Rev113 Cruz boards have a separate serial header, probably working with the Botvac device already built. With Arduino host USB interfaces are available, if they can be used with the ESP8266. The built-in USB on the Arduino boards are client interfaces for the PC host, to program the Arduino.
I gather the OTG? cables now contain a host USB interface to connect to clients (the Neato plug), which then would connect to the Arduino built-in plug. I have not worked with these things.
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (but way, way more)

Postby kslmgd » June 6th, 2017, 9:27 pm

Unable to delete device after add wrong serial # on https://www.neatoscheduler.com
kslmgd
 
Posts: 11
Joined: January 1st, 2016, 3:53 am

Re: Neato ESP8266 Remote control (but way, way more)

Postby HawtDogFlvrWtr » June 7th, 2017, 6:19 am

I've removed it for you. I will look back through the logs and see what the error was. To make the site secure, I do a lot of cleanup on calls to the database. The special characters probably killed the delete.

*EDIT* Fixed. It was the special characters. I added a check when inserting serials and fixed it if they slide through. Thanks for letting me know.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby glnc222 » June 7th, 2017, 2:37 pm

Alexa integration
Users can program Alexa for robot on WiFi (not done yet); Amazon supplies programming support kit.
Alexa routines for interfacing devices are called "skills" -- give it the skill to operate a device on WiFi.
Not sure where the skill used with the D3, D5 Botvac's comes from, whether usable. Anyway make your own.
https://developer.amazon.com/alexa-skills-kit/tutorials/fact-skill-1?&sc_channel=SEM&sc_campaign=Fact-Skill&sc_detail=Branded&sc_segment=Alexa-Dev&sc_publisher=Google&sc_country=WW&sc_medium=SEM_Fact-Skill_Branded_Alexa-Dev_Google_WW_0007&sc_trackingcode=0007&gclid=Cj0KEQjwyN7JBRCZn7LKgb3ki8kBEiQAaLEsqjYK6k-qsHvhdx8moIPkx1FQk5vqouv-ve0PwokKiUUaAvor8P8HAQ
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby HawtDogFlvrWtr » June 7th, 2017, 2:50 pm

Thanks for the info. I'm nearly done with the Alexa integration webservice. Will circle the wagons on that as soon as I have the over the air piece I've been working on, tested and deployed. Need that done first so I can mail out all of the 8266's that have been requested.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby glnc222 » June 7th, 2017, 3:14 pm

USB protocol software for ESP8266 might allow connection to newer XV models through the USB port (as mentioned, oldest ones have a serial header similar to Botvac). There is also hardware, electrical difference between USB and logic level serial ports signal lines, for bidirectional connection etc. I think adapters are made, not my specialty, but may not be needed. Other sources on Google besides this:
http://hackaday.com/2016/09/03/software-usb-on-the-esp8266/
Serial interfaces like Neato's use a direct character-by-character, ASCII bytes, hardware acknowledge protocol, but USB uses high capacity block data packets like a disk drive interface or networking ethernet, for speed, extra prefix and suffix data for error detection etc. Separate software for a host side and client side of the connection; PC's are host side, most WiFi devices, like robots, are clients. Similar to WiFi -- whether in "Access Point", router-type mode, or device receiving from a router. Robots switch to AP, Access Point, for smartphones to send router passwords to them in setup.
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby glnc222 » June 7th, 2017, 3:33 pm

USB operation can be tested on the Botvac USB connector under the dust bin, and will then work on XV models. The serial port on Botvac is needed because the USB plug under the dust bin is hard to use, no room for wiring; the XV USB plug is on the side of the case, outside (mini instead of micro plug on Botvac).
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby HawtDogFlvrWtr » June 8th, 2017, 3:15 pm

Does anyone have an actual list of the errors and their numbers? The serial document from the neato site has them, but they're not lining up with mine.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Re: Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby glnc222 » June 8th, 2017, 5:21 pm

I don't think Neato has ever disclosed the meaning of their error codes, and it is just up to user observation. Some are associated with LCD messages, like 3 is lidar failure. There is one for a missing thermistor in the battery pack I forget. I think 2 is disconnected battery. Russian users discovered the unpublished SetConfig command discussed in the Lithium IOn Revisited thread, used to set Vorwerk options for lithium battery charging etc. -- not an operating command (active only on Rev64 XV system boards).
glnc222
Robot Master
 
Posts: 4539
Joined: January 23rd, 2012, 9:19 pm
Location: North Carolina, U.S.

Re: Neato ESP8266 Remote control (www.neatoscheduler.com)

Postby HawtDogFlvrWtr » June 8th, 2017, 10:19 pm

Alright. for those folks that asked me to send them a unit. I finished the last piece of what I was going to work on, today. I'll be mailing them out this weekend or Monday morning. If you were outside of the US, i'm still gathering prices to ship them. I'll respond back when I know the details.

@ginc222, Thanks for the info. I'll change the way that i'm gathering the information so that I store the code and the String reason. I was hoping that I could use the list in the pdf and only send the number code, and correlate it on the page with an issues database that I compiled from the pdf. No beans though.
HawtDogFlvrWtr
 
Posts: 28
Joined: June 2nd, 2017, 6:39 am

Next

Return to Neato Robotics

Who is online

Users browsing this forum: vic7767 and 341 guests