Odrive + openpnp?

Hi there,

I haven’t been able to find much info on openpnp & odrive combinations and wondering if there’s anyone here who has tried this or has comments on working setups. It’s not really clear to me how to interface the odrive through what motion controller with openpnp and how.

Thanks a bunch in advance,

I think the only thing missing from ODrive that would be needed is a G-Code interpreter.
Depending on the subset of commands they actually use, it may be a fairly simple job to write a python script that reads G-Code from a TCP or serial port, and sends ODrive commands over USB or CAN.


The easy way would be to connect your ODrive to a separate motion controller using step/dir signals for X/Y axis. OpenPnP would then only need to interface to this motion controller using GCode.

However, I plan to implement a new driver in OpenPnP to use the ODrive ASCII or Native protocol. In the newest version of OpenPnP, multiple motion controllers should be supported. But I still have some work to get everything up and running…

Best Regards

1 Like

Why not use CAN? Wouldn’t it be more robust?

I don’t know wheter there is any motion controller available that supports external drivers using CAN.
I think most people just use USB or something like RS485 to communicate with their controller.

In my setup I intend to just use two independent controllers, probably both connected using USB. I don’t want to trade accuracy for speed just to use step/dir signals…

Oh I see what you mean. OpenPnP isn’t doing the motion control, it’s talking to a controller which is talking to the drivers. Got it.

There are lots. here’s one example PCMM | Controller Hardware | Kollmorgen Automation Suite\

Yaskawa, Siemens, Parker all make some. I’m sure there are plenty more