<axis>.config.motor.current_hard_max

I’m running an S1 with a M8325S 100KV, 2 ohm brake resistor, and a MEAN WELL SE-450-48.

I’m attempting to calibrate my new S1 setup and run into the following error:

DC_BUS_OVER_REGEN_CURRENT

Here’s the full dump

{
“fw_version”: “0.6.9”,
“commit_hash”: 2499272527,
“product”: “5.2.0”,
“active_errors”: 134217728,
“active_errors_str”: “BRAKE_RESISTOR_DISARMED”,
“disarm_reason”: 2048,
“disarm_reason_str”: “DC_BUS_OVER_REGEN_CURRENT”,
“procedure_result”: 3,
“procedure_result_str”: “DISARMED”,
“last_drv_fault”: 0,
“internal_issues”: 0
}

In the docs for the error, it says the following:

“This can happen if your brake resistor is unable to handle the braking current. Check that (V_power_supply / brake_resistance) > [<axis>.config.motor.current_hard_max]”

Well, my V_power_supply is 48v, my brake_resistance is 2 ohm, and current_hard_max for the M8325S is 70 A. So there’s clearly a mismatch here. According to this I need a 0.68 ohm or lower brake resistor. I find this strange as this is a full ODrive setup and ODrive doesn’t offer anything aside from 2 ohm brake resistors. If I don’t change the brake resistance I’d have to change V_power_supply to a value far too high for the S1.

Am I missing something?

Also worth mentioning, initially when calibrating the motor attempted to spin, made some noise while stationary, and then beeped. Now after 5 or 6 tries I can’t get it to do anything, I just get an instant DC_BUS_OVER_REGEN_CURRENT error.

Update. I dug through the API documentation for the error dc_max_negative_current and found that dc_max_negative_current should be set to a small negative value if you’re using a brake resistor with a power supply. This is the first I’ve seen this info in documentation.

dc_max_negative_current

Max current the power supply can sink.

This is the amount of current allowed to flow back into the power supply. The convention is that it is negative. By default, it is set to a conservative value of 10mA. If you are using a brake resistor and getting DC_BUS_OVER_REGEN_CURRENT errors, raise it slightly.

I’m not sure if it was automatically set to 10ma, because when setting up my environment I did type in zero as that’s what I’ve read about using power supplies.

Setting it to 10ma allowed me to pass calibration, but it still throws the DC_BUS_OVER_REGEN_CURRENT error when running at moderate velocities on the dashboard.

I’m not really sure what to set this value to. I don’t want to damage my power supply and the API docs clearly state I need to change the value if I keep hitting this error.

Final update. In my troubleshooting I unchecked “use brake resistor”, so it kept throwing DC_BUS_OVER_REGEN_CURRENT with dc_max_negative_current set to the recommended 10mA when I played around in the dashboard.

When I checked that box, I was able to keep it at 10mA and now my testing is going fine without error.

Keeping this up in case somebody has a similar issue.