Axis 0 loud whining on Closed Loop Control mode

The odrive generally works and we’re able to fully calibrate with our 8192-pos encoders… but axis 0 emits a loud whining sound whereas axis 1 is pretty quiet. The whining starts as soon as: odrv0.axis0.requested_state = 8 (closed loop control mode).

We swapped motors between axis0 and axis1 to confirm this issue was not a motor problem.

We disconnected axis1 to confirm this issue was not an insufficient-capacitance-between-a0a1 problem.

We have 2 odrive modules. On our second odrive module, not only does axis0 whine but it also jiggles the motor when no input_pos commands are issued. Again, we tested to confirm this is not a motor problem.

Which motors are you using, out of curiosity?

Axis 0 and Axis 1 are slightly different from each other, unfortunately, and the axis whine you hear is the current shunt noise. You can reduce the overall noise levels with the ferrite rings from the shop, which may help here (depending on the noise source)

Electrocraft MPW86 (48VDC, 8-pole).

No luck with the big ferrite rings from our inventory. We’ll test further and see what we can discover.

Let me know if you know any other solution paths.

As a workaround (you shouldn’t need to do this) try reducing motor.config.current_control_bandwidth. I had to reduce it to 600 on my motor or I get audible noise on axis0.

1 Like