

Ember
32Key Hall Effect Keyboard for Gaming
- Size
- 139 × 113.5 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 112
- Nets
- 86
- Pads
- 391
- Tracks, vias
- 1,021, 526
- Pours
- 37
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 9 Aug 2023
- Updated
- 30 Aug 2026
Overview
Ember is an open-source printed circuit board by kenyoshizoe, from the kenyoshizoe/ember repository on GitHub, published under the MIT licence. It is a 2-layer board of 139 × 113.5 mm with 112 parts on 86 nets, routed with 1,021 tracks and 526 vias.
It is built around the SLSS49E-3, ADG708BRUZ-REEL7 and AMS1117-3.3, with the M24C64-RMN6TP and SRV05-4 among its other parts. Its parts include 39 ICs, 19 capacitors, 8 resistors, 2 connectors and 2 switches. It belongs with the STM32 boards of this library.
Main components
5SLSS49E-3
SOT-23-40℃~+150℃ 1.5mA 3V~12V 5mA Built-in Schmitt trigger Omnipolar SOT-23 Linear Hall Sensors ROHSSlkorHall SwitchesADG708BRUZ-REEL7
TSSOP-16-2.5V~2.5V、1.8V~5.5V -40℃~+125℃ 1 14ns 25ns 25ns 3Ω 55MHz 8:1 96pF TSSOP-16 Analog Switches, Multiplexers ROHSAnalog DevicesAnalog Switches, MultiplexersAMS1117-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) RegulatorsM24C64-RMN6TP
SOIC-8-40℃~+85℃ 1.8V~5.5V 1MHz 2.5mA 200 Years 3uA 4,000,000 Cycles 5ms 64Kbit Hardware write protection function、Built-in power-on reset (POR)、Built-in error correction code (ECC) function I2C SOIC-8 EEPROM ROHSSTMicroelectronicsEEPROMSRV05-4
SOT-23-6L-55℃~+150℃ 15V 1pF 4A 5V 5uA 6V 80W ESD Four channels IEC 61000-4-2、IEC 61000-4-5 Unidirectional SOT-23-6L ESD and Surge Protection (TVS/ESD) ROHShongjiachengESD And Surge Protection (TVS/ESD)
README
README.mdEmber
Overview
32Key Hall Effect Keyboard for Gaming.

Web Configuration Tool

Meet Ember’s control room in the browser. The Next.js‑powered configurator lets you:
- Configuring keymaps with instant write-backs over Web Serial
- Watch real-time hall-effect telemetry and dial in rapid trigger thresholds
- Fire off calibration, DFU, and other maintenance commands in a single click
Launch (Chrome / Edge recommended): https://ember.kenyo.dev
https://x.com/m3ssy_ken/status/1974076255810269626
PCB
pcb/ember
基板はKiCAD7で制作され、USBコネクタを除く全てのパーツはJLCPCBのPCBAサービスで実装することができます。 TypeCコネクタは5077CR-16-SMC2-BK-TRを用いることができます。
pcb was designed with KiCAD 7. All of components except USB Connector is available at jlcpcb pcba service.

Case
pcb/ember_bottom_plate, pcb/ember_top_plate
Communication
このキーボードはHID&CDC複合デバイスとして認識されます。 各種設定はCDCから行うことができます。
This keyboard is recognized as HID&CDC composite device. Configuration (Keymapping, Calibration, Rapid Trigger, etc...) can be done from CDC.
Packet Structure
Query (Read)
| Bytes | Description |
|---|---|
| 0x00 | 0 |
| 0x01~0x02 | Address |
| 0x03 | Length |
Response (Read)
| Bytes | Description |
|---|---|
| 0x00 | Success=0 Failed=1 |
| 0x01~0x02 | Address |
| 0x03 | Length |
| 0x04~(Length+4) | Data |
Query (Write)
| Bytes | Description |
|---|---|
| 0x00 | 1 |
| 0x01~0x02 | Address |
| 0x03 | Length |
| 0x04~(Length+4) | Data |
Response (Write)
| Bytes | Description |
|---|---|
| 0x00 | Success=0 Failed=1 |
| 0x01~0x02 | Address |
| 0x03 | Length |
これらのクエリ/レスポンスをCOBSを用いてエンコード/デコードしてから送受信します。 Send these query with encoding/decoding with COBS.
Address Map
| Address | Description | W/R |
|---|---|---|
| 0x0000-0x0004 | Key0 Config | W/R |
| 0x0005-0x0009 | Key1 Config | W/R |
| 0x000A-0x000E | Key2 Config | W/R |
| ... | ... | ... |
| 0x009B-0x009F | Key31 Config | W/R |
| 0x00A0-0x00FF | Reserved | - |
| 0x0100 | Key1 MIDI Note Number | W/R |
| 0x0101 | Key2 MIDI Note Number | W/R |
| 0x0102 | Key3 MIDI Note Number | W/R |
| ... | ... | ... |
| 0x0120-0x0FFF | Reserved | - |
| 0x1000-0x1003 | Key0 Calibaration Data | R |
| 0x1004-0x1007 | Key1 Calibaration Data | R |
| ... | ... | ... |
| 0x107B-0x107F | Key31 Calibration Data | R |
| 0x1080-0x1FFF | Reserved | - |
| 0x2000 | Key0 Push distance | R |
| 0x2001 | Key1 Push distance | R |
| ... | ... | ... |
| 0x201F | Key31 Push distance | R |
| 0x2020-0x2FFF | Reserved | - |
| 0x3000 | Save Config | W |
| 0x3001 | Calibration (0=Disable 1=Enable) | W |
| 0x3002 | Reset Config to default | W |
| 0x3003 | Reset MCU | W |
| 0x3004 | Enter DFU | W |
| 0x3005-0xFFFF | Reserved | - |
| 0x4000 | Mode (0=DISABLED, 1=CALIBRATE, 2=KEYBAORD, 3=MIDI) | W/R |
それぞれのキーの設定は次のようになっています。 Each key config is as follows:
| Address | Description |
|---|---|
| 0x00 | key_code |
| 0x01 | key_type (0=DISABLED, 1=CALIBRATE, 2=THRESHOLD, 3=RAPID_TRIGGER) |
| 0x02 | actuation_point (0.1mm unit) |
| 0x03 | rappid_trigger_up_sensivity |
| 0x04 | rappid_trigger_down_sensivity |
それぞれのキーのキャリブレーションデータは以下のようになっています。 Each key calibration data is as follows:
| Address | Description |
|---|---|
| 0x00~0x01 | max_value |
| 0x02~0x03 | min_value |
License
Unless otherwise noted, all original content in this repository—including the firmware, web configurator, scripts, PCB design files, schematics, and case design files—is licensed under the MIT License.
This includes permission to use the design files to manufacture, distribute, and sell physical products based on those designs.
Third-party components remain subject to their respective licenses.
Parts
112| Qty | Value | Footprint | References |
|---|---|---|---|
| 32 | Hall_Sensor | Package_TO_SOT_SMD:SOT-23 | U10, U11, U12, U13, U14, U15, U16, U17, U18, U19, U20, U21, U22, U23, U24, U25 +16 |
| 32 | KeySwitch | ember:MX-1U-NoPins | H10, H11, H12, H13, H14, H15, H16, H17, H18, H19, H20, H21, H22, H23, H24, H25 +16 |
| 14 | 100n | Capacitor_SMD:C_0603_1608Metric | C1, C2, C3, C4, C8, C11, C12, C13, C14, C15, C16, C17, C18, C19 |
| 6 | MountingHole | MountingHole:MountingHole_2.2mm_M2 | H1, H2, H3, H4, H5, H6 |
| 4 | ADG708BRUZ-REEL7 | ember:SOP65P640X120-16N | IC2, IC3, IC4, IC5 |
| 2 | 10k | Resistor_SMD:R_0603_1608Metric | R5, R6 |
| 2 | 10p | Capacitor_SMD:C_0603_1608Metric | C6, C7 |
| 2 | 1k | Resistor_SMD:R_0603_1608Metric | R4, R8 |
| 2 | 5.1k | Resistor_SMD:R_0603_1608Metric | R1, R2 |
| 1 | 1.5k | Resistor_SMD:R_0603_1608Metric | R3 |
| 1 | 10n | Capacitor_SMD:C_0603_1608Metric | C5 |
| 1 | 10u | Capacitor_SMD:C_0603_1608Metric | C9 |
| 1 | 16MHz | Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm | Y1 |
| 1 | 22u | Capacitor_SMD:C_0603_1608Metric | C10 |
| 1 | 470 | Resistor_SMD:R_0603_1608Metric | R7 |
| 1 | AMS1117-3.3 | Package_TO_SOT_SMD:SOT-223-3_TabPin2 | U2 |
| 1 | BOOT | Button_Switch_SMD:SW_Push_1P1T_XKB_TS-1187A | SW1 |
| 1 | Conn_01x05_Socket | Connector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_Vertical | J2 |
| 1 | LED | LED_SMD:LED_0603_1608Metric | D1 |
| 1 | LOGO | ember:usb_logo | G*** |
| 1 | M24C64-RMN6TP | ember:SOIC127P600X175-8N | IC1 |
| 1 | RESET | Button_Switch_SMD:SW_Push_1P1T_XKB_TS-1187A | SW2 |
| 1 | SRV05-4 | Package_TO_SOT_SMD:SOT-23-6 | U1 |
| 1 | STM32F303CBTx | Package_QFP:LQFP-48_7x7mm_P0.5mm | MCU1 |
| 1 | USB_C_Receptacle_USB2.0 | Connector_USB:USB_C_Receptacle_XKB_U262-16XN-4BVC11 | J1 |
Questions
How big is the Ember PCB?
It measures 139 × 113.5 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Ember use?
112 parts, built around the SLSS49E-3, ADG708BRUZ-REEL7, AMS1117-3.3 and M24C64-RMN6TP. 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 Ember KiCad files?
From the kenyoshizoe/ember repository on GitHub, at the commit this page was made from: the board is pcb/ember/ember.kicad_pcb and its schematic pcb/ember/ember.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Ember design in my own project?
Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 4 layers304.3 × 126.9 mm

- 4 layers315 × 147.2 mm

- 2 layers303.8 × 94.2 mm

- 2 layers339.1 × 143.2 mm

- 4 layers90 × 65 mm

- 2 layers106 × 55 mm

Ioboard 2ports unisolated
OpenLightingProject/rp2040-dmxsun
RP2040-based USB DMX dongle with integrated web server
32 parts128Apache-2.0 - 2 layers138.1 × 114.3 mm

- 2 layers273.8 × 109 mm

TrueStrike42
byungyoonc/TrueStrike42
TrueStrike42 is a columnar staggered unibody split keyboard designed to maximize performance and minimize finger fatigue.
167 parts24