Can't connect oDrive to Raspberry Pi


I would like to connect my RasPi 3 Model B+, 2017 to the oDrive 3.5, but I fail with the USB path specification, maybe because I’m not that used to Python code yet. The answer I get is

$ ./odrivetool --path /dev/bus/usb/001/005
ODrive control utility
Developer Preview
If you find issues, please report them
or better yet, submit a pull request to fix it.

Traceback (most recent call last):
File "./odrivetool", line 137, in <module>, logger, app_shutdown_token)
File "/home/dlguser/odrive/ODrive/tools/odrive/", line 90, in launch_shell
branding_short="odrv", branding_long="ODrive")
File "/home/dlguser/odrive/ODrive/Firmware/fibre/python/fibre/", line 64, in launch_shell
File "/home/dlguser/odrive/ODrive/Firmware/fibre/python/fibre/", line 110, in find_all
raise Exception("Invalid path spec \"{}\"".format(search_spec))
Exception: Invalid path spec "/dev/bus/usb/001/005"

I got the USB path from
but maybe I have to change it?

Without the path command, I also get the error
Exception: Invalid path spec "usb"

Do you have any idea what I could do? Thank you very much!

Hi Daniel, were you able to solve the issue? Thanks

I know this thread is a bit old but in case anyone runs into the same issue: This happens if PyUSB is not installed. If you install odrivetool with pip then all dependencies should be installed correctly but if you run it from the cloned git repository then you first need to install them.

Try any of the following commands:

  • python3 -m pip install -r requirements.txt (run this in the “tools” directory)
  • python3 -m pip install odrive && python3 -m pip uninstall odrive (this will install and then uninstall odrivetool from pip, leaving its dependencies on your computer)
  • python3 -m pip install pyusb

If any one of these complete successfully you should be able to run odrivetool. Depending on your system you may need to use python instead of python3 or/and prepend sudo.