ODrive Pinout

  • Changes to the pin configuration only take effect after odrv0.save_configuration() and odrv0.reboot()

  • If a GPIO is set to an unsupported mode it will be left uninitialized.

  • When setting a GPIO to a special purpose mode (e.g. GpioMode.UART_A) you must also enable the corresponding feature (e.g. <odrv>.config.enable_uart_a).

  • Digital mode is a general purpose mode that can be used for these functions: step, dir, enable, encoder index, hall effect encoder, SPI encoder nCS.

  • All GPIO pins are 5V tolerant, except if you power the isolated interface with 3.3V, then ISOLATED IO inputs are rated to 3.3V nominal.

  • 5V outputs: combined draw max 600mA

User Facing Pins (Gxx)

  • Locations for all pins that can be configured using GpioMode.


The letter G and the zero padding are not used in odrivetool or the web GUI, i.e. G09 would be represented by only the number 9.

  • Inputs:

    G0-G02, G04-G09, G11-G12, G14-G16, G18

  • Outputs:

    G0, G03, G10, G13-G17


Inputs and outputs are not mutually exclusive.


  • [1] CAN_GND must be connected to DC- at a single point (system star point) when using the CAN interface. See system grounding scheme for more details.

  • [2] CAN_12V is optional and is used to power the ODrive logic, enabling communication before the main power supply is connected. Allowed voltage range: 10V-14V


  • [3] GND and 5V+ are filtered (ferrite/capacitor) from DC-.

  • THERMISTOR + has an integrated 1k ohm voltage divider.

  • A/B inputs of ENC0 and ENC1 support a frequency of up to 2.5 MHz (10M counts/s).


[4] The differential signal pin(s) GO+, G0- are located on J8 AND J14


  • ISO_GND and ISO_VDD must be connected to your other board.

  • ISO_VDD is a power Input to the isolated interface, which you should power with 3.3V or 5V.

  • Input and output levels are 3.3V if you supply 3.3V, and are 5V if you supply 5V. Inputs are not 5V tolerant if you supply 3.3V.


  • 3.3V max draw 200mA

  • see Differential Interfaces below.


[5] Pins G16 and G17 are only rated for 3.3v, they are NOT 5V tolerant.

Differential Interfaces [6]

Pins G0 [clock], G17 [select] and G18 [data] can be used for RS422 differential signals or as single ended connections if only the + side is used. This allows the ODrive Pro to support a wide variety of encoder interfaces, including SSI (RS422 or single ended), BiSS or RS422 SPI (half duplex only). For specific encoder protocols please refer to the list of supported encoders here.