
MotorControllerPowerBoard
HEEV/motor-controller-2018
Sam Ellicott's and Isaac Jones's motor controller senior design project. Fall 2018-Spring 2019

Sam Ellicott's and Isaac Jones's motor controller senior design project. Fall 2018-Spring 2019
Motor controller hw is an open-source printed circuit board by HEEV, from the HEEV/motor-controller-2018 repository on GitHub. It is a 4-layer board of 99.7 × 85.1 mm with 179 parts on 192 nets, routed with 1,989 tracks and 192 vias.
It is built around the 74HC7014D, MCP2562-H/P and MCP6004-E/P, with the TMC4671-LA and AP7361C-33E among its other parts. Its parts include 56 capacitors, 43 resistors, 15 connectors, 10 ICs and 8 diodes. It belongs with the robots and motor control boards and the STM32 boards of this library.
You are in the hardware portion of the project, this contains the Kicad design files for the project and the schematics in PDF form. If you are looking for the software it is in the motor controller 2018 sw github repository.
This project’s goal is to provide the Cedarville University Supermileage team with a high-efficiency electric motor controller for use in any category of vehicle. The controller should be simple enough to use that a competent freshman or sophomore engineer on the team could set it up.
The controller is operated either by an analog throttle input or by the CAN interface exposed by the controller. Hopefully this makes the controler simple to use, but still capable of clever efficiency optimizations with some wizardry.
The Cedarville supermileage team competes in the Shell Eco-Marathon so the design must fit within the contstraints of their rules (at the time of this writting, 2019). This leads to the following constraints
Therefore the controller was designed to fit these requirements and a new driver stage would need to be designed if these limits were exceeded.
Even though I have graduated I am still more than willing to answer questions about this project :-)
-Sam EllicottOverall, the project is organized into two gitub repositories. This one, devoted to the motor controller hardware (motor controller 2018) and the other one (motor controller 2018 sw) devoted to the motor controller software.
The actual hardware of the project is split into three PCBs (and three corresponding Kcad projects)
The hardware repository is split between three Kicad projects.
The schematic files and PDF's of the PCB layout can be found in the pdf directory.
For this project we used either Kicad version 5.0.1 or 5.0.2 (I cannot really remember), but it will probably work with any version of Kicad > 5.0.0
| Qty | Value | Footprint | References |
|---|---|---|---|
| 29 | 100n | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C102, C201, C204, C205, C206, C207, C208, C209, C210, C211, C301, C302, C303, C304, C305, C311 +13 |
| 16 | TestPoint | TestPoint:TestPoint_Pad_D1.0mm | TP403, TP404, TP405, TP406, TP407, TP408, TP409, TP410, TP411, TP412, TP413, TP414, TP415, TP416, TP417, TP418 |
| 11 | 10K | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R101, R102, R220, R301, R401, R402, R403, R404, R405, R408, R409 |
| 10 | 100R | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R207, R208, R209, R213, R214, R215, R304, R305, R406, R407 |
| 7 | 4K7 | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R210, R211, R212, R217, R218, R219, R303 |
| 7 | 4u7 | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C101, C104, C105, C214, C306, C411, C416 |
| 6 | 100p | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C215, C216, C217, C218, C219, C220 |
| 5 | 10n | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C308, C417, C418, C419, C420 |
| 5 | 2K | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R201, R202, R203, R204, R205 |
| 4 | 1u | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C202, C212, C213, C307 |
| 4 | 50mA PTC | Fuse:Fuse_0603_1608Metric_Pad1.05x0.95mm_HandSolder | F101, F102, F103, F105 |
| 3 | 330R | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R302, R306, R307 |
| 3 | MCP6004 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U201, U202, U203 |
| 2 | 27pf | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C309, C310 |
| 2 | 74HC7014 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U204, U205 |
| 2 | GND_TP | Connector_PinHeader_2.54mm:PinHeader_1x01_P2.54mm_Vertical | TP104, TP105 |
| 2 | LOGO | supermileage_footprints:shell-logo | G***, G*** |
| 1 | 10K | Resistors_SMD:R_0805_HandSoldering | R103 |
| 1 | 110K | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R410 |
| 1 | 120R | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R216 |
| 1 | 120mA PTC | Fuse:Fuse_0603_1608Metric_Pad1.05x0.95mm_HandSolder | F104 |
| 1 | 150n | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C203 |
| 1 | 15V Zener | Diode_SMD:D_SOD-123F | D101 |
| 1 | 1K | Resistors_SMD:R_0805_HandSoldering | R104 |
| 1 | 1K5 | Resistor_SMD:R_0805_2012Metric | R308 |
| 1 | 3.3V | LEDs:LED_0603_HandSoldering | D105 |
| 1 | 330R | Resistors_SMD:R_0805_HandSoldering | R105 |
| 1 | 33u | Capacitor_THT:CP_Radial_D8.0mm_P3.50mm | C103 |
| 1 | 3K9 | Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder | R206 |
| 1 | 3v3_TP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | TP103 |
| 1 | 470n | Capacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolder | C410 |
| 1 | 5V | LEDs:LED_0603_HandSoldering | D104 |
| 1 | 5v JP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | JP101 |
| 1 | 5v_TP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | TP102 |
| 1 | 8Mhz | Crystal:Crystal_SMD_HC49-SD_HandSoldering | Y301 |
| 1 | ABN Encoder | Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_Vertical | J109 |
| 1 | AP7361C-33 | Package_TO_SOT_SMD:SOT-223 | U101 |
| 1 | A_I_TP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | TP419 |
| 1 | A_Ref | Pin_Headers:Pin_Header_Straight_1x01_Pitch2.54mm | TP402 |
| 1 | B_I_TP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | TP420 |
| 1 | B_Ref | Pin_Headers:Pin_Header_Straight_1x01_Pitch2.54mm | TP401 |
| 1 | Batt_I_TP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | TP422 |
| 1 | Batt_TP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | TP101 |
| 1 | Batt_V_TP | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | TP421 |
| 1 | Boot | supermileage_footprints:SW_SPST_FSMSM | SW302 |
| 1 | CAN | supermileage_footprints:Molex-duraClick-4conn | J101 |
| 1 | CAN Term | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | JP201 |
| 1 | CAN_DBG | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J108 |
| 1 | CAN_Status | LED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D301 |
| 1 | D36V6F5 | supermileage_footprints:D36V6Fx | U102 |
| 1 | D_USB | Diode_SMD:D_SOD-123F | D102 |
| 1 | Extra IO | supermileage_footprints:Molex-UltraFit-14p-vert | J106 |
| 1 | Hall Sensors | supermileage_footprints:MICRO_JST_6 | J107 |
| 1 | Heartbeat | LED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D302 |
| 1 | IQXO-50 | supermileage_footprints:Clock-FOX924 | X401 |
| 1 | LOGO | supermileage_footprints:cedarville-logo | G*** |
| 1 | Motor T | supermileage_footprints:Molex-duraClick-2conn | J103 |
| 1 | Q_PMOS_GDS | Package_TO_SOT_SMD:TO-252-3_TabPin2 | Q101 |
| 1 | Reset | supermileage_footprints:SW_SPST_FSMSM | SW301 |
| 1 | SPI_DBG | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J110 |
| 1 | STM32F303RETx | Package_QFP:LQFP-64_10x10mm_P0.5mm | U301 |
| 1 | SWD | Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_Vertical | J301 |
| 1 | TMC4671 | supermileage_footprints:QFN76P | U401 |
| 1 | TMC4671 USART | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J402 |
| 1 | Throttle | supermileage_footprints:Molex-duraClick-4conn | J102 |
| 1 | Tran T | supermileage_footprints:Molex-duraClick-2conn | J104 |
| 1 | Trinamic-Bridge | Connector_PinSocket_2.54mm:PinSocket_2x22_P2.54mm_Vertical | J111 |
| 1 | Trinamic_TRMI | supermileage_footprints:DF20F-10DP-1V(56) | J401 |
| 1 | USB_B_Micro | supermileage_footprints:USB_Micro-B | J105 |
| 1 | User USART | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J302 |
| 1 | User_LED | LED_SMD:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D303 |
| 1 | User_SW | supermileage_footprints:SW_SPST_FSMSM | SW303 |
| 1 | Vin | LEDs:LED_0603_HandSoldering | D103 |
| 1 | mcp2562 | Package_SO:SOIC-8_3.9x4.9mm_P1.27mm | U206 |
The 175 most common of 179 parts.

HEEV/motor-controller-2018
Sam Ellicott's and Isaac Jones's motor controller senior design project. Fall 2018-Spring 2019

HEEV/motor-controller-2018
Sam Ellicott's and Isaac Jones's motor controller senior design project. Fall 2018-Spring 2019

virtual-fly/VF_MOTOR_DRIVER
VF_Motor_Driver is an open hardware power distribution board, designed to be part of a larger modular system. This design is based in part on the OpenFFBoard TMC4671 driver board, licensed under the GNU General Public…

bastian-bou/NixieNTPClock
Nixie clock around ESP32 connected to a NTP server

YaseenTwati/ThunderMini
A modular, stackable brushless motor driver platform based on the TMC6200, TMC4671, and STM32G473.

pollen-robotics/elec_Poulpe_3d
Tripple Motor Control Board for Reachy 2


pollen-robotics/elec_Poulpe_2d
Dual Motor Control Board for Reachy 2

xunil/bmchimes
Controller firmware for ESP8266 modules for Burning Man chimes project.

It measures 99.7 × 85.1 mm and has 4 copper layers, 1.6 mm thick.
179 parts, built around the 74HC7014D, MCP2562-H/P, MCP6004-E/P and TMC4671-LA. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the HEEV/motor-controller-2018 repository on GitHub, at the commit this page was made from: the board is motor-controller-hw/motor-controller-hw.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask HEEV before reusing the design.