Skip to content

ODrive V3.6 ​

chip:stm32, chip:stm32f4, chip:stm32f405

ODrive V3.6 is an open-source dual-motor FOC controller based on the STMicro STM32F405RG and TI DRV8301 gate drivers.

See https://odriverobotics.com/shop/odrive-v36 for further information.

For now we support only ODrive V3.6 56V.

Pin configuration ​

+----------------+----------------+----------------+----------------+ | Board Pin | Chip Function | Chip Pin | Notes | +================+================+================+================+ | GPIO_1 | | PA0 PA1 | | | GPIO_2 | | | | +----------------+----------------+----------------+----------------+ | GPIO_3 | USART2_TX | PA2 | Serial TX | +----------------+----------------+----------------+----------------+ | GPIO_4 | USART2_RX | PA3 PA4 PA5 | Serial RX | | M1_TEMP | ADC1_IN4 | PA6 PA7 PA8 | | | AUX_TEMP | ADC1_IN5 | PA9 PA10 PA11 | | | VBUS_S M1_AL | ADC1_IN6 TIM8 | PA12 PA13 PA14 | | | M0_AH M0_BH | CH1N TIM1 CH1 | PA15 | | | M0_CH USB_DM | TIM1 CH2 TIM1 | | | | USB_DP SWDIO | CH3 USB DM USB | | | | SWCLK GPIO_7 | DP | | | +----------------+----------------+----------------+----------------+ | M0_SO1 | ADC2_IN10 | PC0 | M0 current 1 | +----------------+----------------+----------------+----------------+ | M0_SO2 | ADC2_IN11 | PC1 | M0 current 2 | +----------------+----------------+----------------+----------------+ | M1_SO2 | ADC3_IN12 | PC2 | M1 current 2 | +----------------+----------------+----------------+----------------+ | M1_SO1 | ADC3_IN13 | PC3 PC4 PC5 | M1 current 1 | | GPIO_5 | | PC6 PC7 PC8 | | | M0_TEMP | ADC1_IN15 | PC9 | | | M1_AH M1_BH | TIM8 CH1 TIM8 | | | | M1_CH | CH2 TIM8 CH3 | | | | M0_ENC_Z | | | | +----------------+----------------+----------------+----------------+ | SPI_SCK | SPI3_SCK | PC10 | DRV8301 M0/M1 | +----------------+----------------+----------------+----------------+ | SPI_MISO | SPI3_MISO | PC11 | DRV8301 M0/M1 | +----------------+----------------+----------------+----------------+ | SPI_MOSI | SPI3_MOSI | PC12 | DRV8301 M0/M1 | +----------------+----------------+----------------+----------------+ | M0_NCS | SPI CS | PC13 | DRV8301 M0 CS | +----------------+----------------+----------------+----------------+ | M1_NCS | SPI CS | PC14 PC15 PB0 | DRV8301 M1 CS | | M1_ENC_Z | | PB1 PB2 PB3 | | | M1_BL M1_CL | TIM8 CH2N TIM8 | PB4 PB5 PB6 | | | GPIO_6 | CH3N | PB7 PB8 PB9 | | | GPIO_8 | | PB10 PB11 | | | M0_ENC_A | TIM3_CH1IN_2 | | | | M0_ENC_B | TIM3_CH2IN_2 | | | | M1_ENC_A | TIM4_CH1IN_1 | | | | M1_ENC_B | TIM4_CH2IN_1 | | | | CAN_R CAN_D | CAN_R CAN_D | | | | AUX_L AUX_H | | | | +----------------+----------------+----------------+----------------+ | EN_GATE | OUT TIM1 CH1N | PB12 PB13 PB14 | M0/M1 DRV8301 | | M0_AL M0_BL | TIM1 CH2N TIM1 | PB15 PD2 | | | M0_CL | CH3N | | M0/M1 DRV8301 | | N_FAULT | | | N_FAULT | +----------------+----------------+----------------+----------------+

Board hardware configuration ​


Current shunt resistance 0.0005 Current sense gain 10/20/40/80 Vbus min 12V Vbus max 24V or 56V Iout max 40A (no cooling for MOSFETs) IPHASE_RATIO 1/(R_shunt*gain) VBUS_RATIO = 1/VBUS_gain 11 or 19


Configurations ​

nsh ​

Configures the NuttShell (nsh) located at apps/examples/nsh. The Configuration enables the serial interfaces on USART2. Support for builtin applications is enabled, but in the base configuration no builtin applications are selected.

usbnsh ​

This is another NSH example. If differs from other 'nsh' configurations in that this configurations uses a USB serial device for console I/O.