Shorted rail on odrive v3.5-48v after changing the shunt resistors


i had to change the current sensing resistors since i have to drive the BL16B17-03 motor from lin-engineering.
in the standard configuration, i can’t really use position control since i can’t get a stable control. as soon as the P value is raised to make the motor move at reasonable speed. I had to keep the I value at 0 for the initial tests.
the chosen resistance for the new shunts is 25mOhm.
i managed to build the firmware with the changed values, so i’m basically ready to go.

however, after changing the resistors, i plugged the odrive to the psu and wanted to dfu the new firmware, but the PSU immediately ran into the current limiter.
measuring the supply rail resistance, it is shorted.

do you have an idea what could have gone wrong?
optically, i don’t see an obvious reason for the shortcut. can anyone give me a hint where the short could have happened?

best regards, adrian


Here is a closeup of the layout that might help you. The areas that are at risk to get shorted may be if you scrape a bit on the solder mask on the + side next to the shunt, or a solder short to the capacitor C55. This is on the side of the board close to M1, but there is similar close areas on M0 side.


thanks Oskar, that helped a lot. there was indeed an issue with scraping of the solder resist and a small solder bridge to the + plane.

problem solved concerning the shortcut!


however, i now have another issue:
the encoder that worked with the same wiring before changing the shunt now causes an error 0x04 (ERROR_NO_RESPONSE) when trying to run the full calibration sequence.
the strange thing is, that when requesting position information from the encoder, turning it by hand, it seems to work as intended.
in the sequence, after the beep, the motor does not spin. this could be a reason the encoder output does not change, but on the other hand, the odrive does not announce a motor error.

any idea on this, @madcowswe ?


additional info: i just measured the voltages for the logic levels and they seem odd to me.
logic low is at 0.19V, whereas high is at 3.8V. :thinking:

edit: does indeed match the datasheet of the us digital e6 encoder.