Need help getting started with sensorless

I found many posts about startup procedures for sensorless mode, but whatever I try I can’t get my motor to spin.

Here is some information that should be useful:
Odrive version 3.6
Brushless motor
No changes to firmware
I can connect via odrivetool and send commands
hw_version_major = 3 (int)
fw_version_minor = 4 (int)
fw_version_revision = 10 (int)
fw_version_unreleased = 0 (int)
hw_version_minor = 6 (int)
fw_version_major = 0 (int)
hw_version_variant = 56 (int)

I supply it with 40V.
It does beep and turn the motor, if I request state AXIS_STATE_FULL_CALIBRATION_SEQUENCE, however I then get the encoder error since I do not have an encoder connected.

I tired this:
Sensorless Mode
and this:
Startup procedure sensorless
but without any success.

If you need specific information, just leave a message.
Thanks for any support.

I get the error: 0x01, which seems to indicate that I am missing a value or something isn’t calibrated but I can’t figure out what it is.

EDIT 2: now I feel dumb. I forgot to set the motor direction…

1 Like

Here is the full setup, required for my version to get it to run. Be careful tho, since this may only work for my motor. Start with low speed and acceleration values. Going too high might cause the motor to stall.

odrv0.axis0.controller.config.control_mode = 2
odrv0.axis0.requested_state =  AXIS_STATE_MOTOR_CALIBRATION
odrv0.axis0.config.lockin.vel = 2000
odrv0.axis0.config.lockin.accel = 200
odrv0.axis0.requested_state = AXIS_STATE_SENSORLESS_CONTROL

To turn off, use this:

odrv0.axis0.requested_state = 1

I found that these values have to be changed by looking through the firmware. The documentation and “getting started with sensorless” is either outdated or was always wrong.

1 Like