UNBALANCED_PHASES

Hi, I’m using the ODrive S1 updated to 0.6.11

I’ve attached a Flipsky BLDC Motor (6374 190KV) via the euroblocks. There are no other connections.

When I attempt to run the calibration I get UNBALANCED_PHASES

I have two Flipsky motors and two ODrive S1. The same error appears regardless of which combination I use. I’ve done all the basics: reconfigured, checked my connections, removed any possible impediments to motion.

But nothing changes the error. Please advise.

Here is my configuration code:

odrv = odrv0
odrv.config.dc_bus_overvoltage_trip_level = 50
odrv.config.dc_bus_undervoltage_trip_level = 10.5
odrv.config.dc_max_positive_current = math.inf
odrv.config.dc_max_negative_current = -math.inf
odrv.config.brake_resistor0.enable = False
odrv.axis0.config.motor.motor_type = MotorType.HIGH_CURRENT
odrv.axis0.config.motor.pole_pairs = 7
odrv.axis0.config.motor.torque_constant = 0.05513333333333333
odrv.axis0.config.motor.current_soft_max = 70
odrv.axis0.config.motor.current_hard_max = 90
odrv.axis0.config.motor.calibration_current = 5
odrv.axis0.config.motor.resistance_calib_max_voltage = 1
odrv.axis0.config.calibration_lockin.current = 5
odrv.axis0.motor.motor_thermistor.config.enabled = False
odrv.axis0.controller.config.control_mode = ControlMode.VELOCITY_CONTROL
odrv.axis0.controller.config.input_mode = InputMode.VEL_RAMP
odrv.axis0.controller.config.vel_limit = 10
odrv.axis0.controller.config.vel_limit_tolerance = 1.2
odrv.axis0.config.torque_soft_min = -math.inf
odrv.axis0.config.torque_soft_max = math.inf
odrv.axis0.trap_traj.config.accel_limit = 10
odrv.axis0.controller.config.vel_ramp_rate = 10
odrv.can.config.protocol = Protocol.NONE
odrv.axis0.config.enable_watchdog = False
odrv.axis0.config.load_encoder = EncoderId.RS485_ENCODER0
odrv.axis0.config.commutation_encoder = EncoderId.RS485_ENCODER0
odrv.rs485_encoder_group0.config.mode = Rs485EncoderMode.ODRIVE_OA1
odrv.config.enable_uart_a = False

Hi - believe I responded to this on the Discord. I’ll paste the reply below for posterity:

  • Bump your calibration current up, maybe 30A. That’s a super low resistance motor, so you can get spurious unbalanced_phases errors w/ low calibration current
  • You’ll also want to bump your calibration lock-in current too, maybe around 30A too. That’ll get you a more accurate encoder calibration
  • You may have to bump calibration voltage too, of course - maybe 2-3V

https://docs.odriverobotics.com/v/latest/articles/motor-parameters.html