ODrive Documentation

High performance motor control

View the Project on GitHub odriverobotics/ODrive

Help improve these docs: submit edits using the link in the top right.

If you need help, please search or ask the ODrive Community.

Pinout

ODrive v4.1

TODO

ODrive v3.x

# Label GPIO_MODE_DIGITAL GPIO_MODE_ANALOG_IN GPIO_MODE_UART_A GPIO_MODE_UART_B GPIO_MODE_PWM GPIO_MODE_CAN_A GPIO_MODE_I2C_A GPIO_MODE_ENC0 GPIO_MODE_ENC1 GPIO_MODE_MECH_BRAKE
0 not a pin                    
1 GPIO1 (+) general purpose analog input UART_A.TX   PWM0.0         mechanical brake
2 GPIO2 (+) general purpose analog input UART_A.RX   PWM0.1         mechanical brake
3 GPIO3 general purpose analog input   UART_B.TX PWM0.2         mechanical brake
4 GPIO4 general purpose analog input   UART_B.RX PWM0.3         mechanical brake
5 GPIO5 general purpose analog input (*)               mechanical brake
6 GPIO6 (*) (+) general purpose                 mechanical brake
7 GPIO7 (*) (+) general purpose                 mechanical brake
8 GPIO8 (*) (+) general purpose                 mechanical brake
9 M0.A general purpose             ENC0.A    
10 M0.B general purpose             ENC0.B    
11 M0.Z general purpose                  
12 M1.A general purpose           I2C.SCL   ENC1.A  
13 M1.B general purpose           I2C.SDA   ENC1.B  
14 M1.Z general purpose                  
15 not exposed general purpose         CAN_A.RX I2C.SCL      
16 not exposed general purpose         CAN_A.TX I2C.SDA      

(*) ODrive v3.5 and later
(+) On ODrive v3.5 and later these pins have noise suppression filters. This is useful for step/dir input.

Notes