Setup
- Controller: ODrive Pro
- Encoder: Aksim Absolute Encoder (BiSS-C 17bit/16bit,
spi_encoder0) - Motor: CubeMars GL100
- Encoder power supply: Supplied from ODrive Pro’s SPI connector
- Config reference: Absolute Encoder Reference Frame
Background
Configured absolute encoder per official documentation. absolute_setpoints → CLOSED_LOOP_CONTROL worked correctly for a period of time, then the issue suddenly began occurring.
Problem
When DC (24V) is applied, the SPI encoder fails to initialize:
spi_encoder0.raw = 0pos_vel_mapper.pos_abs = NaNspi_encoder0.errorkeeps incrementing- NaN persists regardless of how long I wait after DC power-up
The only workaround found: disconnect and reconnect USB once → SPI communication recovers and pos_estimate reads correctly → then applying DC power afterward allows normal motor operation.
Questions
- Is there a known issue where the SPI interface fails to initialize properly during DC-only boot on ODrive Pro?
- Is there a way to force SPI re-initialization after boot (e.g., via
odrivetoolcommand or config flag)? - Is there a recommended power-up sequence or startup delay for BiSS-C encoders powered from the SPI connector?