Skip to the content
PCBKitNew board
4 layers90.7 × 78.2 mmSerialHub, the printed circuit board in 3D

A 6-port UART hub

Size
90.7 × 78.2 mm
Copper layers
4
Thickness
1.6 mm
Parts
129
Nets
130
Pads
797
Tracks, vias
1,870, 345
Pours
2
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
25 Oct 2025
Updated
29 Oct 2025

Overview

SerialHub is an open-source printed circuit board by glingy, from the glingy/uarthub repository on GitHub. It is a 4-layer board of 90.7 × 78.2 mm with 129 parts on 130 nets, routed with 1,870 tracks and 345 vias.

It is built around the RP2040 and W25Q16JVSSIQ. Its parts include 70 capacitors, 31 resistors, 13 connectors, 8 ICs and 1 switch. It belongs with the interfaces and adapters boards and the RP2040 boards of this library.

Main components

2

README

README.md

UART Hub

This is a 6-port "null modem cable". There are six 4-signal UART channels with flow control. Each channel is connected to all six RP2040's at each USB port to allow full software configuration of which USB ports communicate on which channels.

For example with the following configuration:

text
Channel 0: Port 0, Port 1
Channel 1: Port 0, Port 2
Channel 2: Port 1, Port 3
Channel 3: Port 1, Port 2
Channel 4: Port 0, Port 1
Channel 5: Port 0, External

A computer connected to USB 0 will see four USB CDC-ACM serial ports (COM ports on Windows, TTY's on Linux). They will be connected to USB 1, USB 2, USB 1, and the external pins labeled 5 respectively. Port 1 will also have four serial ports (USB 0, USB 3, USB 2, USB 0). Note that in this case there are two independent serial connections between USB 0 and 1. USB 2 will have two serial ports, USB 3 will only see one port, and USB 4 & 5 will see no serial ports.

USB 0 will also have an additional management serial port that allows runtime configuration of which ports are associated with each channel via a terminal-based UI.

This project is not intended to work for other protocols (I2C, SPI), but the hardware should be capable of supporting I2C or SPI devices on the external pins, the RP2040 uses the same pins for I2C/SPI as it does for UART.

Parts

129
QtyValueFootprintReferences
56100nFCapacitor_SMD:C_0402_1005MetricC10, C11, C12, C14, C15, C17, C18, C19, C20, C21, C22, C23, C25, C26, C28, C29 +40
141uFCapacitor_SMD:C_0402_1005MetricC1, C2, C5, C13, C16, C24, C27, C35, C38, C46, C49, C57, C60, C68
1227ΩResistor_SMD:R_0402_1005MetricR3, R4, R7, R8, R11, R12, R15, R16, R19, R20, R23, R24
125.11kΩResistor_SMD:R_0402_1005MetricR5, R6, R9, R10, R13, R14, R17, R18, R21, R22, R25, R26
6Conn_01x04_PinImport:SaleaeTestpoint4J1, J3, J5, J7, J9, J11
6RP2040Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mmU3, U4, U5, U6, U7, U8
6USB_C_Receptacle_USB2.0_16PImport:SAMESKY_UJ20-C-H-G-SMT-1-P16-TRJ2, J4, J6, J8, J10, J12
57.15kΩResistor_SMD:R_0402_1005MetricR27, R28, R29, R30, R31
4MountingHole_PadMountingHole:MountingHole_3.2mm_M3_PadH1, H2, H3, H4
210kΩResistor_SMD:R_0402_1005MetricR1, R2
1ASE-12.000MHz-E-TOscillator:Oscillator_SMD_Abracon_ASE-4Pin_3.2x2.5mmX1
1Conn_02x24_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x24_P2.54mm_VerticalJ15
1LOGOImport:TurtleG***
1SW_SPSTButton_Switch_THT:SW_PUSH_6mm_H4.3mmSW1
1TLV74033PDBVRPackage_TO_SOT_SMD:SOT-23-5U9
1W25Q16JVSSPackage_SO:SOIC-8_5.3x5.3mm_P1.27mmU2

Questions

How big is the SerialHub PCB?

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

What parts does the SerialHub use?

129 parts, built around the RP2040 and W25Q16JVSSIQ. 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 SerialHub KiCad files?

From the glingy/uarthub repository on GitHub, at the commit this page was made from: the board is SerialHub.kicad_pcb and its schematic SerialHub.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the SerialHub design in my own project?

Its repository states no licence, so its author keeps all rights: ask glingy before reusing the design.

Similar boards

  • 4 layers299 × 127 mmLaunch, the printed circuit board in 3D

    Launch

    system76/launch

    System76 Launch Configurable Keyboard

    385 parts1.4kGPL-3.0
  • 2 layers285 × 94.6 mmPH60 Rev3, the printed circuit board in 3D

    PH60 Rev3

    ph-design/PH60

    A printable 60% multi-layout wireless keyboard suite.

    264 parts163
  • 2 layers25.4 × 54.5 mmRpi pico debugger shoe, the printed circuit board in 3D

    Rpi pico debugger shoe

    ShawnHymel/rpi-pico-debugger-shoe

    Stackable debugger board for the Raspberry Pi Pico. Solder long headers to this debugger board in order to connect the Pico to it.

    49 parts84
  • 4 layers96 × 28 mmThelio io, the printed circuit board in 3D

    Thelio io

    system76/thelio-io-hardware

    KiCad electrical design of Thelio Io board

    78 parts70GPL-3.0
  • 2 layers21 × 49.5 mmHackducky, the printed circuit board in 3D

    Hackducky

    hackclub/hackducky

    The hackclub themed USB rubber ducky ! - Check out hackducky

    51 parts33
  • 4 layers53 × 42 mmMioLink, the printed circuit board in 3D

    MioLink

    Misaka0x2730/MioLink

    ARM JTAG/SWD debugger (BlackMagic port) based on RP2040.

    117 parts30GPL-3.0
  • 4 layers190 × 100 mmRioctrl controller, the printed circuit board in 3D

    Rioctrl controller

    festlv/rioctrl-hw

    Hardware design for modular CNC controller

    281 parts16CERN-OHL-S-2.0
  • 2 layers53.3 × 68.3 mmAnac 2040, the printed circuit board in 3D

    Anac 2040

    rallekralle11/Anna2040

    RP2040-based board in the shape of the Arduino uno

    63 parts9