Actuator modules

AXA-006 — TMC2209 stepper driver PMOD module

Catalog #6 in the AruviX actuator line, level L3. TMC2209 (Analog Devices/Trinamic), soldered — deliberately not a socketed step-stick: the schematic is part of the curriculum.

Level L3 ERC clean DRC clean Fab package 24 components
3D render of the AXA-006 PCB
Rendered from the PCB layout. No physical board has been manufactured.

Circuit review & bench-test guide →

Components#

Every placed component, with the reason it is on the board. Extracted directly from the schematic, so this cannot drift from the design.

RefValueWhat it does on this boardPart numberFootprint
C1 22uF 35V X7R VS bulk reservoir (chopper ripple) not selected
Murata
C_1210_3225Metric
C2 22uF 35V X7R VS bulk reservoir not selected
Murata
C_1210_3225Metric
C3 100nF 50V X7R VS high-frequency decoupling at the driver GRM188R71H104KA93D
Murata
C_0603_1608Metric
C4 100nF 50V X7R Charge pump reservoir VCP->VS (datasheet standard application) GRM188R71H104KA93D
Murata
C_0603_1608Metric
C5 22nF 50V X7R Charge pump flying capacitor CPO-CPI GRM188R71H223KA01D
Murata
C_0603_1608Metric
C6 4.7uF 10V X5R 5VOUT regulator output capacitor (datasheet: 2.2-4.7 uF) GRM188R61A475KE15D
Murata
C_0603_1608Metric
C7 100nF 16V X7R VREF filter capacitor GRM188R71C104KA01D
Murata
C_0603_1608Metric
C8 100nF 16V X7R VCC_IO decoupling GRM188R71C104KA01D
Murata
C_0603_1608Metric
J1 PMOD PLUG 2x6 PMOD peripheral plug (Digilent spec 1.2) not selected
generic
PinHeader_2x06_P2.54mm_Horizontal
J2 VS IN 4.75-29V Motor supply input: 1 VS (4.75-29 V), 2 GND (joins PMOD GND here) not selected
Phoenix Contact
TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal
J3 MOTOR A Motor phase A: 1 OA1, 2 OA2 not selected
Phoenix Contact
TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal
J4 MOTOR B Motor phase B: 1 OB1, 2 OB2 not selected
Phoenix Contact
TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal
JP1 MS1=GND MS1/AD0 strap, bridged to GND (cut + bodge to 3V3 for address/microstep change) SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm
JP2 MS2=GND MS2/AD1 strap, bridged to GND SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm
R1 10k ENN pull-up: driver disabled until the host drives ENN low RC0603FR-0710KL
Yageo
Datasheet ↗
R_0603_1608Metric
R2 100R Series protection on the driver-driven DIAG line RC0603FR-07100RL
Yageo
Datasheet ↗
R_0603_1608Metric
R3 100R Series protection on the driver-driven INDEX line RC0603FR-07100RL
Yageo
Datasheet ↗
R_0603_1608Metric
R4 1k Single-wire UART: host TX through 1k (Trinamic convention) RC0603FR-071KL
Yageo
Datasheet ↗
R_0603_1608Metric
R5 100R Host RX senses the UART wire (100R per module-driven line rule) RC0603FR-07100RL
Yageo
Datasheet ↗
R_0603_1608Metric
R6 0.11R 1% 1206 Phase A sense resistor (RDSonSense off): sets full-scale current not selected
Bourns
Datasheet ↗
R_1206_3216Metric
R7 0.11R 1% 1206 Phase B sense resistor not selected
Bourns
Datasheet ↗
R_1206_3216Metric
R8 10k VREF divider top: 5VOUT/2 = 2.5 V full analog scale RC0603FR-0710KL
Yageo
Datasheet ↗
R_0603_1608Metric
R9 10k VREF divider bottom RC0603FR-0710KL
Yageo
Datasheet ↗
R_0603_1608Metric
U1 TMC2209-LA 2-phase stepper driver, 2.8 A peak, stealthChop2, single-wire UART, StallGuard4 TMC2209-LA-T
Analog Devices (Trinamic)
Datasheet ↗
VQFN-28-1EP_5x5mm_P0.5mm_EP3.7x3.7mm_ThermalVias

Signals#

Net labels used in the schematic, which are also the names the HDL top level should use.

3V3 CPI CPO DIAG DIR ENN GND INDEX MS1 MS2 OA1 OA2 OB1 OB2 PDN_UART SENSE_A SENSE_B STEP TMC_DIAG TMC_INDEX UART_RX UART_TX V5OUT VCP VMOT VREF

Production status#

Schematic ERC0 violations
PCB layoutcomplete
DRC0 violations
Fab packageexported (24 gerbers + drill + CPL + BOM)
Fabricatedno — design stage only

Source: boards/actuator-modules/axa-006-stepper


Catalog #6 in the AruviX actuator line (../README.md), level L3. TMC2209 (Analog Devices/Trinamic), soldered — deliberately not a socketed step-stick: the schematic is part of the curriculum.

Status: schematic generated, ERC clean (0/0), netlist reviewed. PCB layout not started. Not released.

What it teaches#

Step/dir motion profiles (trapezoid/S-curve acceleration ramps generated in hardware by step_profile) plus the serial-config lesson on top: the Trinamic single-wire UART for IRUN/IHOLD current scaling, microstep resolution, stealthChop/spreadCycle selection, and StallGuard4 sensorless load measurement via DIAG.

Design#

PMOD pin123456789101112
NetSTEPDIRENNDIAGGND3V3UART_TXINDEXUART_RXNCGND3V3

(Deviation from the catalog sketch: pin 9 carries UART_RX so the host can sense the single-wire bus — TX-through-1k alone cannot read replies.)

Regenerate#

python3 generate_design.py

Remaining for release#