Hi, I’m trying to config a motor and encoder using the web gui.
I keep getting a “MISSING_ESTIMATE” error.
I can see the encoder feedback in the dashboard- when I spin the encoder manually.
What could be the issue?
firmware version is 6.9.0
odrive pro
Hi! Which encoder and motor is this? If possible, can you post some pictures of the motor and encoder wiring and mounting?
Can you show how the encoder and motor are both mounted and wired?
The wiring is a bit hard to view, but I’ve tested the encoder feedback. (The error occurs before the motor moved, during the configuration)
the mounting -
Hmm, looks generally fine. Can you share your configuration in the GUI?
This is the python output from the GUI, I believe is summarize the configuration:
odrv = odrv0
odrv.config.dc_bus_overvoltage_trip_level = 30
odrv.config.dc_bus_undervoltage_trip_level = 12
odrv.config.dc_max_positive_current = 19
odrv.config.dc_max_negative_current = -0.01
odrv.axis0.config.motor.motor_type = MotorType.HIGH_CURRENT
odrv.axis0.config.motor.torque_constant = 0.103375
odrv.axis0.config.motor.pole_pairs = 21
odrv.axis0.config.motor.current_soft_max = 19
odrv.axis0.config.motor.current_hard_max = 34.7
odrv.axis0.config.motor.calibration_current = 9.5
odrv.axis0.config.motor.resistance_calib_max_voltage = 12
odrv.axis0.config.calibration_lockin.current = 3.5
odrv.axis0.controller.config.control_mode = ControlMode.VELOCITY_CONTROL
odrv.axis0.controller.config.input_mode = InputMode.VEL_RAMP
odrv.axis0.config.torque_soft_min = -0.392825
odrv.axis0.config.torque_soft_max = 0.392825
odrv.axis0.config.can.node_id = 0
odrv.axis0.config.can.encoder_msg_rate_ms = 10
odrv.axis0.config.can.iq_msg_rate_ms = 10
odrv.axis0.config.can.torques_msg_rate_ms = 10
odrv.axis0.config.can.error_msg_rate_ms = 10
odrv.axis0.config.can.temperature_msg_rate_ms = 10
odrv.axis0.config.can.bus_voltage_msg_rate_ms = 10
odrv.can.config.protocol = Protocol.SIMPLE
odrv.config.enable_uart_a = False
odrv.inc_encoder0.config.cpr = 1024
odrv.inc_encoder0.config.enabled = True
odrv.config.gpio7_mode = GpioMode.DIGITAL
odrv.axis0.commutation_mapper.config.use_index_gpio = True
odrv.axis0.commutation_mapper.config.index_gpio = 7
odrv.axis0.pos_vel_mapper.config.use_index_gpio = True
odrv.axis0.pos_vel_mapper.config.index_gpio = 7
odrv.axis0.pos_vel_mapper.config.index_offset = 0
odrv.axis0.pos_vel_mapper.config.index_offset_valid = True
odrv.axis0.config.load_encoder = EncoderId.INC_ENCODER0
odrv.axis0.config.commutation_encoder = EncoderId.INC_ENCODER0
You’ve selected to use an index pin, however your encoder doesn’t have an index pin, and none is connected in the wiring you sent an image of. Can you try disabling the index pin and calibrating again?
my encoder has an index Z. but even when I disable the index pin, I still get the “MISSING_ESTIMATE” error, and it doesnt let me calibrate.
any other idea maybe?
Hmm, okay. I’m starting to wonder if this is somehow a defective device that still managed to pass factory testing – maybe damage in shipping. What was your original order number?