
Switch
byrantech/laptop
anyon_e, a highly integrated, high end, open source laptop. Attempt the impossible.

A macropad for controlling Claude Code and Codex sessions. The hardware design is currently complete; the build is a work in progress.
Agentboard is an open-source printed circuit board by YakshithK, from the YakshithK/Agentboard repository on GitHub. It is a 2-layer board of 41 × 57 mm with 6 parts on 14 nets, routed with 52 tracks and 1 via.
Its parts include 4 switches, 1 IC and 1 connector.
A macropad for controlling Claude Code and Codex sessions. The hardware design is currently complete; the build is a work in progress.

| Top | Bottom |
|---|---|
![]() | ![]() |
The board is built around the XIAO RP2040, three push buttons, an Alps EC11 rotary encoder with switch, and a 128x32 SSD1306 OLED connected over I2C.
| Schematic | PCB Layout |
|---|---|
![]() | ![]() |
Full machine-readable list: BOM.csv
| Item | Reference | Qty | Part | Notes |
|---|---|---|---|---|
| 1 | U1 | 1 | Seeed Studio XIAO RP2040 | RP2040-based USB microcontroller module |
| 2 | SW1-SW3 | 3 | MX-style mechanical switch | Any Cherry MX compatible switch |
| 3 | SW4 | 1 | Alps EC11E rotary encoder | With integrated push switch, vertical, 20mm shaft |
| 4 | J1 | 1 | 0.91" SSD1306 OLED | 128x32, I2C, 4-pin header |
| 5 | PCB1 | 1 | AgentBoard PCB | 2-layer, order from JLCPCB/PCBWay |
| 6 | KN1 | 1 | Rotary encoder knob | 6mm D-shaft, optional |
| 7 | KC1-KC3 | 3 | 1u keycaps | Cherry MX profile |
I always wanted an easy way to control my sessions and having a small macropad definitely doesn't make a substantial decrease in ease of use however it tricks my mind into making it seem very effortless, compared to using an entire keyboard. Just 3-4 keys!
I really wish to add bluetooth support and maybe even wifi. Possibly turning this into a pocket agent that you can take with you and allows you to control your sessions remotely. However this isn't much different from the Claude/GPT app so I need to narrow the scope down a little more. Another direction I was looking into was a desktop buddy. Need to explore more.
| Path | Purpose |
|---|---|
README.md | Project overview, features, motivation, and this repository map |
BOM.csv | Bill of materials |
firmware/readme.md | QMK build and flashing notes |
| Path | Purpose |
|---|---|
agentboard_pcb/AgentBoard.kicad_pro | KiCad project settings |
agentboard_pcb/AgentBoard.kicad_sch | Source schematic |
agentboard_pcb/AgentBoard.kicad_pcb | Source PCB layout |
| Path | Purpose |
|---|---|
CAD/AgentBoard.step | 3D CAD model in STEP format |
PCB/AgentBoard.step | 3D CAD model in STEP format |
PCB/AgentBoard.stl | 3D CAD model in STL format |
| Path | Purpose |
|---|---|
production/AgentBoard.step | STEP model bundled for fabrication |
production/AgentBoard-gerbers.zip | Zipped Gerbers + drill, ready to upload to the fab |
production/gerbers/ | Gerber plot, drill, and pick-and-place files |
production/firmware/ | QMK firmware source for flashing |
| Path | Purpose |
|---|---|
assets/schematic.png | Schematic preview |
assets/pcb.png | PCB layout preview |
assets/cad-top.png | Top-side CAD preview |
assets/cad-bottom.png | Bottom-side CAD preview |
assets/cad-w-components.png | CAD preview with components |
| Path | Purpose |
|---|---|
firmware/keyboard.json | Keyboard identity, RP2040 target, pins, layout, and enabled features |
firmware/rules.mk | QMK board, OLED, I2C, and encoder build settings |
firmware/config.h | I2C pins, OLED address/size, encoder resolution, and timeouts |
firmware/agentboard.h | Keyboard header included by QMK |
firmware/keymaps/default/keymap.c | Default keymap, custom keycodes, encoder actions, and OLED status screen |
| Qty | Value | Footprint | References |
|---|---|---|---|
| 3 | SW_Push | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW1, SW2, SW3 |
| 1 | Conn_01x04_Pin | Hack Club:SSD1306-0.91-OLED-4pin-128x32 | J1 |
| 1 | MOUDLE-SEEEDUINO-XIAO | HackClub:XIAO-Generic-Hybrid-14P-2.54-21X17.8MM | U1 |
| 1 | RotaryEncoder_Switch | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm_MountingHoles | SW4 |
It measures 41 × 57 mm and has 2 copper layers, 1.6 mm thick.
6 parts. 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.
From the YakshithK/Agentboard repository on GitHub, at the commit this page was made from: the board is agentboard_pcb/AgentBoard.kicad_pcb and its schematic agentboard_pcb/AgentBoard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask YakshithK before reusing the design.

byrantech/laptop
anyon_e, a highly integrated, high end, open source laptop. Attempt the impossible.


Jcparkyn/dpoint
Open-source digital stylus using camera tracking and inertial measurements

VoronDesign/Voron-Hardware
Cool Hardware designed by the Voron Design group

hoglet67/RGBtoHDMI
Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

Luos-io/luos_engine
Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.
