

Controller
Easy-to-build syringe pump with microliter accuracy
- Size
- 65 × 62 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 51
- Nets
- 81
- Pads
- 315
- Tracks, vias
- 610, 59
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 3 Apr 2017
- Updated
- 15 Dec 2025
Overview
Controller is an open-source printed circuit board by Karpova-Lab, from the Karpova-Lab/syringe-pump repository on GitHub. It is a 2-layer board of 65 × 62 mm with 51 parts on 81 nets, routed with 610 tracks and 59 vias.
It is built around the TMC5041-LA, PEC11R-4220F-S0024 and PH1RB-14-UA, with the PPTC141LGBN-RC among its other parts. Its parts include 18 capacitors, 18 resistors, 5 connectors, 2 ICs and 1 switch.
Main components
4TMC5041-LA
QFN-48-EP(7x7)-40℃~+125℃ 1.1A 2.3V~5.5V 256 700mΩ Bipolar Driver Overcurrent Protection、Short-Circuit Protection、Over temperature protection、Under-voltage lockout、Motor step-out prevention function、Built-in charge pump、Power-on reset SPI Yes QFN-48-EP(7x7) Stepper Motor Driver ROHSTRINAMIC Motion Control GmbHStepper Motor DriverPEC11R-4220F-S0024
插件插件 Rotary Encoders ROHSBournsRotary EncodersPH1RB-14-UA
弯插,P=2.54mm-40℃~+105℃ 1 14P 2.54mm 250V 3A Black Brass Gold Right Angle 弯插,P=2.54mm Pin Headers ROHSADAM TECHPin HeadersPPTC141LGBN-RC
弯插,P=2.54mmFemale HeadersSullins Connector Solutions
README
README.mdOpen Syringe Pump

Overview
- A capable, easy-to-build, and cost-effective syringe pump
- Everything is open source to encourage users to replicate, customize, repair, and upgrade their own hardware
- 📖 Full documentation at https://karpova-lab.github.io/syringe-pump/
Features
- Infuse or retract syringe
- Integrated limit switches
- Quick and secure loading and unloading of syringes with spring-loaded clamps
- Customizable interface with color display, 4 buttons, and a rotary encoder
- Control remotely using serial commands from your software of choice
- Modular electronics can be swapped for compatibility with your system
- 10 minute assembly time
- ~$175/pump and ~$100/controller
- Control up to 4 pumps with 1 controller
Version History
- The design and material selection have gone through multiple iterations, trying to balance performance (power, precision, accuracy) and accessibility (cost, ease of manufacturing/assembly, ease of use).
- The latest design emphasizes modularity to maximize compatibility across diverse experimental systems and research setups
| Version | Date | Number of Parts | Design and Materials | Links |
|---|---|---|---|---|
| 1 | Dec 2016 | lasercut acrylic | demo video | |
| 2a | Dec 2017 | lasercut acrylic | demo video | |
| 2b | Jun 2017 | 89 ![]() | lasercut acrylic | demo video, repo, docs |
| 3 | Oct 2020 | 70 ![]() | aluminum base and MJF printed parts | demo video, assembly video, repo, docs |
| 4 | Aug 2025 | 49 ![]() | bent aluminum frame and FDM printed parts | assembly video, repo, docs |
License
This project is licensed under the Janelia open-source hardware license and Janelia 3-term BSD open-source software license.
Please contact innovation@janelia.hhmi.org if you have any questions about licensing or would like to use this project commercially.
Parts
51| Qty | Value | Footprint | References |
|---|---|---|---|
| 8 | 100nF | Capacitor_SMD:C_0603_1608Metric | C1, C2, C3, C6, C7, C8, C15, C16 |
| 8 | 270mΩ | Resistor_SMD:R_1206_3216Metric | R3, R4, R5, R6, R7, R8, R9, R10 |
| 8 | 4.7KΩ | Resistor_SMD:R_0603_1608Metric | R12, R13, R14, R15, R16, R17, R18, R19 |
| 4 | 22µF | Capacitor_SMD:C_1206_3216Metric | C4, C5, C9, C10 |
| 4 | 24886 | asl_footprints:standoff_nut | H1, H2, H3, H4 |
| 3 | Conn_01x06_Socket | Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_Vertical | J3, J4, J5 |
| 2 | 1201578 | asl_footprints:DIN_Clip | DRA1, DRA2 |
| 2 | 2.2Ω | Resistor_SMD:R_0603_1608Metric | R1, R2 |
| 2 | 22nF | Capacitor_SMD:C_0603_1608Metric | C17, C18 |
| 2 | 4.7µF | Capacitor_SMD:C_0603_1608Metric | C13, C14 |
| 2 | 470nF | Capacitor_SMD:C_0603_1608Metric | C11, C12 |
| 2 | TMC5041 | asl_footprints:TMC_5072 | U1, U2 |
| 1 | 5691 | Module:Adafruit_Feather | A1 |
| 1 | PEC11R-4220F-S0024 | asl_footprints:encoder_PEC11R | SW1 |
| 1 | PH1RB-14-UA | Connector_PinHeader_2.54mm:PinHeader_1x14_P2.54mm_Horizontal | J2 |
| 1 | PPTC141LGBN-RC | Connector_PinSocket_2.54mm:PinSocket_1x14_P2.54mm_Horizontal | J1 |
Questions
How big is the Controller PCB?
It measures 65 × 62 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Controller use?
51 parts, built around the TMC5041-LA, PEC11R-4220F-S0024, PH1RB-14-UA and PPTC141LGBN-RC. 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 Controller KiCad files?
From the Karpova-Lab/syringe-pump repository on GitHub, at the commit this page was made from: the board is ecad/controller.kicad_pcb and its schematic ecad/controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Controller design in my own project?
Its repository states no licence, so its author keeps all rights: ask Karpova-Lab before reusing the design.
More from Karpova-Lab/syringe-pump
3- 2 layers48.6 × 17.2 mm

- 2 layers126.9 × 92 mm

- 2 layers26.1 × 17.2 mm

Module pycontrol
Karpova-Lab/syringe-pump
Easy-to-build syringe pump with microliter accuracy
3 parts33
Similar boards
- 8 layers50 × 50 mm

INT R1.0.1
manyetox/Autonomous-Photonics-Carrier
Source-available modular mobile carrier for autonomous photonics experiments using ESP32 control, optical flow, IMU sensing and magnetic wheel encoding.
182 parts1 - 2 layers100 × 100 mm

- 2 layers70 × 110 mm

Nucleo144 DSP
mnemocron/Nucleo-DSP-Shield
Audio DSP Shield for STM32 Nucleo-144 Boards (H723zg) based on the TLV320 CODEC
70 parts2GPL-3.0 - 2 layers79.4 × 66.1 mm

Macropad
axooexe/Macropad-s-PCB
This repository contains the schematics and PCB layout files for a custom 8switches and an encoder macropad.
19 parts1 - 4 layers47 × 106 mm

- 2 layers85 × 120 mm

Home Assistant Control pad
Pegoku/Home-Assistant-Control-pad
This is a programmable Home Assistant Control Pad. It can control 4 Home assistant devices at a time, and has 4 togglable screens/zones (in total 16 devices).
111 parts1GPL-3.0 - 4 layers92.8 × 76 mm

Deck-8
varaddorle007/deck-8
Open-source 8-key macro pad with 2 knobs, OLED and Bluetooth: PCB, case and ZMK firmware
101 parts1MIT - 4 layers150 × 100 mm

Interrupter v1.2
Alberto0235/DRSSTC-Fiber-Optic-Interrupter
Custom 4-layer interrupter control board for DRSSTC systems. STM32F405-based, fiber-optically isolated outputs, hardware E-brake safety chain, and controlled-impedance routing (90Ω USB, 50Ω FSMC/SDIO).
212 partsMIT


