error_Illegal_hall_state error & error_dc_bus_under_voltage

My project was running smoothly until today. After several hours of run time over the past week I am now getting an illegal hall state error on M1 as soon as I power the board. power is supplied by a 48V meanwell switching supply. If I switch to a 12V switching supply I don’t get the illegal hall state error and the motor attempts to spin before throwing dc bus under voltage error. The low voltage trip level is set at 8V and the supply is not dropping out.

I have M0 and M1 configured the same and have 22nF capacitors on the encoder inputs. Whats interesting is that M0 works in all scenarios. Swapping cables and motors the error stays with M1. Prior to yesterday M1 was working fine. I checked the Hall Effect signals at the board while spinning the motor by hand and all three are nice square waves.

I have searched other post and nothing is quite like what I am seeing. Any advise or areas to look at is greatly appreciated.

v3.6 56V Board with 22nF caps on encoder inputs
v0.5.1 rc firmware
48V supply voltage

Is there any difference in config at all between the two sides?
You could try backup_config, then use a good text editor to pretty-print the JSON, and then swap the config over between the two axes.

As to the power supply - if it works on the 12V but not on the 48V, then it’s almost certainly a noise issue. There will be about 16x more capacitively-coupled noise at 48V than at 12V.
It’s also possible that your 48V PSU has blown an output cap and there is now a lot of ripple on its output. Do you have a scope? Or failing that, put a true-RMS multimeter in AC mode across the DC terminals. That should give you an idea of how much voltage ripple you have.
If you can swap out the ODrive for an appropriately-sized resistor and you still see more than 100mV of AC on your PSU’s output, then the PSU has gone wrong.

Oh? How come? r^2 falloff?

I mean in terms of power at least, simply because an existing parasitic capacitance (such as one between the motor and encoder wires in a shared cable) has energy 0.5*C*V^2 which is charged and discharged at our switching frequency. If you double the voltage, you quadruple the power through a parasitic capacitance
(assuming the switching /time/ doesn’t change, which it might. i.e. dV/dt at the MOSFET output is proportional to Vbus.)

I wanted to provide an update on the error. After confirming the power supply signal was in spec with approx 150mV of ripple we ended up replacing the motor and are no longer experiencing the illegal hall state or dc bus under voltage error. We used that same motor on another Odrive board and experienced the same error. the issue was definitely being caused by the motor.

1 Like

That makes sense. Some motors have faulty wiring where charge flows from the winding into the iron stator, either due to a short or a very near short (ie resistance and/or capacitance) between the winding and the iron. My recommendation is to always strongly ground the motor chassis.
In other threads, some people have had encoders or even the ODrive itself, go up in smoke due to motor phases touching the casing inside the motor, and that casing then being grounded by the encoder only.