Skip to the content
2 layers54 × 26 mmUsb hub, the printed circuit board in 3D

Open-source assistive input devices. Fingertip rings and pen wands as BLE HID mice. $9 BOM. CERN-OHL-S 2.0 hardware, MIT software.

Size
54 × 26 mm
Copper layers
2
Thickness
1 mm
Parts
28
Nets
13
Pads
129
Tracks, vias
77, 19
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
22 Mar 2026
Updated
25 Oct 2026

Overview

Usb hub is an open-source printed circuit board by fluffyrabbot, from the fluffyrabbot/powerfinger repository on GitHub. It is a 2-layer board of 54 × 26 mm with 28 parts on 13 nets, routed with 77 tracks and 19 vias.

It is built around the ESP32-S3-MINI-1-N8, RT9080-33GJ5 and USBLC6-2SC6. Its parts include 7 capacitors, 4 resistors, 2 ICs, 2 diodes and 1 connector. It belongs with the interfaces and adapters boards and the ESP32 boards of this library.

Main components

3

README

hardware/shared/USB-HUB/kicad/README.md

USB-HUB KiCad Packet

This directory is the schematic/layout starting point for the active hub accessory lane.

The packet now includes a first routed board-source pass. It is still a first board, not measured hardware evidence: connector strain, host clearance, and enclosure fit must be validated before the lane moves to secondary variants.

Current Source Files

  • usb_hub.kicad_sch — root sheet for the active hub lane
  • sheets/usb_and_power.kicad_sch
  • sheets/mcu_radio.kicad_sch
  • sheets/controls_and_indicators.kicad_sch
  • usb_hub.kicad_pcb — stepped USB-A direct-plug first-board pass
  • usb_hub.kicad_pro — local KiCad project settings for this packet
  • sym-lib-table — local project symbol table for KiCad CLI/library checks
  • PowerFinger.kicad_sym — local hub-specific first-board symbols
  • fp-lib-table — local project footprint table for KiCad CLI/library checks
  • PowerFinger_USB.pretty/ — local footprint library for the direct-plug USB-A connector, first-board ESP32-S3 module land pattern, service pads, clamp holes, and packet-pinned commodity footprints
  • FABRICATION-OUTPUTS.md — checked-in note for regenerating and reviewing the local Gerber, drill, POS, active-BOM/POS, and archive outputs
  • BOARD-HOUSE-OUTPUT-CONSTRAINTS.md — board-house intake questions tied to the current generated-output state

What Belongs Here Next

  • INTERFACE-CONTRACT.md — first-pass native USB and recovery-pin contract
  • BRINGUP-SERVICE-MATRIX.md — mandatory recovery access and first-board checks
  • CAPTURE-BINDINGS.md — which active BOM lines need stock, vendor, or custom binding
  • P0-COMPONENT-LOCKS.md — exact first-board USB and power parts for the active dongle lane
  • SCHEMATIC-CAPTURE.md — sheet split, net naming, and capture order
  • BOM-BLOCK-MAP.md — map the BOM into the first hub schematic
  • RECOMMENDED-FIRST-CAPTURE.md — the recommended first board scope
  • ../FIRST-BOARD-CHECKLIST.md — the execution checklist that decides when this packet is allowed to move on to secondary variants

Capture Order

  1. Native USB path and VBUS_5V entry from the connector
  2. RT9080-33GJ5 5V-to-3.3V regulation, decoupling, and connector-side protection
  3. Boot/reset and bring-up access
  4. Status LED and any test pads

First Board Reality

  • The current PCB outline is stepped: the USB-A nose carries the SOFNG USB-05 shell-tab pads and widens to a 54 x 26 mm module/service body behind the plug. That is more honest than the earlier placeholder, but adjacent-port host clearance is now an explicit mechanical risk to verify.
  • R1 is resolved as two 22R 0402 resistors (R1A, R1B) placed at the ESP32-S3 side of the native USB pair. C5 / C6 remain unconnected no-BOM 0402 mechanical placeholders in this pass; shunt capacitors are not part of the clean first-board routing until SI evidence calls for them.
  • U1 is rotated so the ESP32-S3 antenna keep-out lands at the rear of the dongle, away from the USB shell and away from service pads.
  • SW1 is a pad-actuated BOOT_N service path for this pass; EN, BOOT_N, UART0, power, and ground pads remain probeable along the reopenable seam. USB data continuity is inspected at trace/connector access points rather than dedicated connected USB data service pads in this pass. TP6-TP9 are now explicit no-BOM schematic service pads matching the routed board footprints.
  • The schematic now carries the routed board's common ground, EN RC support, status LED path, and local decoupling instead of leaving those as PCB-only drift. The USB shell tabs and ESP32-S3 module ground pads are now explicit schematic pins tied to ground, and PCB footprint metadata matches the locked schematic fields. KiCad CLI verification is active on this packet: the current schematic ERC and PCB DRC pass at error severity with local symbol and footprint libraries loaded, the all-severity schematic ERC reports 0 messages, and the all-severity PCB DRC pass is clean with 0 unconnected items and 0 schematic parity issues. usb_hub.kicad_pro intentionally ignores lib_footprint_mismatch because the first-board footprints are now source-controlled in PowerFinger_USB.pretty/; the remaining blockers are measured hardware evidence, not KiCad ERC/DRC drift.
  • Local fabrication-review outputs are generated by scripts/generate-usb-hub-fabrication-review.py under build-kicad/USB-HUB/fabrication-review/. FABRICATION-OUTPUTS.md records the current output hashes and the active-BOM/POS review status; those outputs are reproducible review artifacts, not source-controlled fabrication release proof.

Hard Constraints

  • Native USB is load-bearing for the hub. Do not insert an unnecessary USB-UART bridge into the normal data path.
  • Treat PLACEMENT-CONSTRAINTS.md as a blocker list.
  • Connector mechanical support matters as much as the schematic.
  • VREG_3V3 must be generated by the captured board power tree, not borrowed from a hidden dev-board assumption.
  • The current P0 path locks J1, U2, and D1; those exact parts are now represented in schematic and PCB source.
  • usb_and_power.kicad_sch now contains the locked USB/power symbols plus the R1A / R1B 22R native-USB decision.
  • The first PCB source captures connector reinforcement geometry, but that is not a substitute for the retention evidence in ../CONNECTOR-RETENTION-VERIFY.md.
  • Close ../FIRST-BOARD-CHECKLIST.md and ../CONNECTOR-RETENTION-VERIFY.md before treating this lane as hardware-ready.

Parts

28
QtyValueFootprintReferences
2100nFPowerFinger_USB:C_0402_1005Metric_FirstBoardC1A, C1B
222RPowerFinger_USB:R_0402_1005Metric_FirstBoardR1A, R1B
2shell clampPowerFinger_USB:MountingHole_1.4mm_ClampMH1, MH2
110kPowerFinger_USB:R_0402_1005Metric_FirstBoardR3
110uFPowerFinger_USB:C_0603_1608Metric_FirstBoardC2
11kPowerFinger_USB:R_0402_1005Metric_FirstBoardR2
11uFPowerFinger_USB:C_0402_1005Metric_FirstBoardC4
11uFPowerFinger_USB:C_0603_1608Metric_FirstBoardC3
13V3PowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP2
1BOOTPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP7
1BOOT_SERVICEPowerFinger_USB:PadActuated_Boot_ServiceSW1
1D+ trace accessPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP5
1D- trace accessPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP4
1DNI USB_D+ no-netPowerFinger_USB:C_0402_1005Metric_FirstBoardC6
1DNI USB_D- no-netPowerFinger_USB:C_0402_1005Metric_FirstBoardC5
1ENPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP6
1ESP32-S3-MINI-1-N8PowerFinger_USB:ESP32-S3-MINI-1-N8_FirstBoardU1
1GNDPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP3
1RT9080-33GJ5PowerFinger_USB:SOT-23-5_FirstBoardU2
1RXPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP9
1SOFNG USB-05PowerFinger_USB:USB_A_Plug_SOFNG_USB-05J1
1TXPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP8
1USBLC6-2SC6PowerFinger_USB:SOT-23-6_FirstBoardD1
1VBUSPowerFinger_USB:TestPoint_Pad_D1.0mm_FirstBoardTP1
1greenPowerFinger_USB:LED_0402_1005Metric_FirstBoardLED1

More from fluffyrabbot/powerfinger

1
  • 4 layers43 × 18 mmR30 oled none none, the printed circuit board in 3D

    R30 oled none none

    fluffyrabbot/powerfinger

    Open-source assistive input devices. Fingertip rings and pen wands as BLE HID mice. $9 BOM. CERN-OHL-S 2.0 hardware, MIT software.

    27 parts

Similar boards

  • 4 layers50.8 × 22.9 mmZb1, the printed circuit board in 3D

    Zb1

    danindiana/zemizdat

    This folder holds the complete electronic CAD for the ZB-1 development board:

    71 partsApache-2.0
  • 2 layers79 × 30 mmLIA, the printed circuit board in 3D

    LIA

    JGAguado/LIA

    Low-power pet tracking platform built around Meshtastic and LoRa mesh networking

    81 parts29
  • 2 layers40 × 50 mmSsus, the printed circuit board in 3D

    Ssus

    ldab/dude-dirty-usb-disconnect

    DUDE, Dirty USB Disconnect. ESP32-S3 host powered, managed 2x USB Hub

    46 parts1WTFPL
  • 2 layers35.4 × 70.6 mmPCB ESP32, the printed circuit board in 3D

    PCB ESP32

    maticas-tech-sas/maticas-data-logger

    Want to send measurements back to a server through HTTP or MQTT? This is about it along with the PCB design, 3D box and support for data storage with maticas API

    45 parts1
  • 2 layers36 × 23 mmZigbee toy, the printed circuit board in 3D

    Zigbee toy

    cristianchelu/oddware

    Personal collection of projects that don't deserve their own repositories.

    73 parts2AGPL-3.0

Questions

How big is the Usb hub PCB?

It measures 54 × 26 mm and has 2 copper layers, 1 mm thick.

What parts does the Usb hub use?

28 parts, built around the ESP32-S3-MINI-1-N8, RT9080-33GJ5 and USBLC6-2SC6. 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 Usb hub KiCad files?

From the fluffyrabbot/powerfinger repository on GitHub, at the commit this page was made from: the board is hardware/shared/USB-HUB/kicad/usb_hub.kicad_pcb and its schematic hardware/ring/R30-OLED-NONE-NONE/kicad/r30_oled_none_none.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Usb hub design in my own project?

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