
CNC Boosterpack
terjeio/CNC_Boosterpack
A BoosterPack that provides 3-axis motor support for some TI LaunchPads

A BoosterPack that provides 3-axis motor support for some TI LaunchPads
CNC Boosterpack is an open-source printed circuit board by terjeio, from the terjeio/CNC_Boosterpack repository on GitHub. It is a 4-layer board of 58.4 × 62.5 mm with 74 parts on 107 nets, routed with 975 tracks and 59 vias.
It is built around the TLP290-4(E, 24LC16B/P and TCA9406YZP. Its parts include 26 connectors, 20 resistors, 7 capacitors, 6 ICs and 4 transistors. It belongs with the robots and motor control boards and the MSP430 boards of this library.
A BoosterPack that provides 3-axis motor support for some LaunchPads, driver code for grblHAL is available for MSP432P401R, MSP432E401Y, Tiva C(EK-TM4C123GXL and EK-TM4C1294XL) and MSP430F5529.
Prototype "motherboards" has been made for ESP32, STM32F103 (Bluepill) and SAMD21 (MKRZERO) development boards allowing the CNC BoosterPack to be used with these, I may add them later.
NOTE: design files are in KiCad 5 format!
Features:
3-axis motor support with separate enable for Z and X,Y (X,Y has a single enable signal). Trinamic version has separate enable for all axes.
On-board sockets for Polulu style motor driver modules (A4998 and DRV8825). Separate version for Trinamic drivers (initially TMC2130).
Opto-coupled limit and signal inputs (X, Y, Z, Probe, Reset, Door, Feed Hold and Cycle Start) with 5V drive voltage.
Opto-coupled signal outputs (Spindle on, Spindle direction, Flood and Mist) with jumper selectable drive voltage (5V internal or externally supplied). Outputs are open drain (2N7002) capable of draining 200mA (up to 300mA depending on 2N7002 variant), enough to drive most relays directly. Outputs can be made opto-isolated via jumper settings.
PWM output for spindle speed control, unbuffered.
One I2C port with jumper selectable drive voltage (3.3V or 5V). This is complemented with a GPIO pin that may be used as an interrupt source, eg. for a I2C-based keypad.
Two GPIO ports, one with four pins and one with two. Two-pin GPIO-port may be used as secondary UART input, eg. for MPG control.
Optional on-board EEPROM for persistent storage of settings.
Separate version for Trinamic TMC2130 drivers added, onboard I2C <> SPI bridge for driver control. 4-layer board. A small batch of the Trinamic version has been made, good progress made on I2C <> SPI bridge firmware. Driver monitoring has been delegated to the bridge prosessor, a couple of additional datagrams will be implemented to facilitate support for this in the grblHAL-driver - first out will be for MSP432.
Both designs are now reduced in size so two boards may be mounted on TMC129 or MSP432E401Y LaunchPads for controlling up to 6-axes.
I have a few bare boards for sale at cost if anyone is interested. The "standard - non-Trinamic" boards I have available is the larger revision 1.0.
Detailed documentation to follow.


NOTE: output signals are inverted

with opto-coupled PWM input.
PCB layout matches WSS55 BLDC Driver connector

2021-10-28
| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 470 | Resistor_SMD:R_0805_2012Metric | R2, R3, R4, R5, R6, R7, R8, R9 |
| 5 | Lk | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | J2, J3, J12, J13, J14 |
| 4 | 100n | Capacitor_SMD:C_0805_2012Metric | C4, C5, C6, C7 |
| 4 | 2K7 | Resistor_SMD:R_0805_2012Metric | R18, R19, R20, R21 |
| 4 | 2N7002 | Package_TO_SOT_SMD:SOT-23 | Q1, Q2, Q3, Q4 |
| 4 | 330 | Resistor_SMD:R_0805_2012Metric | R1, R15, R16, R17 |
| 3 | 100u | Capacitor_THT:CP_Radial_D8.0mm_P3.50mm | C1, C2, C3 |
| 3 | SilentStepStick_Breakout_TMC2130 | IoEngineering:SilentStepStick_TMC2130 | A1, A2, A3 |
| 3 | TLP290-4 | Package_SO:SOP-16_4.4x10.4mm_P1.27mm | U1, U2, U3 |
| 2 | 6K8 | Resistor_SMD:R_0805_2012Metric | R22, R23 |
| 1 | 10K | Resistor_SMD:R_0805_2012Metric | R24 |
| 1 | 24LC16 | Package_SO:SOIC-8_3.9x4.9mm_P1.27mm | U4 |
| 1 | 47K | Resistor_SMD:R_0805_2012Metric | R25 |
| 1 | BP A-B | Connector_PinSocket_2.54mm:PinSocket_2x10_P2.54mm_Vertical | P1 |
| 1 | BP C-D | Connector_PinSocket_2.54mm:PinSocket_2x10_P2.54mm_Vertical | P7 |
| 1 | Control | Connector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_Vertical | P3 |
| 1 | EEPROMaddr | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | Lk4 |
| 1 | GPIO | Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_Vertical | P2 |
| 1 | I2C | Connector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_Vertical | J5 |
| 1 | I2CDrv | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | Lk1 |
| 1 | LOGO | IoEngineering:IoEngineering | G*** |
| 1 | Limits | Connector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_Vertical | P8 |
| 1 | MSP430G2553-20 | Package_SO:TSSOP-20_4.4x6.5mm_P0.65mm | U6 |
| 1 | Power | Connector_PinHeader_2.54mm:PinHeader_2x02_P2.54mm_Vertical | P11 |
| 1 | RESET | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J6 |
| 1 | SBW | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Horizontal | J1 |
| 1 | Spindle/Coolant | Connector_PinHeader_2.54mm:PinHeader_2x06_P2.54mm_Vertical | J9 |
| 1 | TCA9406 | Package_SO:SSOP-8_2.95x2.8mm_P0.65mm | U5 |
| 1 | UART/GPIO | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J11 |
| 1 | VDrvGND | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | Lk3 |
| 1 | VDrvSel | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | Lk2 |
| 1 | VMOT | IoEngineering:CONN_PWR_2P_3.5MM_CAMBLOCK | P17 |
| 1 | XA | IoEngineering:CONN_PWR_2P_3.5MM_CAMBLOCK | P9 |
| 1 | XB | IoEngineering:CONN_PWR_2P_3.5MM_CAMBLOCK | P6 |
| 1 | XMotor | IoEngineering:PinHeader_1x04_P2.54mm_Vertical_Motor | P4 |
| 1 | YA | IoEngineering:CONN_PWR_2P_3.5MM_CAMBLOCK | P12 |
| 1 | YB | IoEngineering:CONN_PWR_2P_3.5MM_CAMBLOCK | P13 |
| 1 | YMotor | IoEngineering:PinHeader_1x04_P2.54mm_Vertical_Motor | P10 |
| 1 | ZA | IoEngineering:CONN_PWR_2P_3.5MM_CAMBLOCK | P14 |
| 1 | ZB | IoEngineering:CONN_PWR_2P_3.5MM_CAMBLOCK | P15 |
| 1 | ZMotor | IoEngineering:PinHeader_1x04_P2.54mm_Vertical_Motor | P5 |
The 71 most common of 74 parts.

terjeio/CNC_Boosterpack
A BoosterPack that provides 3-axis motor support for some TI LaunchPads

terjeio/CNC_Boosterpack
A BoosterPack that provides 3-axis motor support for some TI LaunchPads

terjeio/CNC_Boosterpack
A BoosterPack that provides 3-axis motor support for some TI LaunchPads

terjeio/CNC_Boosterpack
A BoosterPack that provides 3-axis motor support for some TI LaunchPads

terjeio/CNC_Breakout_Nucleo64
CNC breakout for STM324F411 and ST32F446 development boards

speters/CNC_BoosterWing
CNC breakout board for the TM4C1294CL Launchpad running grbHAL


felixheld/qspimux
QSPI flash multiplexer - connect a SPI NOR flash to either an embedded system or a programmer for remote firmware tests

Evancli/porsche-quad-gauge
A custom built quad gauge for a Porsche 914 using new and salvaged components.

brooklynresearch/FerrousControl
Ferrofluid controlled through an electromagnetic array


It measures 58.4 × 62.5 mm and has 4 copper layers, 1.6 mm thick.
74 parts, built around the TLP290-4(E, 24LC16B/P and TCA9406YZP. 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 terjeio/CNC_Boosterpack repository on GitHub, at the commit this page was made from: the board is design Trinamic TMC2130 version/CNC Boosterpack.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 terjeio before reusing the design.