Help needed for changed shunts [solved]


hi all,
i have changed the shunts on the odrive and compiled the firmware accordingly with

#define SHUNT_RESISTANCE (25e-3f)

in board_config_v3.h

upgrading the firmware via odrive dfu worked, but now i’m stuck with a strange behavior.

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.
requesting position information from the encoder, turning it by hand, it seems to work as intended. electrically, the levels seem to be fine.
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.

motor config is the following:

pre_calibrated = False (bool)
pole_pairs = 8 (int)
calibration_current = 1.0 (float)
resistance_calib_max_voltage = 12.0 (float)
phase_inductance = 2.4384202333749272e-05 (float)
phase_resistance = 0.027118826285004616 (float)
direction = 1 (int)
motor_type = 0 (int)
current_lim = 4.400000095367432 (float)
requested_current_range = 10.0 (float)
current_control_bandwidth = 1000.0 (float)

from the datasheet, the motor should have a phase resistance of 1.5 Ohms and an inductance of 2 mH.

when I set the requested mode to AXIS_STATE_SENSORLESS_CONTROL, the motor starts spinning, but errors after a few turns with ERROR_CURRENT_SENSE_SATURATION.
this does not bother me that much currently, but the fact that the calibration does not work is causing me headache since the motor would be able to turn driven by the odrive.

any hints are highly appreciated.


i found the issue.
the firmware upgrade to the custom firmware did not work as intended. so the odrive tried to deal with the different shunts on the stock firmware.

disregard this post.