

PrintBridge
Im so done with needing to unplug all my cords and plug it all in ontip of a file of boxes to print one god damn thing so i made my wired printer wireless
- Size
- 92.4 × 40.6 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 22
- Nets
- 56
- Pads
- 142
- Tracks, vias
- 111, 28
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 10.0 (file 20260206)
- Created
- 25 Aug 2026
- Updated
- 30 Oct 2026
Overview
PrintBridge is an open-source printed circuit board by Kingdragoncat, from the Kingdragoncat/PrintBridge repository on GitHub. It is a 2-layer board of 92.4 × 40.6 mm with 22 parts on 56 nets, routed with 111 tracks and 28 vias.
It is built around the ESP32-S3-WROOM-1-N8, AMS1117-3.3 and TS-1187A-B-A-B, with the TYPE-C-31-M-12, USB-AF-90-WJ and WS2812B among its other parts. Its parts include 4 capacitors, 4 resistors, 3 connectors, 2 ICs and 2 switches. It belongs with the ESP32 boards of this library.
Main components
6ESP32-S3-WROOM-1-N8
SMD,25.5x18mm-40℃~+85℃ -98.2dBm 2.4GHz 20.5dBm 355mA 3V~3.6V 95mA Bluetooth5.0 ESP32-S3 Chip On-board PCB Antenna UART、SPI、I2C、I2S、USB SMD,25.5x18mm WiFi Modules ROHSEspressif SystemsWiFi ModulesAMS1117-3.3
SOT-223-40℃~+125℃ 0.003%Vout 1 1.1V@(800mA) 15V 1A 3.3V 5mA 72dB@(120Hz) Fixed Over Current Protection、Short Circuit Protection、Thermal shutdown Positive SOT-223 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSAdvanced Monolithic SystemsVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsTS-1187A-B-A-B
SMD-4P,5.1x5.1mm-30℃~+85℃ 1.5mm 1.6N 100,000 cycles 12V 5.1mm 5.1mm 50mA Gold No Round Button SPST Surface Mount,Vertical Without Bracket SMD-4P,5.1x5.1mm Tactile Switches ROHSXKB ConnectionTactile SwitchesTYPE-C-31-M-12
SMD-30℃~+80℃ 1 10,000 cycles 16P 20V 5A 7.35mm Female Surface Mount, Right Angle Type-C SMD USB Connectors ROHSHRO ElectronicsUSB ConnectorsUSB-AF-90-WJ
插件-20℃~+70℃ 1 1.5A 14.2mm 30V 4P Female Right Angle Type-A USB 2.0 White 插件 USB Connectors ROHSBXCONNUSB ConnectorsWS2812B
5mm X 5mm Surface Mount RGB LED with Intelligent ControlWorldsemiUncategorised
README
README.mdPrintBridge
Im so done with needing to unplug all my cords and plug it all in ontip of a file of boxes to print one god damn thing so i made my wired printer wireless
what is this thing
A small, cheap PCB that turns a wired USB printer into a WiFi network printer. It plugs into the printer's USB port as a USB Host, and exposes it on the network via raw JetDirect (port 9100) printing — works natively with macOS/Windows/Linux print dialogs, no drivers needed on the printer side.
Print jobs get spooled to the onboard micro SD card first, so if your wifi drops mid-print the job is safe and keeps going. because my wifi used to be that bad.


pcb layout


schematic

specs
- ESP32-S3-WROOM-1 module — WiFi + native USB Host on one chip
- USB-A host port to connect to the printer
- USB-C for power input (5V only, no data)
- Micro SD card slot for print job spooling
- WS2812B addressable RGB status LED
- BOOT and RESET tactile switches
- 1x4 UART header for firmware flashing (with an external USB-serial adapter)
- AMS1117-3.3 voltage regulator with polyfuse protection
- FCC/CE modular certification inherited from the WROOM-1 module
- Board size: ~55 x 28mm
how it works
- plug PrintBridge into your printer's USB port
- power it with any USB-C charger
- it connects to your WiFi and starts listening on port 9100
- add it as a network printer on your computer (raw/JetDirect protocol)
- print! the job gets spooled to the SD card first, then fed to the printer
wiring
USB-C power in (J2): 5V power only, no data lines connected. CC1/CC2 have 5.1k pull-downs so any USB-C charger recognizes it as a power sink. goes through a polyfuse for overcurrent protection, then into the AMS1117-3.3 regulator.
USB-A host (USB1): D+ and D- are wired to the ESP32-S3's USB PHY (GPIO19/GPIO20). VBUS gets raw 5V from the power rail — host mode has to supply power to the printer.
SD card (J1): SPI connection to the ESP32-S3 for spooling print data before sending to the printer.
Status LED (D1): WS2812B addressable LED. blue=booting, yellow=connecting, green=ready, cyan=receiving, purple=printing, red=error.
Flashing: no onboard USB-serial chip to keep costs down. use an external ~$3 USB-to-UART dongle on the 4-pin UART header (J3: 3V3/GND/TX/RX).
BOM
every part has an LCSC part number and link so anyone can source and build this.
| Ref | Qty | Value | LCSC # | Package | Description | Unit Price | Subtotal | Link |
|---|---|---|---|---|---|---|---|---|
| U1 | 1 | ESP32-S3-WROOM-1-N8 | C2913198 | Module | ESP32-S3 WiFi/BLE module (8MB flash) | $2.88 | $2.88 | LCSC |
| USB1 | 1 | USB-A-F-90 | C168708 | Through-hole | USB-A host receptacle (to printer) | $0.15 | $0.15 | LCSC |
| J2 | 1 | TYPE-C-31-M-12 | C165948 | SMD | USB-C power input | $0.10 | $0.10 | LCSC |
| U2 | 1 | AMS1117-3.3 | C6186 | SOT-223 | 3.3V linear regulator | $0.05 | $0.05 | LCSC |
| SW1, SW2 | 2 | TS-1187A-B-A-B | C318884 | SMD | Tactile switches (BOOT + RESET) | $0.02 | $0.04 | LCSC |
| J1 | 1 | DM3AT-SF-PEJM5 | C114218 | SMD | Micro SD card connector | $0.65 | $0.65 | LCSC |
| D1 | 1 | WS2812B | C2761795 | 5050 | Addressable RGB status LED | $0.08 | $0.08 | LCSC |
| R1, R2 | 2 | 10k | C269742 | 0805 | Pull-up resistors (EN + BOOT) | $0.01 | $0.02 | LCSC |
| R3, R4 | 2 | 5.1k | C269748 | 0805 | USB-C CC pull-down resistors | $0.01 | $0.02 | LCSC |
| C1, C3 | 2 | 100nF | C38141 | 0805 | Decoupling capacitors | $0.01 | $0.02 | LCSC |
| C2 | 1 | 10uF | C92341 | 0805 | Bulk capacitor (3V3 rail) | $0.02 | $0.02 | LCSC |
| C4 | 1 | 10uF | C92341 | 0805 | Bulk capacitor (SD card) | $0.02 | $0.02 | LCSC |
| F1 | 1 | Polyfuse 500mA | C106264 | 1206 | PTC resettable fuse | $0.07 | $0.07 | LCSC |
| J3 | 1 | Conn_01x04 | — | 2.54mm | UART pin header (for flashing) | $0.05 | $0.05 | LCSC |
total: 18 parts — ~$4.17
firmware
the firmware is in the software/ folder. its a PlatformIO project (Arduino framework). wifi, SD spooling, and the TCP print server are working. USB host printer driver is WIP.
see software/README.md for build and flash instructions.
references
- Espressif KiCad Libraries — official symbols, footprints, 3D models
- ESP32S3_PrintServer — reference firmware for ESP32-S3 print bridge
- EspUsbHost — Arduino USB Host library for ESP32-S3
license
do whatever you want with it honestly
made by Jonah Novoseller (Kingdragoncat)
Parts
22| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 100nF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C1, C3 |
| 2 | 10k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R1, R2 |
| 2 | 5.1k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R3, R4 |
| 2 | TS-1187A-B-A-B | PrintBridge_JLC:SW-SMD_4P-L5.1-W5.1-P3.70-LS6.5-TL_H1.5 | SW1, SW2 |
| 1 | 10 uF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C2 |
| 1 | 10uF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C4 |
| 1 | AMS1117-3.3 | PrintBridge_JLC:SOT-223-3_L6.5-W3.4-P2.30-LS7.0-BR | U2 |
| 1 | Conn_01x04 | Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_Vertical | J3 |
| 1 | ESP32-S3-WROOM-1 | RF_Module:ESP32-S3-WROOM-1 | U1 |
| 1 | Micro_SD_Card | Connector_Card:microSD_HC_Hirose_DM3AT-SF-PEJM5 | J1 |
| 1 | Polyfuse | Fuse:Fuse_1206_3216Metric_Pad1.42x1.75mm_HandSolder | F1 |
| 1 | TYPE-C-31-M-12 | PrintBridge_JLC:USB-C_SMD-TYPE-C-31-M-12_1 | J2 |
| 1 | USB-A-F-90 | PrintBridge_JLC:USB-A-TH_C168708 | USB1 |
| 1 | WS2812B | LED_SMD:LED_WS2812B_PLCC4_5.0x5.0mm_P3.2mm | D1 |
The 18 most common of 22 parts.
Questions
How big is the PrintBridge PCB?
It measures 92.4 × 40.6 mm and has 2 copper layers, 1.6 mm thick.
What parts does the PrintBridge use?
22 parts, built around the ESP32-S3-WROOM-1-N8, AMS1117-3.3, TS-1187A-B-A-B and TYPE-C-31-M-12. 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 PrintBridge KiCad files?
From the Kingdragoncat/PrintBridge repository on GitHub, at the commit this page was made from: the board is hardware/PrintBridge.kicad_pcb and its schematic hardware/PrintBridge.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the PrintBridge design in my own project?
Its repository states no licence, so its author keeps all rights: ask Kingdragoncat before reusing the design.
Similar boards
- 4 layers50 × 56 mm

- 2 layers78 × 58 mm

- 2 layers65 × 55 mm

Esp32-s3
duanestorey/hifi-amp
A high-fidelity four-channel amplifier with active-crossovers and room correction
37 parts1 - 2 layers61 × 35 mm

Esp32-1pcb
shubhisgonnastealyourcode/FT-32-esp32-s3-dev-board-
Custom ESP32-S3 Development Board with Header Pins for Display and RGB LED
44 parts1 - 2 layers65 × 65 mm

- 4 layers51.8 × 68.3 mm

- 4 layers21.7 × 89.8 mm

- 2 layers62.4 × 57 mm

Echo button thing
bootsie123/echo-button-thing
A PCB replacement for the Echo Button allowing support for Home Assistant through ESPHome
33 parts6GPL-3.0