Skip to the content
4 layers100 × 100 mmPickOMatic V2, the printed circuit board in 3D

One board to drive your entire pick-and-place machine: RISC-V CH32V317, 7 stepper channels, Ethernet, USB-C, vacuum and lighting control. Open hardware.

Size
100 × 100 mm
Copper layers
4
Thickness
1.6 mm
Parts
172
Nets
243
Pads
895
Tracks, vias
1,687, 290
Pours
5
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
18 Aug 2026
Updated
19 Aug 2026

Overview

PickOMatic V2 is an open-source printed circuit board by rmingon, from the rmingon/PickOMatic-V2 repository on GitHub, published under the CERN-OHL-S-2.0 licence. It is a 4-layer board of 100 × 100 mm with 172 parts on 243 nets, routed with 1,687 tracks and 290 vias.

It is built around the SSP1117-3.3V, TPS562200DDC and AO3400A. Its parts include 54 capacitors, 41 resistors, 20 connectors, 11 ICs and 5 diodes. It belongs with the lEDs and displays and interfaces and adapters boards and the RISC-V boards of this library.

Main components

3

README

README.md

PickOMatic V2

Place faster. Place smarter. The open-source motion controller that turns your pick-and-place ambitions into production reality.

PickOMatic V2 board, 3D render

License: CERN-OHL-S-2.0 MCU: CH32V317VCT6 EDA: KiCad Status


PickOMatic V2 is a professional-grade, all-in-one motion control board designed from the ground up for desktop pick-and-place machines. It is the second generation of the PickOMatic motion controller, rebuilt around a modern 32-bit RISC-V microcontroller with native Ethernet and USB-C connectivity.

One board drives the entire machine: gantry, picker heads, nozzles, vacuum, lighting and feedback, with no shields, no breakout spaghetti and no compromises.

Highlights

  • RISC-V power : WCH CH32V317VCT6 (QingKe 32-bit RISC-V core, LQFP-100), a massive leap over the 8-bit ATmega2560 of V1
  • 7 stepper channels : on-board DRV8825 drivers for the XY gantry, Z axis and auxiliary picker-head axes, each with per-channel microstepping selection (M0/M1/M2 solder jumpers) and current trim
  • Ethernet on board : integrated PHY with RJ45 magjack (HR911105A) for fast, reliable G-code streaming over the network
  • USB-C : modern connectivity for setup, control and firmware workflows
  • Vacuum and pneumatics : dedicated relay outputs (NC-COM-NO) for the vacuum pump and pneumatic accessories
  • 3 servo outputs : independent nozzle height / rotation control per picker head
  • 5 endstop inputs : dedicated limit-switch inputs for X, Y and Z homing (dual X and dual Y supported)
  • Inspection lighting : dedicated LED control output for camera lighting
  • Operator feedback : on-board buzzer and status LEDs
  • Expansion ready : I²C bus, custom headers, FTDI UART header, SWD debug port and BOOT jumpers
  • Clean power architecture : single 12 V input with on-board buck converters (TPS562200) and LDO rails for logic

What's new in V2

PickOMatic V1PickOMatic V2
MicrocontrollerATmega2560 @ 16 MHz (8-bit AVR)CH32V317VCT6 (32-bit RISC-V)
Host linkUSB-UART (CH340C)Native USB-C + Ethernet (RJ45)
Stepper channels87 x DRV8825 with per-axis microstep jumpers
Debug / programmingAVR-ISPSWD + FTDI UART + BOOT jumpers
NetworkingNoneOn-board Ethernet PHY + magjack

Board overview

PCB layoutSchematic
PCB layoutSchematic

Specifications

SubsystemDetail
MCUWCH CH32V317VCT6, 32-bit RISC-V, LQFP-100, external crystal
Motion7 x DRV8825 stepper drivers (STEP/DIR), microstepping via M0/M1/M2 solder jumpers, current trim potentiometers
AxesDual-Y and dual-X gantry support, Z axis, auxiliary picker-head channels
Endstops5 inputs (Z, X-X, Y-Y) on a dedicated header
Servos3 PWM outputs for nozzle actuation
PneumaticsRelay outputs with NC-COM-NO terminals for vacuum pump control
LightingDedicated LED_CTL output for inspection lighting
ConnectivityUSB-C, 10M Ethernet (RJ45 HR911105A), I²C expansion, FTDI UART
DebugSWD (SWCLK/SWDIO), BOOT0/BOOT1 jumpers, reset button
FeedbackBuzzer, status LEDs
Power input12 V DC via screw terminal
Power rails12 V motor rail, 5 V and 3.3 V logic rails (TPS562200 buck converters + LDOs)
Form factor4-corner mounting holes, screw-terminal I/O on board edges

Repository structure

text
PickOMatic-V2/
├── hardware/               # KiCad project (schematic + PCB)
│   ├── hardware.kicad_pro
│   ├── hardware.kicad_sch
│   └── hardware.kicad_pcb
├── 3d.png                  # 3D render of the assembled board
├── pcb.png                 # PCB layout view
├── schematic.png           # Full schematic
├── LICENSE                 # CERN-OHL-S v2
└── README.md

Getting started

  1. Clone the repository
    bash
    git clone https://github.com/rmingon/PickOMatic-V2.git
  2. Open hardware/hardware.kicad_pro in KiCad (version 8 or later recommended)
  3. Review the schematic and PCB, then export Gerbers and the BOM for your fab house
  4. Assemble, set the DRV8825 current limits, configure microstepping with the solder jumpers, and connect your motors, endstops, servos and vacuum pump
  5. Flash your firmware via SWD or the FTDI/BOOT bootloader path, and start placing parts

Related projects

  • PickOMatic (V1) : the original ATmega2560-based motion controller this board evolved from

Contributing

Issues and pull requests are welcome. If you build a machine around PickOMatic V2, share it: photos, firmware ports and feeder designs all help the project grow.

License

This project is open-source hardware, released under the CERN Open Hardware Licence Version 2, Strongly Reciprocal (CERN-OHL-S-2.0).

You may use, study, modify, manufacture and distribute this design, provided that any modified versions are released under the same licence and that source is made available. See LICENSE for the full text.

Copyright © 2026 rmingon


PickOMatic V2, because your components deserve to be placed with confidence.

Parts

172
QtyValueFootprintReferences
21SolderJumper_3_OpenJumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mmJP1, JP2, JP3, JP4, JP10, JP11, JP12, JP13, JP14, JP15, JP16, JP17, JP18, JP19, JP20, JP21 +5
1510KResistor_SMD:R_0603_1608MetricR3, R4, R8, R11, R12, R19, R20, R21, R22, R23, R24, R27, R28, R29, R32
140.10Resistor_SMD:R_0603_1608MetricR1, R2, R5, R6, R9, R10, R13, R14, R15, R16, R17, R18, R25, R26
10100nCapacitor_SMD:CP_Elec_6.3x5.7C4, C8, C12, C22, C23, C24, C28, C43, C44, C45
70.1uCapacitor_SMD:C_0603_1608MetricC2, C6, C10, C16, C17, C18, C26
70.47uCapacitor_SMD:C_0603_1608MetricC3, C7, C11, C19, C20, C21, C27
7100nFCapacitor_SMD:C_0603_1608MetricC67, C68, C69, C70, C71, C74, C75
710kPotentiometer_SMD:Potentiometer_Bourns_3269W_VerticalRV1, RV2, RV3, RV4, RV5, RV6, RV7
710nCapacitor_SMD:C_0603_1608MetricC1, C5, C9, C13, C14, C15, C25
7Conn_01x04_PinTerminalBlock_Phoenix:TerminalBlock_Phoenix_MPT-0,5-4-2.54_1x04_P2.54mm_HorizontalJ1, J2, J3, J4, J5, J6, J7
7DRV8825PWPRDRV8825PWPR:IC_TPS61196PWPRQ1U1, U2, U3, U4, U5, U6, U7
410pfCapacitor_SMD:C_0603_1608MetricC29, C30, C46, C55
33.3ufCapacitor_SMD:C_0603_1608MetricC32, C33, C35
3Conn_01x03Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ12, J13, J14
3LEDLED_SMD:LED_0603_1608MetricD3, D4, D5
3R_SmallResistor_SMD:R_0603_1608MetricR37, R38, R64
21.1KResistor_SMD:R_0603_1608MetricR34, R35
210kResistor_SMD:R_0603_1608MetricR62, R63
210uCapacitor_SMD:C_0603_1608MetricC38, C39
21N4001Diode_THT:D_DO-41_SOD81_P10.16mm_HorizontalD1, D2
21µfCapacitor_SMD:C_0603_1608MetricC72, C73
222uCapacitor_SMD:C_0603_1608MetricC41, C42
2680Resistor_SMD:R_0603_1608MetricR30, R31
2AO3400APackage_TO_SOT_SMD:SOT-23Q1, Q2
2Conn_01x03TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-3_1x03_P2.54mm_HorizontalJ8, J10
2Conn_02x05_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x05_P2.54mm_VerticalJ15, J19
2G5Q-1Relay_THT:Relay_SPDT_Omron-G5Q-1K1, K3
10.1uFCapacitor_SMD:C_0603_1608MetricC34
10.1µFCapacitor_SMD:C_0603_1608MetricC40
112Resistor_SMD:R_1206_3216MetricR36
133.0KResistor_SMD:R_0603_1608MetricR7
14.7uHInductor_SMD:L_Chilisin_BMRA00050520L2
147uFCapacitor_SMD:CP_Elec_6.3x9.9C31
1500Resistor_SMD:R_0603_1608MetricR33
1BuzzerBuzzer_Beeper:Buzzer_TDK_PS1240P02BT_D12.2mm_H6.5mmBZ1
1Conn_01x02Connector_Molex:Molex_KK-254_AE-6410-02A_1x02_P2.54mm_VerticalJ16
1Conn_01x02TerminalBlock_Phoenix:TerminalBlock_Phoenix_PT-1,5-2-3.5-H_1x02_P3.50mm_HorizontalJ9
1Conn_01x04Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ18
1Conn_02x03_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ11
1Crystal_GND24Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm_HandSolderingY1
1LM317_SOT-223Package_TO_SOT_SMD:SOT-223-3_TabPin2U11
1LOGOR-logo:R-logoG***
1RJ45_Hanrun_HR911105A_HorizontalConnector_RJ:RJ45_Hanrun_HR911105A_HorizontalJ17
1SSP1117-3.3VPackage_TO_SOT_SMD:SOT-223-3_TabPin2U13
1SW_DPST_x2Button_Switch_SMD:SW_Push_1P1T_NO_CK_KMR2RST1
1TPS562200Package_TO_SOT_SMD:SOT-23-6U10
1USB_C_PlugConnector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_HorizontalP1
1~Package_QFP:LQFP-100_14x14mm_P0.5mmU8

The 168 most common of 172 parts.

Similar boards

  • 2 layers31.6 × 96.7 mmThermometer esp8266-01s, the printed circuit board in 3D

    Thermometer esp8266-01s

    Mael-Le-Garrec/ESP-01S_thermometer

    This is a KiCad project to create a PCB with an ESP-01S and a DS18B20 thermometer

    12 parts
  • 6 layers90 × 60 mmEvidence, the printed circuit board in 3D

    Evidence

    kabidey/someda-claude-plugin

    This plugin puts the someda engine behind three slash commands. In a conversation, Claude writes the circuit as a small JSON plan: real parts with datasheet pinouts, nets, and intent such as "USB-C on the top edge".

    132 partsMIT
  • 2 layers103 × 50 mmM5Mouse, the printed circuit board in 3D

    M5Mouse

    meganetaaan/M5Mouse

    A micro mouse module made for M5Stack

    100 parts16
  • 2 layers40 × 78 mmHardware v2, the printed circuit board in 3D

    Hardware v2

    rmingon/Falcon-Edge

    A 3D-printable flying-wing airframe with a custom ESP32 flight computer—open hardware you can solder, screw together, and fly.

    56 parts11
  • 4 layers181.4 × 77.2 mmNixieNTPClock, the printed circuit board in 3D

    NixieNTPClock

    bastian-bou/NixieNTPClock

    Nixie clock around ESP32 connected to a NTP server

    64 parts3GPL-3.0
  • 2 layers48.6 × 49.5 mmReaction wheel bldc motor control pcb, the printed circuit board in 3D

    Reaction wheel bldc motor control pcb

    vatsalbansal123/reaction-wheel-controller-pcb

    Open-source FOC motor controller PCB for a reaction wheel — STM32G431 + DRV8311H driving a BLDC motor, with CAN bus interface. Designed in KiCad.

    50 parts3
  • 6 layers75 × 135.2 mmDumpling Main, the printed circuit board in 3D

    Dumpling Main

    nyuad-space/dumpling

    Modular payload for high-speed logging and benchmarking of COTS sensors, enabling real-world performance data and open sharing.

    370 parts1
  • 2 layers140 × 70 mmTSAL, the printed circuit board in 3D

    TSAL

    OxfordUniRacing/TSAL_ECAD

    Tractive System Active Light (all boards) ECAD in KiCAD

    156 parts1

Questions

How big is the PickOMatic V2 PCB?

It measures 100 × 100 mm and has 4 copper layers, 1.6 mm thick.

What parts does the PickOMatic V2 use?

172 parts, built around the SSP1117-3.3V, TPS562200DDC and AO3400A. 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 PickOMatic V2 KiCad files?

From the rmingon/PickOMatic-V2 repository on GitHub, at the commit this page was made from: the board is hardware/hardware.kicad_pcb and its schematic hardware/hardware.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the PickOMatic V2 design in my own project?

Its repository publishes it under the CERN-OHL-S-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).