Skip to content

Latest commit

 

History

History
34 lines (28 loc) · 1.37 KB

README.md

File metadata and controls

34 lines (28 loc) · 1.37 KB

neatpy

Simple interface for talking to most Neato robots via USB.

Instructions:

  1. Run pip install -r requirements.txt
  2. Connect your device, and run zadig in this folder - downloaded from: https://github.com/pbatard/libwdi/releases/download/b730/zadig-2.5.exe
    1. Options -> list all devices
    2. Find your device and select it -> click replace driver to WinUSB
    3. After this finishes, your device should appear under "Universal Serial Bus" devices in device manager.
  3. open ipython, and try the following:
xv = neato.xv11()
print xv.command('help')

# try this to rotate the robot
xv.turnRight(90)

# try this to get a direct shell to query commands directly from the device
# type `help [ENTER]` to see a list of all the commands
xv.shell()

Comments

I've used it with python 2.7. Some libraries such as libusb / pyusb are moving out of python 2.7. The script should be easy to turn into python 3, there's not much special stuff here.

Known errors:

  1. No supported backend - this usually means the python couldn't find libusb-1.0.dll here.
    1. One option is to copy it to system32 or some public location..
  2. array decoding error - this looks like python 3 vs 2 issue, I worked around it by never sending unicode strings into the commands..
  3. device not found - try checking zadig and device manager to make sure the usb device was installed correctly.