Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

🔌 Dual H-Bridge BLDC Motor Driver — LibrePCB

A dual-channel brushless DC motor driver PCB designed in LibrePCB, featuring DRV8870 H-bridge ICs with integrated current sensing, overcurrent protection, and thermal management. Designed for robotics and CNC applications requiring precise motor control.

LibrePCB Status License


Motor Driver PCB 3D Render


📋 Specifications

Parameter Value
Motor Driver IC DRV8870DDAR (×2)
Supply Voltage 6.5V – 45V
Continuous Current 3.6A per channel
Peak Current 6A (500ms)
PWM Frequency Up to 200 kHz
Current Sensing 0.1Ω shunt + INA181 (×2)
Protection UVLO, OCP, thermal shutdown
MCU Interface PWM + DIR + nFAULT per channel
PCB 2-layer, 1.6mm FR4, 2oz copper, HASL
Dimensions 55mm × 40mm

🏗️ Project Structure

├── project/
│   ├── motor-driver.lpp                     # LibrePCB project file
│   ├── motor-driver.lppz                    # Archived project (portable)
│   ├── schematic/
│   │   ├── motor-driver.lp                  # Main schematic
│   │   └── sheets/
│   │       ├── power-input.lp               # Power stage + protection
│   │       ├── h-bridge-ch1.lp              # Channel 1 H-bridge
│   │       ├── h-bridge-ch2.lp              # Channel 2 H-bridge
│   │       └── current-sense.lp             # Current monitoring
│   ├── board/
│   │   ├── motor-driver.lp                  # PCB layout
│   │   └── design-rules.lp                  # Manufacturing constraints
│   └── library/
│       ├── DRV8870DDAR.lplib                # Custom component library
│       ├── INA181A1.lplib                   # Current sense amplifier
│       └── TVS_SMBJ45A.lplib               # TVS diode for motor transients
├── docs/
│   ├── design-notes.md                      # Design rationale
│   ├── thermal-analysis.md                  # Thermal calculations
│   ├── BOM.csv                              # Bill of materials
│   └── test-procedure.md                    # Bench test protocol
└── README.md

⚡ Design Highlights

Power Stage

  • Input protection: SMBJ45A TVS diode (45V standoff, 72.5V clamping)
  • Bulk decoupling: 4× 10µF/50V MLCC + 100µF/50V aluminum polymer
  • Reverse polarity: P-channel MOSFET (Si2301) on high side
  • Power indicator: LED with 1.5kΩ series resistor

H-Bridge (per channel)

  • DRV8870: Integrated N+P FET bridge, 3.6A continuous
  • Control: IN1/IN2 for H-bridge direction, VREF for current limit
  • Bootstrap: Internal charge pump — no external bootstrap caps needed
  • Decay mode: Slow decay (default) via internal braking

Current Sensing

  • Shunt resistor: 0.1Ω ±1%, 2512 package (1W rated)
  • Amplifier: INA181A1 (gain = 20 V/V, BW = 350kHz)
  • Output: 0–3.3V analog to MCU ADC (1.65V = 0A, 3.3V = 3.6A)
  • Overcurrent: Comparator trip at 4A → nFAULT assertion

Thermal Management

  • Copper fill: Maximized ground plane copper pour on both layers
  • Thermal vias: 16× 0.3mm vias under each DRV8870 thermal pad
  • Via stitching: Ground plane stitched every 5mm
  • Estimated θ_JA: 35°C/W (at 3.6A, T_junction = 25 + 35 × 0.36 × 3.6² = 71.7°C)

PCB Design Rules

Parameter Value Rationale
Min trace width (signal) 8 mil Standard for 2oz copper
Min trace width (power) 40 mil 3.6A continuous @ 10°C rise
Min clearance 8 mil JLCPCB standard capability
Min drill 0.3mm JLCPCB standard
Via size 0.6mm pad / 0.3mm drill Standard thermal vias
Power trace 2mm (80 mil) 45V rated, 3.6A per channel

🔧 LibrePCB Workflow

This project demonstrates LibrePCB-specific workflows:

  1. Custom library creation — DRV8870 and INA181 built from datasheets

    • Symbol: schematic representation with pin mapping
    • Footprint: land pattern per TI recommended layout
    • Component: links symbol ↔ footprint with 3D model
    • Package: HTSSOP-8 with thermal pad
  2. Hierarchical schematic — 4 sheets for modular design

  3. Design rule check — Custom DRC for high-current constraints

  4. Gerber export — JLCPCB-compatible output with drill file

  5. BOM export — CSV with LCSC part numbers for assembly

🧪 Validation

  • ERC: 0 errors across all sheets
  • DRC: 0 violations with high-current design rules
  • Current-carrying trace widths verified (IPC-2221 calculator)
  • Thermal simulation: junction temps within DRV8870 abs max (150°C)
  • Motor transient protection validated in Ngspice (see companion repo)
  • BOM availability confirmed (LCSC + DigiKey backup)

📄 License

Hardware: CERN-OHL-S-2.0

About

Dual H-bridge BLDC motor driver PCB — LibrePCB

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors