![]() |
KiCADKicad
|
Jabdrive - A Compact Brushless Motor Controller for Robotics
A board designed for the FOC-based control of brushless DC motor at a low-cost. Performs similar functions as a typical Odrive controller at a lower cost, through using a more cost-efficient microcontroller and rotary sensor. Ultimately designed for integration into a dynamic, torque-controlled robot prototype.
Clark and Park transforms as used for field-oriented control are mathematical transformations that convert the three phase currents into a rotating two-axis system (direct and quadrature). The d-axis aligns with the rotor’s magnetic field while the q-axis is perpendicular to the d-axis and is responsible for producing torque.
With traditional, trapezoidal control the phases are switched in a discrete way, but FOC continuously regulates the phase currents in the d-q frame, allowing for the independent control of torque.
To implement FOC-based control of the brushless motor, a motor controller board was developed with the priority of compactness. The primary components of the board include:
- Gate Driver IC: A three-phase smart gate driver (the DRV8323RS) from Texas Instruments is used for driving high-side and low-side N-channel MOSFETs, which in turn control the three phases of the motor. The gate driver receives control signals from the microcontroller via PWM and amplifies them and is also connected via SPI for configuring the gate driver.
- MOSFETs: Three high-side and three low-side N-channel MOSFETs are used for controlling power to the three phases.
- Current Sense Resistors: A current sensing resistor is used on each phase.
- Microcontroller: An ESP32 WROOM-32E module was selected primarily for its wireless communication capabilities (i.e. ESP-NOW protocol) circumventing the need for a wired communication system an additional point of failure. The ESP32’s Motor Control PWM peripheral is mapped to three GPIO pins, which are then connected to the gate driver. However, it should be noted that using the 32UE module over the 32E module requires an external antenna for wireless communication functionality.
- Magnetic sensor: A magnetic rotary sensor is on the rear of the board with the capability of detecting the absolute angular position of a permanent magnet and is connected to the microcontroller via SPI. A magnet mounted on a motor shaft can provide measurements for the sensor and incorporate the motor’s position into FOC algorithm calculations.
- CAN communication: A CAN transceiver provides the option to communicate with the microcontroller over a CAN 2.0 network using the ESP32's "TWAI" interface. This provides a robust alternative to wireless communication protocols.
As someone who's budget-constrained, I wanted to strike a balance of originality and experimentation while also being financially wise. Hence, I heavily based my layout on other boards, particularly Ben Katz's MIT mini cheetah board and Josh Pieper's moteus series of boards. Those designs informed my general component choice and placement.
Jabdrive - A Compact Brushless Motor Controller for Robotics
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.

Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW
ESP32-S3 4.3inch Capacitive Touch Display Development Board, 800×480, 5-point Touch, 32-bit LX7 Dual-core Processor
BUY NOW
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(0)
- Likes(0)

- 0 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
More by Joel Abu
-
-
Commodore 64 1541-II 1581 Floppy Disk Drive C64 Power Supply Unit USB-C 5V 12V DIN connector 5.25
219 1 3 -
Easy to print simple stacking organizer with drawers
97 0 0 -
-
-
-
-
-
-
Modifying a Hotplate to a Reflow Solder Station
1176 1 6 -
MPL3115A2 Barometric Pressure, Altitude, and Temperature Sensor
661 0 1 -