Linux implemantation of the µDriver SPI interface

I would like to control a µDriver directly connected via SPI to a raspberry.

Has anyone already implemented the master-side of the protocol used by the µDriver and the master-board to communicate on linux ?

Not as far as I know, there is no such code on the linux side. We all use the master board so far.

Hi, as I need this for a robotic class, I made a functional prototype library in python. This will evolve during the coming days.

I’m now able to control two motors at 1khz with a direct SPI connection with a Raspberry Pi.

You can find the repo temporary hosted here: GitHub - thomasfla/odri-spi-rpi: Python code to access ODRI (Open Dynamic Robot Initiative) brushless drivers using directly SPI from a raspberry pi board.

1 Like

Hi ,we are trying to use your program connect a Respberry Pi with Ti boards to control two motor following ´open_robot_actuator_hardware/ at master · open-dynamic-robot-initiative/open_robot_actuator_hardware · GitHub
and use this program ´´
, but when we run you program, there is an error¨sensor frame is corrupted is uDriver powered on?¨
So we want to know if your program can work with TI boards or we should change some configuration?

Waiting for your reply :slight_smile:


I’m afraid you won’t be able to use an SPI connection with TI dev board. With uDriver V2, we made a small change to the pinout used by TI launchpad in order to free one of the two SPI used to configurate the MOSFET gate drivers.

Instead, you can use a CAN adapter, see the software for CAN on odri GitHub.

Hoping this helps,


In that case , can you send us something about the new pinout?


You will find the schematic of the uDriver V2 at this page: