
Duet switch tester
ai03-2725/duet-switch-tester
Switch tester designed for two of each switch for display and testability

A basic 40% ortholinear keyboard that uses vim keys for arrows
Avyortho is an open-source printed circuit board by avycado13, from the avycado13/avyortho repository on GitHub. It is a 2-layer board of 230 × 78 mm with 102 parts on 73 nets, routed with 2,146 tracks and 187 vias.
It is built around the 1N4148W, CPG151101S11-16 and CRCW0805806KFKEAC. Its parts include 47 diodes, 47 switches, 2 resistors and 1 IC. It belongs with the keyboards and input boards and the nRF52 and nRF5x boards of this library.
A basic 40% ortholinear keyboard that uses vim keys for arrows

I wanted to make a nice keyboard and I wanted one that could be small and easy to carry in my backpack. I decided on an ortholinear because I figured they would be a lot easier to build and route because the keys aren't spaced weirdly. I decided to use ZMK for my firmware because there are nice tools to let you export your JSON from keyboard layout editor and turn it into firmware for ZMK. I used a Seeed Studios XIAO nRF52840 Plus for the microcontroller because it had enough GPIO pins and because it could do batteries without external devices needed
I chose to go with a minimal 4x12 setup so I could fit it in my bag and to make it cooler. I will probably do keys like function keys with a layer and a modifier key for other functionality. In my next keyboard, I might consider adding RGB lights with something like a sk6812-mini. I will probably mainly use this keyboard on the go and then build a bigger keyboard as my home keyboard.
I used ZMK and made the config using ZMK Shield Wizard. It is built with GitHub Actions on every commit.
PCB components (designators and footprints in production/bom.csv). Prices below are USD snapshots from the selected offers in ordering/, not live quotes; check price, stock, shipping, and tax before ordering.
| Part | Qty on PCB | Order qty | Part / supplier link | Unit price | Order cost |
|---|---|---|---|---|---|
| 1N4148W SMD diodes (D1–D48, except D44) | 47 | 50 | LCSC C241939 | $0.037 | $1.85 |
| 806 kΩ 0805 resistor (R1) | 1 | 1 | Vishay CRCW0805806KFKEA — Mouser 71-CRCW0805-806K-E3 | $0.10 | $0.10 |
| 2 MΩ 0805 resistor (R2) | 1 | 1 | TE CPF0805B2M0E — Mouser 279-CPF0805B2M0E | $0.25 | $0.25 |
| Kailh MX hotswap sockets (SW1–SW48, except SW44) | 47 | 3 × 20-pack | Adafruit 4958 (Mouser 485-4958) | $4.95 / pack | $14.85 |
| Seeed XIAO nRF52840 Plus (U3) | 1 | 1 | Mouser 713-102010672 | $10.40 | $10.40 |
| PCB component total | $27.45 |
R2's selected offer is an alternative to the BOM's CRCW08052M00FKED (same 2 MΩ value and 0805 size); confirm specifications before substituting. The sockets are priced per 20-pack, not individually. The total excludes shipping, tax, PCB fabrication, and the following build-dependent items (no specific product or price selected):
| Qty | Value | Footprint | References |
|---|---|---|---|
| 47 | D | Diode_SMD:D_SOD-123 | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +31 |
| 47 | SW_Push_45deg | PCM_marbastlib-mx:SW_MX_HS_CPG151101S11_1u | SW1, SW2, SW10, SW11, SW12, SW13, SW14, SW15, SW16, SW17, SW18, SW19, SW20, SW21, SW22, SW23 +31 |
| 1 | 2M | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R2 |
| 1 | 806k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R1 |
| 1 | BAT | TestPoint:TestPoint_Pad_D3.0mm | TP1 |
| 1 | GND | TestPoint:TestPoint_Pad_D3.0mm | TP2 |
| 1 | LOGO | footprints:yoyo-orpheus-silkscreen | G*** |
| 1 | LOGO | footprints:neocat-silkscreen | G*** |
| 1 | XIAO-nRF52840-Plus-SMD | Seeed Studio XIAO Series Library:XIAO-nRF52840-Plus-SMD | U3 |
The 101 most common of 102 parts.
It measures 230 × 78 mm and has 2 copper layers, 1.6 mm thick.
102 parts, built around the 1N4148W, CPG151101S11-16 and CRCW0805806KFKEAC. 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 avycado13/avyortho repository on GitHub, at the commit this page was made from: the board is avyortho.kicad_pcb and its schematic avyortho.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 avycado13 before reusing the design.

ai03-2725/duet-switch-tester
Switch tester designed for two of each switch for display and testability


ixmachine/qwail56
A split ergonomic mechanical keyboard based on Lily58, crkbd and Sofle.


dubnubdubnub/Giris
open source 32 key/half (64 total) analog TMR split ortholinear keyboard w/ 8kHz USB HS



dudgeon/count-fidget
A lightweight, rechargeable two-key fidget that counts clicks, resets with a second key, and remembers its count while asleep or unpowered. Designed for a home-printed enclosure and professionally assembled electronics.