

ServoBoard V21
A custom PCB that drives up to 4 PWM servos. The board uses the atmega328PB and has variable input and variable servo voltage using the LM2596S buck and AMS1117 LDO. The board also has 3 6n137 optocouplers.
- Size
- 82.8 × 53.3 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 70
- Nets
- 79
- Pads
- 240
- Tracks, vias
- 494, 133
- Pours
- 9
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 16 Jun 2026
- Updated
- 28 Jun 2026
Overview
ServoBoard V21 is an open-source printed circuit board by jeffrey500, from the jeffrey500/ServoBoard repository on GitHub. It is a 2-layer board of 82.8 × 53.3 mm with 70 parts on 79 nets, routed with 494 tracks and 133 vias.
It is built around the ATMEGA328PB-AU, CH340C and AMS1117-5.0, with the KM228M025J20RR0VH2FP0, 3296W-1-103LF and TAJA106K016RNJ among its other parts. Its parts include 21 capacitors, 16 resistors, 12 ICs, 6 diodes and 1 switch. It belongs with the AVR (ATmega, ATtiny) boards of this library.
Main components
7ATMEGA328PB-AU
TQFP-32(7x7)-40℃~+85℃ 1.8V~5.5V 10bit 1KB 20MHz 27 2KB 32KB 8 Bit AVR Built-in FLASH Power-on reset (POR)、Undervoltage detection (BOR/LVD/LVR/LVI)、Watchdog reset、External pin reset (NRST)、Built-in general-purpose timer、Programmable watchdog、Touch function TQFP-32(7x7) Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)CH340C
SOP-16-20℃~+70℃ 2Mbps 3.3V、5V 50uA 7mA Transceiver USB 2.0 SOP-16 USB Converters ROHSWCH (Nanjing Qinheng Microelectronics)USB ConvertersAMS1117-5.0
SOT-223-40℃~+125℃ 1 1.3V 15V 1A 5V 60dB Fixed Positive Short Circuit Protection、Thermal shutdown SOT-223 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSAdvanced Monolithic SystemsVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsKM228M025J20RR0VH2FP0
插件,D13xL20mm13mm 2000hrs@105℃ 20mm 2200uF 25V 5mm ±20% 插件,D13xL20mm Aluminum Electrolytic Capacitors - Leaded ROHSCXAluminum Electrolytic Capacitors - Leaded3296W-1-103LF
插件-3P,9.5x4.9mm10kΩ 28 500mW ±10% ±150ppm/℃ Plugin-3P,9.5x4.9mm Potentiometers, Variable Resistors ROHSjieerruiPotentiometers & Variable ResistorsTAJA106K016RNJ
CASE-A-3216-18(mm)-55℃~+125℃ 10uF 16V 3Ω@100kHz ±10% CASE-A-3216-18(mm) Tantalum Capacitors ROHSKyocera AVXTantalum CapacitorsTAJA226K010RNJ
CASE-A-3216-18(mm)-55℃~+125℃ 10V 22uF 3Ω@100kHz ±10% CASE-A-3216-18(mm) Tantalum Capacitors ROHSKyocera AVXTantalum Capacitors
README
README.mdServoBoard V2.1
Introduction
This project contains a 2 layer PCB that has the designed purpose of driving up to 4 PWM servo motors of variable input voltage, with the entire board itself being powered by a variable voltage.
This board is controlled by an atmega328PB and has 6n137 optocouplers.
Microcontroller
The microcontroller (MCU) on this board is the atmega328PB which can be programmed via the USB-C connection on the side of the board through the use of a CH340C USB-to-UART serial converter IC.
The atmega328PB was chosen as it is a simple and stable MCU that can be programmed using the Arduino IDE, and is an upgrade over the atmega328.
The MCU utilizes an external 16 MHz crystal oscillator.
Note: the USB connection can only be used after initial bootloader burning (see ISP section).
Power
There are 3 different voltages present on the board: input, servo, and 5V.
Using the LM2596S buck voltage regulator, the board can utilize a maximum of 3A at the output of the Buck regulator. The efficiency of the LM2596S 92%. The board accepts a voltage range of 40V and can step it down to 1.25V-35V. You can adjust the output voltage of the LM2596S by adjusting the screw on the blue potentiometer. The potentiometer acts as a voltage divider which alters the internal PWM duty cycle.
The use of an AMS1117-5.0 fixed 5V low dropout linear voltage regulator further steps down the voltage from the servo voltage to 5V to power the MCU. The dropout range is 1.3V with a max input voltage of 15V.
Note: you should be careful when adjusting output of the LM2596S when using voltages higher than 15V as you can potentially destroy the AMS1117 LDO. Additionally, the servo voltage should be high enough such that the MCU after the LDO has sufficient a sufficient voltage.
Servo PWM pins
Servo motors can be driven using one or many of the 4 sets of SIGNAL-POWER-GROUND male header pins. The connected servo motors are driven by the voltage output of the LM2596S Buck Converter. A large 2200uF capacitor is placed very close to the servo pin headers to provide power during momentary high current draw.
Optocouplers
The Board contains 3 6n137 high-speed digital Optocouplers, mounted on DIP-8 sockets, allowing for interfacing with optical isolation. The 6n137 mounted on the U5 DIP-8 socket is oriented as an input for digital signals while U4 and U6 are oriented as outputs.
Board Design
This Board utilizes a 2 layer stackup. The top layer is signal with a ground pour. The bottom layer is a ground plane of which effort was put in to ensure as much continuity as possible. The top and bottom ground layers are connected via stitching. A power plane and cut is placed around the servo pin headers so that surges of power are drawn from the nearby capacitor. Extra thermal vias are placed around the ground pin of the LM2596S.
In-System Programming (ISP)
Following the assembly of the board you will need to do burn the bootloader of the board to be able to use the USB-C port to program the atmega328PB. To do this, it is recommended to use any Arduino in addition to its ability to be an ISP flasher.
Schematic
Board Without Pours
Top Copper
Bottom Copper
Application
The design application of this board is within a CNC White board plotter //add link for which this board controls a pen plotter that is controlled by an Ardunio CNC Shield, interfacing through an optocoupler. The board input voltage is 12V, with the servo needing 7V.
BOM
The cost of each board at low production quantities is around $15 CAD.
LICENSE
ServoBoard © 2026 by Jeffrey Zhu is licensed under CC BY-NC 4.0
Parts
70| Qty | Value | Footprint | References |
|---|---|---|---|
| 10 | 0.1uF | Capacitor_SMD:C_0805_2012Metric | C6, C7, C8, C11, C12, C13, C18, C19, C20, C21 |
| 9 | 1k | Resistor_SMD:R_0805_2012Metric | R4, R5, R6, R7, R8, R12, R14, R15, R16 |
| 4 | MountingHole | MountingHole:MountingHole_4.3mm_M4 | H7, H9, H10, H11 |
| 3 | 0.1 uF | Capacitor_SMD:C_0805_2012Metric | C3, C4, C5 |
| 3 | 330 | Resistor_SMD:R_0805_2012Metric | R9, R10, R11 |
| 3 | D_Schottky | easyeda2kicad:SMA_L4.4-W2.8-LS5.4-R-RD | D7, D9, D10 |
| 2 | 22pF | Capacitor_SMD:C_0805_2012Metric | C9, C10 |
| 2 | 330 uF | easyeda2kicad:CAP-TH_BD12.5-P5.00-D0.6-FD | C14, C15 |
| 2 | 5.1k | Resistor_SMD:R_0805_2012Metric | R1, R2 |
| 2 | Analog Pins | easyeda2kicad:HDR-TH_5P-P2.54-V-M | U10, U11 |
| 2 | GND SIG VCC | easyeda2kicad:CONN-TH_HX-PZ2.54-1X3P-ZZ | H5, H6 |
| 2 | OUTPUT 6N137 | Package_DIP:DIP-8_W7.62mm_Socket | U4, U6 |
| 1 | 10 nF | Capacitor_SMD:C_0805_2012Metric | C16 |
| 1 | 10k | Resistor_SMD:R_0805_2012Metric | R3 |
| 1 | 16MHz | easyeda2kicad:OSC-TH_L10.0-W4.5-P5.00 | X1 |
| 1 | 2200uF 25V 13*20 | easyeda2kicad:CAP-TH_BD13.0-P5.00-D1.2-FD | C17 |
| 1 | 3296W-1-103LF | easyeda2kicad:RES-ADJ-TH_3296W | R13 |
| 1 | 47 uH | easyeda2kicad:IND-SMD_L12.3-W12.3 | L3 |
| 1 | AMS1117-5.0 | easyeda2kicad:SOT-223_L6.5-W3.5-P2.30-LS7.0-BR | U2 |
| 1 | ATmega328PB-A | Package_QFP:TQFP-32_7x7mm_P0.8mm | U12 |
| 1 | CH340C | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U3 |
| 1 | Digital Pins | easyeda2kicad:HDR-TH_9P-P2.54-V-F-3 | H12 |
| 1 | IN+ IN- | easyeda2kicad:HDR-TH_2P-P2.54-V-M-3 | U9 |
| 1 | INPUT 6N137 | Package_DIP:DIP-8_W7.62mm_Socket | U5 |
| 1 | LM2596SX-ADJ/NOPB | easyeda2kicad:TO-263-5_L10.2-W8.9-P1.70-TL | U1 |
| 1 | PWM 1 | easyeda2kicad:CONN-TH_HX-PZ2.54-1X3P-ZZ | H1 |
| 1 | PWM 2 | easyeda2kicad:CONN-TH_HX-PZ2.54-1X3P-ZZ | H2 |
| 1 | PWM 3 | easyeda2kicad:CONN-TH_HX-PZ2.54-1X3P-ZZ | H4 |
| 1 | PWM 4 | easyeda2kicad:CONN-TH_HX-PZ2.54-1X3P-ZZ | H3 |
| 1 | PWR | easyeda2kicad:LED1206-FD | D4 |
| 1 | Power Input | easyeda2kicad:CONN-TH_P5.00_KF301-5.0-2P | U7 |
| 1 | RESET | easyeda2kicad:SW-SMD_L4.0-W2.9-LS5.0 | SW1 |
| 1 | RX | easyeda2kicad:LED1206-FD | D2 |
| 1 | Reset | easyeda2kicad:HDR-TH_2P-P2.54-V-M-3 | U13 |
| 1 | TAJA106K016RNJ | easyeda2kicad:CAP-SMD_L3.2-W1.6-RD-C7171 | C22 |
| 1 | TAJA226K010RNJ | easyeda2kicad:CASE-A_3216 | C1 |
| 1 | TX | easyeda2kicad:LED1206-FD | D3 |
| 1 | USB-C | easyeda2kicad:USB-C-SMD_TYPE-C-6PIN-2MD-073 | USB1 |
Questions
How big is the ServoBoard V21 PCB?
It measures 82.8 × 53.3 mm and has 2 copper layers, 1.6 mm thick.
What parts does the ServoBoard V21 use?
70 parts, built around the ATMEGA328PB-AU, CH340C, AMS1117-5.0 and KM228M025J20RR0VH2FP0. 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 ServoBoard V21 KiCad files?
From the jeffrey500/ServoBoard repository on GitHub, at the commit this page was made from: the board is ServoBoard V21.kicad_pcb and its schematic ServoBoard V21.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the ServoBoard V21 design in my own project?
Its repository states no licence, so its author keeps all rights: ask jeffrey500 before reusing the design.
Similar boards
- 4 layers45.8 × 25 mm

- 2 layers296.5 × 175.3 mm

- 2 layers

- 2 layers68.5 × 53.4 mm

ZATINO SMD V2
zatelectronic/ZATINO_SMD_V2
O projeto utiliza o ATmega328PB-AU (TQFP-32) como microcontrolador principal, com um módulo FT232RL USB-C encaixado em um conector fêmea de 6 pinos para programação serial e comunicação USB — mantendo o conector USB-C…
29 parts2 - 2 layers45 × 85 mm

- 2 layers49 × 37 mm

Servo controller
rmingon/servo-controller
Custom-made dual-servo testing platform. It is designed for engineers, makers, and robotics developers who need a reliable and convenient way to drive and test two RC servos simultaneously from a PC.
31 parts - 2 layers96 × 97 mm

- 4 layers236.3 × 191.5 mm

