Skip to the content
PCBKitNew board
4 layers62 × 21 mmKeysatron, the printed circuit board in 3D

Keysatron is built around the STM32F405RGT6 ARM Cortex-M4 microcontroller, which features two independent USB OTG controllers: 1.

Size
62 × 21 mm
Copper layers
4
Thickness
1.6 mm
Parts
32
Nets
22
Pads
147
Tracks, vias
282, 48
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
28 Oct 2026
Updated
28 Oct 2026

Overview

Keysatron is an open-source printed circuit board by fablackner, from the fablackner/keysatron repository on GitHub. It is a 4-layer board of 62 × 21 mm with 32 parts on 22 nets, routed with 282 tracks and 48 vias.

It is built around the STM32F405RGT6, MP2451DT-LF-Z and SRV05-4, with the B5819W among its other parts. Its parts include 14 capacitors, 7 resistors, 3 ICs, 3 diodes and 3 connectors. It belongs with the STM32 boards of this library.

Main components

4

README

README.md

Keysatron

Keysatron is an inline USB-to-USB hardware adapter designed to intercept, transform, and remap USB HID keyboard input in real-time. By sitting transparently between your physical keyboard and your computer, it allows hardware-level key translation—such as converting German ISO (QWERTZ) keystrokes into Colemak ISO layout—without requiring any software, drivers, or administrative privileges on the host operating system.


Hardware Overview

Keysatron is built around the STM32F405RGT6 ARM Cortex-M4 microcontroller, which features two independent USB OTG controllers:

  1. USB OTG FS (Full-Speed): Operates as USB Host on port USB_IN (J2) to read input reports from connected USB keyboards.
  2. USB OTG HS (with embedded Full-Speed PHY): Operates as USB Device on port USB_PC (J3) to emulate a USB HID keyboard to the host PC.

Specifications

FeatureDescription
MicrocontrollerSTM32F405RGT6 (ARM Cortex-M4 @ 168 MHz, 1 MB Flash, 192 KB SRAM)
Input Port (USB_IN, J2)USB Type-A Female – USB OTG FS Host (PA11 DM, PA12 DP)
Output Port (USB_PC, J3)USB Type-A Female / Cable – USB OTG HS Device in FS mode (PB14 DM, PB15 DP)
Power SupplyMP2451DT step-down buck converter (5 V VBUS to 3.3 V core rail)
Oscillator16 MHz external crystal (HSE)
ESD ProtectionSRV05-4 transient voltage suppressors on USB data lines
Status LEDsRed LED (D1): Power indicator (3.3 V rail)
Green LED (D3): Status / activity indicator (GPIO PA0)
Debug Header5-pin 2.54 mm SWD header (J1)

SWD Header Pinout (J1)

The board provides a 5-pin single-row header (J1, 2.54 mm pitch) for programming and debugging via SWD:

text
[ 1: GND ] [ 2: NRST ] [ 3: CLK ] [ 4: IO ] [ 5: 3.3V ]
PinLabelSTM32 PinFunction
1GNDVSS (Pins 12, 18, 60, 63)Ground
2NRSTNRST (Pin 7)Active-low system reset
3CLKPA14 (Pin 49)SWD Clock (SWCLK)
4IOPA13 (Pin 46)SWD Data (SWDIO)
53.3VVDD (Pins 1, 13, 19, 32, 48, 64)3.3 V Power rail

Connecting to an ST-LINK / Nucleo Debugger

When using the built-in ST-LINK/V2-1 on an STM32 Nucleo-64 board (CN4 header):

[!IMPORTANT] Remove the two jumpers on CN2 on the Nucleo board to disconnect the debugger from the onboard microcontroller and direct SWD lines to header CN4.

Note that CN4 Pin 1 (VDD_TARGET) is a voltage-sensing line and does not power the target. Power Keysatron via USB or connect 3V3 from the Nucleo power header (CN6 Pin 4) to Keysatron J1 Pin 5.

Wiring between Nucleo CN4 and Keysatron J1:

Nucleo CN4 PinNucleo FunctionWire to Keysatron J1 PinKeysatron Function
Pin 1VDD_TARGETPin 53.3V
Pin 2SWCLKPin 3CLK
Pin 3GNDPin 1GND
Pin 4SWDIOPin 4IO
Pin 5NRSTPin 2NRST

Repository Contents

  • keysatron.kicad_pcb – KiCad PCB layout (4-layer board)
  • keysatron.sch – KiCad schematic
  • keysatron.pro – KiCad project configuration
  • keysatron.csv – Bill of Materials (BOM) with LCSC component part numbers
  • assembly/ – Pick-and-place component position files (keysatron-all-pos.csv) and BOM (keysatron_bom.csv) for automated assembly
  • gerber/ – Gerber fabrication files and drill files ready for PCB manufacturing (keysatron_gerber.zip)

Firmware

The companion firmware for this board is maintained in the keysatron-firmware repository.

Parts

32
QtyValueFootprintReferences
5100nCapacitor_SMD:C_0402_1005MetricC6, C7, C8, C9, C10
212pCapacitor_SMD:C_0402_1005MetricC13, C14
21kResistor_SMD:R_0603_1608MetricR5, R6
22u2Capacitor_SMD:C_0603_1608MetricC11, C12
2USBConnector_USB:USB_A_Molex_67643_HorizontalJ2, J3
1100kResistor_SMD:R_0603_1608MetricR1
1100nCapacitor_SMD:C_0603_1608MetricC1
110uCapacitor_SMD:C_1206_3216MetricC4
1120kResistor_SMD:R_0603_1608MetricR2
116MhzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mmY1
12.2uInductor_SMD:L_Sunlord_MWSA0518_5.4x5.2mmL1
133pCapacitor_SMD:C_0603_1608MetricC3
139kResistor_SMD:R_0603_1608MetricR4
147Resistor_SMD:R_0402_1005MetricR7
14u7Capacitor_SMD:C_1206_3216MetricC2
14u7Capacitor_SMD:C_0603_1608MetricC5
168kResistor_SMD:R_0603_1608MetricR3
1B5819WDiode_SMD:D_SOD-123D2
1GREENDiode_SMD:D_0603_1608MetricD3
1MP2451DT-LF-ZPackage_TO_SOT_SMD:SOT-23-6U1
1REDDiode_SMD:D_0603_1608MetricD1
1SRV05-4Package_TO_SOT_SMD:SOT-23-6U2
1STM32F405RGT6Package_QFP:LQFP-64_10x10mm_P0.5mmU3
1SWDConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ1

Questions

How big is the Keysatron PCB?

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

What parts does the Keysatron use?

32 parts, built around the STM32F405RGT6, MP2451DT-LF-Z, SRV05-4 and B5819W. 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 Keysatron KiCad files?

From the fablackner/keysatron repository on GitHub, at the commit this page was made from: the board is keysatron.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Keysatron design in my own project?

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

Similar boards

  • 4 layers80 × 50 mmHadesNT, the printed circuit board in 3D

    HadesNT

    pms67/HadesFCS

    Complete flight control system designed from scratch. Hardware designed with KiCad.

    103 parts1kBSD-3-Clause
  • 4 layers99.2 × 98.9 mmMicromouse kicad, the printed circuit board in 3D

    Micromouse kicad

    tadzio8425/Micromouse

    Micromouse developed by the IEEE Robotics and Automation Society chapter of the Universidad de Los Andes, Bogotá (2023-2024).

    102 partsMIT
  • 2 layers70 × 100 mmESP12FPSU backup 27-11, the printed circuit board in 3D

    ESP12FPSU backup 27-11

    R8bert/esp32-psu

    A smart, programmable lab power supply controlled by an ESP32 microcontroller. This project combines hardware design and firmware development to provide precise, remote control over voltage and current using a…

    52 parts
  • 4 layers55 × 55 mmRBoard, the printed circuit board in 3D

    RBoard

    pms67/LittleBrain-STM32F4-Sensorboard

    STM32F4-based PCB interfacing with a variety of sensors.

    90 parts339
  • 2 layers50 × 66 mmBluePhil, the printed circuit board in 3D

    BluePhil

    pms67/BluePhil

    STM32-based development board with various sensors.

    106 parts53MIT
  • 4 layers121.6 × 79.8 mmUsbSound, the printed circuit board in 3D

    UsbSound

    SteveSyfuhs/UsbSound

    A custom-made USB sound card for Balanced Audio

    91 parts12MIT