Skip to the content
4 layers91 × 91 mmOpen micro sister, the printed circuit board in 3D

Open micro sister

TomBonness/open-micro

Open-source USB/BLE desktop programming controller with RGB status integration

Size
91 × 91 mm
Copper layers
4
Thickness
1.6 mm
Parts
93
Nets
77
Pads
309
Tracks, vias
1,317, 134
Pours
5
Routed
Yes
KiCad
KiCad 8 (file 20240108)
Created
17 Jul 2026
Updated
4 Aug 2026

Overview

Open micro sister is an open-source printed circuit board by TomBonness, from the TomBonness/open-micro repository on GitHub. It is a 4-layer board of 91 × 91 mm with 93 parts on 77 nets, routed with 1,317 tracks and 134 vias.

It is built around the E73-2G4M08S1C, BQ24074RGTR and SN74AHCT1G125DBVR(UMW), with the EVQP7A01P, PCM12SMTR and S2B-PH-K-S(LF)(SN) among its other parts. Its parts include 30 capacitors, 17 resistors, 9 diodes, 6 ICs and 3 connectors. It belongs with the radio and wireless boards of this library.

Main components

9

README

README.md

Open Micro

Open Micro is an original open-source 96 × 96 mm desktop programming controller. Its industrial stack uses a CNC 6061-T6 aluminum bottom, a continuous neutral-frosted polycarbonate light-carrying wall, and a matte-black control PCB as the exposed structural top. A lower sister PCB carries the MCU, power, USB, RF, and eight hidden wall emitters.

This repository describes an unqualified two-board first article. Automated source, protocol, host, firmware, fabrication, CAD, collision, and artifact checks are design evidence only. No fabricated unit has completed docs/qualification.md; do not represent the design as production-qualified.

Features

  • EBYTE E73-2G4M08S1C nRF52840 module; USB keyboard/vendor HID and encrypted bonded BLE keyboard/custom GATT.
  • Twelve five-pin PCB-mount MX switches with underside hot-swap sockets, one push encoder, and one exposed capacitive touch control.
  • Encoder CCW/CW/press IDs 13–15; consumer volume down/up/mute fallback with no subscribed host; five-second encoder power-up hold clears BLE bonds.
  • Thirteen logical reverse-mount RGB channels plus eight hidden inward-facing perimeter emitters: twenty-one physical emitters, thirteen host-addressable channels.
  • Plate-free 96 × 96 mm matte-black top PCB and 91 × 91 mm courtyard-derived sister PCB joined by a 24-position Hirose DF40 connector.
  • CNC dark-clear-anodized aluminum bottom, removable neutral-frosted wall, 17.0 mm pre-keycap stack, and vendor-made uniform-profile dark PBT keycaps.
  • Device protocol 1.1 with exact control IDs 0–15; strict Rust daemon, CLI, simulator, and generated IPC validators.
  • OMP extension mapping lifecycle states to agent lights and encoder rotation to selected-session thinking level. No hardware prompt-injection path.
  • Deterministic dual-board KiCad fabrication exports, CadQuery STEP/GLB/3MF exports, collision/clearance reports, and SHA-256 manifests.

Start without hardware

Build the host tools, then run the simulator and daemon in separate terminals:

sh
cd host
cargo build --locked --workspace
./target/debug/open-micro-sim
sh
cd host
./target/debug/open-microd --transport sim
./target/debug/open-microctl doctor
./target/debug/open-microctl led set agent-1 --effect breathe --primary '#4D8DFF' --period 1400 --ttl 15

The simulator device endpoint is 127.0.0.1:47950; its control endpoint is 127.0.0.1:47951. The daemon creates a private local socket at $TMPDIR/open-micro-$UID.sock on macOS, $XDG_RUNTIME_DIR/open-micro.sock on Linux when available, and \\.\pipe\open-micro on Windows.

Generate and check

sh
python3 protocol/generate.py --check
python3 hardware/generate.py --check
python3 hardware/check.py
python3 firmware/check.py
cargo test --manifest-path host/Cargo.toml --workspace

python3 hardware/export.py --output hardware/generated/fabrication-release
.venv-cad/bin/python mechanical/export.py --output mechanical/generated

The hardware export contains independent top/ and sister/ manufacturing jobs. The mechanical export contains aluminum-bottom and frosted-wall production solids, two PCB envelopes, vendor keycap fit references, a validated full assembly, GLB/3MF, and 2200 × 1600 hero/cutaway renders. Vendor keycap references are not printable production keycaps.

Repository map

PathPurpose
protocol/Canonical 20-byte device protocol 1.1, local IPC schema, generator, and fixtures
hardware/Two-board KiCad sources, electrical/interconnect manifests, routes, fabrication exporter, and checks
firmware/Pinned ZMK board/shield, Open Micro module, tests, and UF2 bootloader configuration
host/Rust protocol crate, daemon, CLI, and simulator
integrations/omp/OMP lifecycle, command-light, selection, and encoder-thinking adapter
integrations/generic/Standalone newline-delimited JSON state producer
mechanical/Shared enclosure/board stack contract, CadQuery sources, production exporter, and checks
docs/Assembly, flashing, setup, SDK, inspection, and first-article qualification
releases/Deterministic versioned release builder

Documentation

  1. docs/assembly.md — dual-board ordering, vendor keycaps, and plate-free physical assembly.
  2. docs/flashing.md — initial SWD recovery, UF2 updates, ZMK, pairing, and encoder bond recovery.
  3. docs/setup.md — daemon, CLI, simulator, platform permissions, and OMP installation.
  4. docs/sdk.md — local IPC and raw protocol 1.1 contracts.
  5. docs/inspection.md — electrical, optical, mechanical, RF, and control inspection.
  6. docs/qualification.md — explicitly unperformed first-article evidence gate.

Canonical identity

The first article uses provisional USB identity 0x1209:0x4D50, device protocol 1.1, vendor HID report ID 5, and BLE name Open Micro. The VID/PID is not an assigned production identity. Obtain an appropriate assignment before distribution and change only the canonical protocol manifest before regenerating every consumer.

Licenses

Hardware and mechanical sources: CERN-OHL-S-2.0. Software: Apache-2.0. Documentation: CC-BY-4.0. Third-party notices remain under LICENSES/ and generated release notices. See LICENSE, NOTICE, and REUSE.toml.

Parts

93
QtyValueFootprintReferences
15100nFCapacitor_SMD:C_0402_1005MetricC12, C13, C15, C18, C19, C20, C34, C36, C37, C38, C39, C40, C41, C42, C43
8SK6812MINI-E side-facingOpenMicro:SK6812MINI-E_SideEmitterD14, D15, D16, D17, D18, D19, D20, D21
4M2 mounting holeMountingHole:MountingHole_2.4mm_M2H1, H2, H3, H4
24.7uF SYSCapacitor_SMD:C_0402_1005MetricC5, C17
1100k CHG pullupResistor_SMD:R_0402_1005MetricR10
1100k NPN offResistor_SMD:R_0402_1005MetricR13
1100k PGOOD pullupResistor_SMD:R_0402_1005MetricR11
1100k PNP offResistor_SMD:R_0402_1005MetricR15
1100k boost lowResistor_SMD:R_0402_1005MetricR17
110k EN1 defaultResistor_SMD:R_0402_1005MetricR12
110k TSResistor_SMD:R_0402_1005MetricR5
110nF CsCapacitor_SMD:C_0402_1005MetricC14
110uF VDDCapacitor_SMD:C_0402_1005MetricC8
112pF feed-forwardCapacitor_SMD:C_0402_1005MetricC11
11M battery highResistor_SMD:R_0402_1005MetricR6
11uF SYSCapacitor_SMD:C_0402_1005MetricC4
11uF touchCapacitor_SMD:C_0402_1005MetricC16
120pF XL1Capacitor_SMD:C_0402_1005MetricC6
120pF XL2Capacitor_SMD:C_0402_1005MetricC7
122uF SYSCapacitor_SMD:C_1206_3216MetricC3
122uF SYS bulkCapacitor_SMD:C_1206_3216MetricC31
122uF boost inCapacitor_SMD:C_1206_3216MetricC9
122uF boost outCapacitor_SMD:C_1206_3216MetricC10
13.16k 1% ILIMResistor_SMD:R_0402_1005MetricR4
13.6k 1% ISETResistor_SMD:R_0402_1005MetricR3
1330R RGBResistor_SMD:R_0402_1005MetricR9
1330k battery lowResistor_SMD:R_0402_1005MetricR7
14.7k touch seriesResistor_SMD:R_0402_1005MetricR8
14.7uF BAT localCapacitor_SMD:C_0402_1005MetricC35
14.7uF VBUS localCapacitor_SMD:C_0402_1005MetricC1
147k USB auto baseResistor_SMD:R_0402_1005MetricR14
15.1k CC1Resistor_SMD:R_0402_1005MetricR1
15.1k CC2Resistor_SMD:R_0402_1005MetricR2
15V_LEDTestPoint:TestPoint_Pad_D1.0mmTP_BOT5
1750k boost highResistor_SMD:R_0805_2012MetricR16
1AT42QT1010-TSHRPackage_TO_SOT_SMD:SOT-23-6U5
1BATTestPoint:TestPoint_Pad_D1.0mmTP_BOT6
1BC856A PNPPackage_TO_SOT_SMD:SOT-23Q1
1BQ24074RGTRPackage_DFN_QFN:VQFN-16-1EP_3x3mm_P0.5mm_EP1.68x1.68mmU2
1CHG_SYSTestPoint:TestPoint_Pad_D1.0mmTP_BOT2
1DF40HC(4.0)-24DP-0.4V(51)OpenMicro:DF40HC-4.0-24DP-0.4V_24JBOT
1E73-2G4M08S1COpenMicro:E73-2G4M08S1CU1
1ENCODER_GROUPTestPoint:TestPoint_Pad_D1.0mmTP_BOT14
1EVQP7A01POpenMicro:EVQP7A01PSW14
1GNDTestPoint:TestPoint_Pad_D1.0mmTP_BOT7
1MMBT3904 NPNPackage_TO_SOT_SMD:SOT-23Q2
1MX_GROUPTestPoint:TestPoint_Pad_D1.0mmTP_BOT13
1NLCV32T-100K-EF 10uHInductor_SMD:L_1210_3225MetricL1
1PCM12SMTRButton_Switch_SMD:SW_SPDT_PCM12SW13
1Q13FC13500004 32.768kHzCrystal:Crystal_SMD_3215-2Pin_3.2x1.5mmY1
1RESETTestPoint:TestPoint_Pad_D1.0mmTP_BOT8
1RGB_DATATestPoint:TestPoint_Pad_D1.0mmTP_BOT11
1RGB_RETURNTestPoint:TestPoint_Pad_D1.0mmTP_BOT12
1S2B-PH-K-S(LF)(SN)Connector_JST:JST_PH_S2B-PH-K_1x02_P2.00mm_HorizontalJ2
1SMD1206P075TFFuse:Fuse_1206_3216MetricF1
1SN74AHCT1G125DBVRPackage_TO_SOT_SMD:SOT-23-5U4
1SWCLKTestPoint:TestPoint_Pad_D1.0mmTP_BOT10
1SWDIOTestPoint:TestPoint_Pad_D1.0mmTP_BOT9
1SYS_SWTestPoint:TestPoint_Pad_D1.0mmTP_BOT3
1TC2030-NLConnector:Tag-Connect_TC2030-IDC-NL_2x03_P1.27mm_VerticalJ3
1TOUCH_OUTTestPoint:TestPoint_Pad_D1.0mmTP_BOT15
1TPS22919DCKRPackage_TO_SOT_SMD:SOT-363_SC-70-6U6
1TPS61023DRLRPackage_TO_SOT_SMD:SOT-563U3
1TYPE-C-31-M-12Connector_USB:USB_C_Receptacle_HRO_TYPE-C-31-M-12J1
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6D22
1VBUSTestPoint:TestPoint_Pad_D1.0mmTP_BOT1
1VDDTestPoint:TestPoint_Pad_D1.0mmTP_BOT4
1XAL4020-102MEC 1uHOpenMicro:XAL4020L2

More from TomBonness/open-micro

1
  • 4 layers96 × 96 mmOpen micro top, the printed circuit board in 3D

    Open micro top

    TomBonness/open-micro

    Open-source USB/BLE desktop programming controller with RGB status integration

    52 parts

Similar boards

  • 4 layers118 × 76 mmSmart led badge, the printed circuit board in 3D

    Smart led badge

    zgeez/Pixel-Badge

    Wearable 32x32 LED badge with Zephyr firmware, BLE control, passive NFC, and a Flutter Android app, built around a custom nRF52840 PCB.

    1,236 partsMIT
  • 4 layers74 × 90 mmBay node, the printed circuit board in 3D

    Bay node

    kartben/hw-testing-rack

    3D-printed, tilted test shelf for 16 dev boards: sliding drawers, per-bay ESP32-S3 running Zephyr (USB/IP, power switching, metering), KiCad PCBs, OpenSCAD parts, BOM and an interactive 3D viewer

    135 parts
  • 4 layers61.8 × 79.8 mmOwl mainboard, the printed circuit board in 3D

    Owl mainboard

    danieltyukov/owltunes

    Owl-shaped Spotify remote for your desk and pocket: ESP32-S3 firmware, LVGL UI, KiCad PCB, 3D-printed enclosure, and owl v0 on the Waveshare AMOLED kit

    107 partsMIT
  • 2 layers430 × 118.4 mmV2, the printed circuit board in 3D

    V2

    Jaydosu/V2

    try

    265 parts
  • 2 layers42.3 × 101.1 mmSTM32F103 DEV BOARD, the printed circuit board in 3D

    STM32F103 DEV BOARD

    laforestlabs/KiCraft

    KiCad PCB automation toolkit — placement, routing, scoring, and experiment management

    20 parts
  • 4 layers60 × 36 mmCamera Project, the printed circuit board in 3D

    Camera Project

    Raphi25/Camera-Project

    This project investigates the development of a low-cost wearable camera system intended to support caregivers by capturing images throughout the wearer's daily life.

    132 parts
  • 2 layers45.5 × 46 mmChipsat v1, the printed circuit board in 3D

    Chipsat v1

    noellayang/chipsat-v1

    Custom ESP32-C3 power-management testbed for small satellite firmware experiments

    69 parts

Questions

How big is the Open micro sister PCB?

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

What parts does the Open micro sister use?

93 parts, built around the E73-2G4M08S1C, BQ24074RGTR, SN74AHCT1G125DBVR(UMW) and EVQP7A01P. 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 Open micro sister KiCad files?

From the TomBonness/open-micro repository on GitHub, at the commit this page was made from: the board is hardware/kicad/open-micro-sister.kicad_pcb and its schematic hardware/kicad/open-micro-sister.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Open micro sister design in my own project?

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