

Moco rd321
PMSM/BLDC motor controller/driver PCBs
- Size
- 32 × 32 mm
- Copper layers
- 4
- Thickness
- 1.6 mm
- Parts
- 95
- Nets
- 69
- Pads
- 391
- Tracks, vias
- 609, 218
- Pours
- 21
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 7 Dec 2022
- Updated
- 18 May 2024
Overview
Moco rd321 is an open-source printed circuit board by ziteh, from the ziteh/moco repository on GitHub, published under the CERN-OHL-P-2.0 licence. It is a 4-layer board of 32 × 32 mm with 95 parts on 69 nets, routed with 609 tracks and 218 vias.
It is built around the STSPIN32F0A, SIZ250DT and STPS0560Z. Its parts include 33 resistors, 29 capacitors, 8 connectors, 3 transistors and 2 ICs. It belongs with the robots and motor control boards and the STM32 boards of this library.
Main components
3STSPIN32F0A
VFQFPN-48(7x7)-40℃~+125℃@(TJ) 16 32KB 4KB 6.7V~45V ARM Cortex-M0 FLASH VFQFPN-48(7x7) Microcontrollers (MCU/MPU/SOC) ROHSSTMicroelectronicsMicrocontrollers (MCU/MPU/SOC)SIZ250DT
PowerPAIR-8(3.3x3.3)-55℃~+150℃ 11pF 12.7mΩ@10V 2 N-Channel 2.4V 210pF 21nC@10V 33W 38A 60V 840pF N-Channel PowerPAIR-8(3.3x3.3) MOSFETs ROHSVishay IntertechnologyMOSFETsSTPS0560Z
SOD-1231 Independent 5.5A 500mA 50uA@60V 530mV@500mA 60V SOD-123 Schottky Diodes ROHSSTMicroelectronicsSchottky Diodes
README
hardware/moco-rd321/readme.mdmoco-RD321
- 6.7V~35V, 12A
- 3-Phase low-side current sensing. OP-Amp Gain=6.74, Shunt resistor=20mΩ
- Overcurrent detection. Ith=30A @ OC_COMPth=500mV
- Input voltage sensing
- 32x32mm square PCB, 4xM2 mounting holes
- STSPIN32F0A 3-phase gate driver with embdded MCU SiP
- STM32F031C6 48MHz, 4KB SRAM, 32KB Flash
- 600mA sink/source gate drivers, integrated bootstrap diodes
- 12V LDO and 3.3V buck
- SiZ250DT Dual N-MOSFET, 60V, 38A, 3.3x3.3mm
- MA702 magnetic encoder, SPI
- 2x04 2.54mm Pin header for debug, JST SM03B-SRSS-TB 1x03 for Serial and I2C
Pinmap
| Description | Analog IC | STM32 | STM32 Func |
|---|---|---|---|
| High-side U | HS1 | PA8 | TIM1_CH1 |
| High-side V | HS2 | PA9 | TIM1_CH2 |
| High-side W | HS3 | PA10 | TIM1_CH3 |
| Low-side U | LS1 | PB13 | TIM1_CH1N |
| Low-side V | LS2 | PB14 | TIM1_CH2N |
| Low-side W | LS3 | PB15 | TIM1_CH3N |
| OC threshold select 1 | OC_TH_STBY1 | PF7 | Push-pull output |
| OC threshold select 2 | OC_TH_STBY2 | PF6 | Push-pull output |
| OC protection selection | OC_SEL | PA11 | Push-pull output |
| OC comparator output | OC_COMP_INT | PB12 | TIM1_BKIN |
| OC comparator output | OC_COMP_INT2 | PA12 | TIM1_ETR |
| Current sense U | OP3O | PA0 | ADC_IN0 |
| Current sense V | OP2O | PA1 | ADC_IN1 |
| Current sense W | OP1O | PB1 | ADC_IN9 |
| VM sense | -- | PA4 | ADC_IN4 |
| SPI SCLK | -- | PA5 | SPI1 |
| SPI MISO | -- | PA6 | SPI1 |
| SPI MOSI | -- | PA7 | SPI1 |
| SPI nCS MA702 | -- | PA15 | |
| USART Tx | -- | PA2 | USART1 |
| USART Rx | -- | PA3 | USART1 |
| I2C SCL | -- | PB6 | I2C1 |
| I2C SDA | -- | PB7 | I2C1 |
| SWDIO | -- | PA13 | |
| SWCLK | -- | PA14 | |
| Connected to GND | -- | BOOT0 | |
| User LED (Red) | -- | PF0 | Active HIGH |
| 12V indicator LED (Blue) | -- | -- |
- Unused GPIOs inside the package should be config to output low: PB0, PB2, PB3, PB4, PB5, PB8, PB9, PB10, PB11, PC13, PC14, PC15.
- OC_TH_STBY1 and OC_TH_STBY2 should be HIGH for 500mV OC threshold.
- For analog IC, the GPIO input config without pull-up or -down is always allowed.
PCB
Jumper
If input voltage (i.e. VM)<15V then close SB1 to connect VM pin and VREG12 pin.
Board Characteristics
- Copper layer count: 4
- Board overall dimensions: 32 x 32 mm
- Min track/spacing: 0.13 mm / 0.13 mm
- Min hole diameter: 0.3 mm
- Castellated pads: No
- Edge card connectors: No
- Plated board edge: No
- 1oz copper
SPI
MA702 encoder SPI:
- Mode:
- 0 (CPOL=0, CPHA=0) or 1 (CPOL=1, CPHA=1)
- Data sampled on first edge
- 16-bit data frame
- MSB first
- nCS pin active low
- 25MHz clock
MCU
| STSPIN32x | F0 | F0A | F0B |
|---|---|---|---|
| Operating voltage | 8~45V | 6.7~45V | 6.7~45V |
| OP-Amps | 4 | 3 | 1 |
| GPIOs | 15 | 16 | 20 |
| BOOT0 pin | -- | Yes | Yes |
| 3FG decoding logic for Hall sensors | Yes | -- | -- |
| Comparator | OCP | OCP and current control | OCP and current control |
| Package | QFN 7x7mm 1EP | QFN 7x7mm 1EP | QFN 7x7mm 1EP |
Solved: STSPIN32F0 vs STSPIN32F0A vs STSPIN32F0B - STMicroelectronics Community
Reference
- qwertpas/O32controller: Miniature closed-loop controller for brushless DC motors
- STspin32G4 support - hardware support - SimpleFOC Community
- ST AN5397 "Current Sensing in motion control applications"
- ST AN4999 "STSPIN32F0/F0A/F0B overcurrent protection"
- ST DB3364 "STEVAL-SPIN3202: STSPIN32F0A advanced 3-phase BLDC driver with embedded STM32 MCU single shunt evaluation board"
- ST DB4049 "EVALKIT-ROBOT-1: Compact reference design kit for robotics and automation based on STSPIN32F0A"
- ST DB3798 "STEVAL-ESC002V1: Electronic Speed Controller reference design based on STSPIN32F0A"
- TI SLUA887 "Bootstrap Circuitry Selection for Half-Bridge Configurations"
- Diodes DN1156 "Gate Drivers in BLDC Motors"
Parts
95| Qty | Value | Footprint | References |
|---|---|---|---|
| 14 | 10uF/50V | Capacitor_SMD:C_0805_2012Metric | C3, C7, C16, C17, C18, C19, C20, C21, C22, C23, C24, C26, C27, C28 |
| 7 | NetTie_2 | NetTie:NetTie-2_SMD_Pad0.5mm | NT1, NT2, NT3, NT4, NT5, NT6, NT7 |
| 6 | 1.78k | Resistor_SMD:R_0402_1005Metric | R12, R13, R18, R19, R28, R32 |
| 6 | 10R | Resistor_SMD:R_0402_1005Metric | R6, R7, R8, R9, R22, R25 |
| 6 | 24k | Resistor_SMD:R_0402_1005Metric | R10, R11, R15, R17, R27, R31 |
| 4 | 100nF | Capacitor_SMD:C_0402_1005Metric | C4, C5, C6, C8 |
| 4 | 220nF/50V | Capacitor_SMD:C_0805_2012Metric | C2, C9, C10, C13 |
| 4 | MountingHole | MountingHole:MountingHole_2.2mm_M2_ISO14580 | H1, H2, H3, H4 |
| 3 | 100nF/50V | Capacitor_SMD:C_0402_1005Metric | C11, C12, C14 |
| 3 | 12k | Resistor_SMD:R_0402_1005Metric | R20, R21, R33 |
| 3 | 2.2k | Resistor_SMD:R_0402_1005Metric | R23, R26, R29 |
| 3 | 20mΩ/3W | Resistor_SMD:R_2512_6332Metric | R14, R16, R30 |
| 3 | SiZ250DT | moco:PowerPAIR_3x3S_TP | Q1, Q2, Q3 |
| 2 | 10k | Resistor_SMD:R_0402_1005Metric | R1, R5 |
| 2 | 1k | Resistor_SMD:R_0402_1005Metric | R3, R4 |
| 1 | 100k | Resistor_SMD:R_0402_1005Metric | R2 |
| 1 | 12V | TestPoint:TestPoint_Pad_D1.0mm | TP2 |
| 1 | 1nF | Capacitor_SMD:C_0402_1005Metric | C15 |
| 1 | 1uF | Capacitor_SMD:C_0402_1005Metric | C29 |
| 1 | 22uF/50V | Capacitor_SMD:CP_Elec_5x5.8 | C25 |
| 1 | 22uH | Inductor_SMD:L_Taiyo-Yuden_MD-3030 | L1 |
| 1 | 3.3V | TestPoint:TestPoint_Pad_D1.0mm | TP1 |
| 1 | 47uF | Capacitor_SMD:C_0805_2012Metric | C1 |
| 1 | 6.8k | Resistor_SMD:R_0402_1005Metric | R24 |
| 1 | Blue | LED_SMD:LED_0603_1608Metric | LD2 |
| 1 | Debug | Connector_PinHeader_2.54mm:PinHeader_2x04_P2.54mm_Vertical | J1 |
| 1 | GND | TestPoint:TestPoint_Pad_D1.0mm | TP3 |
| 1 | I^{2}C | Connector_JST:JST_SH_SM03B-SRSS-TB_1x03-1MP_P1.00mm_Horizontal | J3 |
| 1 | MA702 | Package_DFN_QFN:QFN-16-1EP_3x3mm_P0.5mm_EP1.75x1.75mm | U2 |
| 1 | RESET | Button_Switch_SMD:SW_SPST_EVQP7C | SW1 |
| 1 | Red | LED_SMD:LED_0603_1608Metric | LD1 |
| 1 | STPS0560Z | Diode_SMD:D_SOD-123F | D1 |
| 1 | STSPIN32F0A | moco:VFQFN-48_7x7_EP2.8mm_Pitch0.5mm | U1 |
| 1 | Serial | Connector_JST:JST_SH_SM03B-SRSS-TB_1x03-1MP_P1.00mm_Horizontal | J2 |
| 1 | SolderJumper_2_Open | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | SB1 |
| 1 | U | moco:wire_2.2mm | J6 |
| 1 | V | moco:wire_2.2mm | J7 |
| 1 | V+ | moco:wire_2.2mm_rectagnel | J4 |
| 1 | V- | moco:wire_2.2mm | J5 |
| 1 | W | moco:wire_2.2mm | J8 |
Questions
How big is the Moco rd321 PCB?
It measures 32 × 32 mm and has 4 copper layers, 1.6 mm thick.
What parts does the Moco rd321 use?
95 parts, built around the STSPIN32F0A, SIZ250DT and STPS0560Z. 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.
Where can I download the Moco rd321 KiCad files?
From the ziteh/moco repository on GitHub, at the commit this page was made from: the board is hardware/moco-rd321/moco-rd321.kicad_pcb and its schematic hardware/moco-bkd8316/moco-bkd8316.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Moco rd321 design in my own project?
Its repository publishes it under the CERN-OHL-P-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
More from ziteh/moco
5- 4 layers

- 4 layers40 × 40 mm

- 4 layers

- 2 layers

- 2 layers35.5 × 41 mm

Similar boards
- 4 layers58 × 86 mm

Duet3 Exp 1HCL
Duet3D/Duet3-Expansion-1HCL
Hardware information for the Duet 3 Expansion 1HCL
224 parts5 - 4 layers90 × 80 mm

- 4 layers32.3 × 47.3 mm

- 4 layers44 × 43.5 mm

Esc4in1
Swamy-BV/kicad-flow
Build KiCad schematics and PCBs through MCP. Small, composable tools handle file formats and geometry; the caller controls placement, wiring, and routing.
87 partsAGPL-3.0 - 4 layers27 × 27 mm

O32controller
qwertpas/O32controller
Miniature closed-loop controller for brushless DC motors
88 parts37MIT - 4 layers31 × 40 mm

EasyBLDCV4 STSPIN32F0A
buckles3636/EasyBLDC
Please ensure your designs meet common standards and include necessary documentation and comments.
58 parts2MIT - 2 layers42 × 23 mm

- 2 layers191.3 × 181.7 mm

IO Card G3
PerMalmberg/IO-Card-G3
This is my custom I/O card, third generation. Main purpose is to serve as an alarm system.
400 parts7MIT