Odrive Pro CANbus not working

Hi, following the “CAN Bus Guide — ODrive Documentation 0.6.8 documentation” guide i set up the odrive pro, connected a CAN USB Connector “https://www.waveshare.com/wiki/USB-CAN-A” as well as a Oscilloscope, but no signal is send or even generated after completing the guide. The same Setup on an Odrive V3.6 works like a charm. Is there something not mentioned in the guilde?

Greetings, Sebastian Benkel,
(Framework Robotics GmbH)

Hi there,

Have you connected CAN_GND to your system star point?

We followed the schematic here: “CAN Bus Guide — ODrive Documentation 0.6.8 documentation”. Our Oscilloscope and Logic analyser couldn’t even detect anything resembling a CAN signal, is there a requirement before the odrive starts submitting? we tried a newly flashed odrive as well as one set up with a motor.
Thanks for your reply.

Just to confirm - the CAN_GND is connected to DC- at a single point, correct? This is a requirement for CAN to work. Note that explicitly this isn’t just connecting CAN_GND to the ground of your scope/logic analyzer, but DC- as well.

And the ODrive is running firmware v0.6.8?

After setting the CAN parameters in the GUI/ODrivetool, the ODrive’s configuration was saved (with odrv0.save_configuration() in ODrivetool and the save_configuration button in the GUI inspector)?

Yes, we used the ground from FEEDBACK IO, after checking that is has no resistance to ground on the powersource(Pin 11). Should be the like this:
Odrive wiring

(GND3 has no resinstance to power supply GND)

We tried two newly updated Odrive Pro with 0.6.8, without a motor, and one odrive pro we prepared last year, so Odrive 0.6.5.

When trying to send a message from another CAN device(Raspberry Pi shield) we got this weird inverted signal:


while the same Pi shield got readable messages from Odrive 3.6 that looked like this:

So CAN_GND is connected to GND on FEEDBACK_IO? While there isn’t steady-state resistance, there’s filtering components between FEEDBACK_IO GND and DC-. There’s a good chance that’s what’s causing the strange inverted readings you’re getting.

Just checking - both sides of the bus have a 120 ohm termination resistor? Is the ODrive powered? The ODrive Pro requires either power from DC+/DC- (above 12V) or an external 12V input over CAN_12V/CAN_GND for the CAN transceiver to come online.

Thank you for your help, we found a faulty cable used for ground :face_with_peeking_eye:. Now everything is working as expected.

That would do it! Glad to hear it’s working out!