Getting Started: Odrive S1 not working

I have a MAXON Motor and encoder that I am trying to run with the Odrive S1. I was able to get the webgui to work once but now that everything is connected when i get to the calibrate step of the setup sequence, the motor rings and then moves but it fails and I get this error “Procedure error NO_RESPONSE. See status bar below for details.” For reference, this is the motor and encoder I have

. Here is the error page I get:

{
“serial_number”: “001d6bd08c96”,
“fw_version”: “0.6.11”,
“commit_hash”: 3016019781,
“product”: “5.2.0”,
“active_errors”: 0,
“active_errors_str”: “NONE”,
“disarm_reason”: 0,
“disarm_reason_str”: “NONE”,
“procedure_result”: 4,
“procedure_result_str”: “NO_RESPONSE”,
“last_drv_fault”: 0,
“internal_issues”: 0
}
I have double checked the connections and everything seems fine. I have tried to run it with no encoders connected and with it connected. When I connect the encoder then the Odrive disconnects in the web gui. How can I fix this issue?

When I connect the encoder then the Odrive disconnects in the web gui. How can I fix this issue?

This sounds like maybe there’s a wiring issue that’s shorting out the S1? Would you mind sending some pictures of your wiring? The more the better, especially how the wires are connected to the S1 and the encoder.

If you can also show your config, that would be really helpful! You can just click this dropdown and copy+paste here

Sure thing.

Here is the config.

odrv = odrv0
odrv.config.dc_bus_overvoltage_trip_level = 32
odrv.config.dc_bus_undervoltage_trip_level = 19
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 = 1
odrv.axis0.config.motor.torque_constant = 0.00337000814995925
odrv.axis0.config.motor.current_soft_max = 5.03
odrv.axis0.config.motor.current_hard_max = 16.539
odrv.axis0.config.motor.calibration_current = 0.5
odrv.axis0.config.motor.resistance_calib_max_voltage = 2
odrv.axis0.config.calibration_lockin.current = 1
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 = 40
odrv.axis0.controller.config.vel_limit_tolerance = 1.25
odrv.axis0.config.torque_soft_min = -math.inf
odrv.axis0.config.torque_soft_max = math.inf
odrv.axis0.trap_traj.config.accel_limit = 93
odrv.axis0.controller.config.vel_ramp_rate = 93
odrv.can.config.protocol = Protocol.NONE
odrv.axis0.config.enable_watchdog = False
odrv.inc_encoder0.config.enabled = True
odrv.axis0.config.load_encoder = EncoderId.INC_ENCODER0
odrv.axis0.config.commutation_encoder = EncoderId.INC_ENCODER0
odrv.inc_encoder0.config.cpr = 4096
odrv.axis0.commutation_mapper.config.use_index_gpio = False
odrv.axis0.pos_vel_mapper.config.use_index_gpio = False
odrv.config.enable_uart_a = False

Here is the wiring:

. This is when power isn’t connected to the encoder.


When power is connected, i get this screen:

I am new to learning Odrives so I am not sure what the issue really is. Any help is appreciated. Thank you.