#keyboards #split-keyboard #lily58 #bom #shopping-list #pcbway #qmk
# Overview
Sourcing list for a **wired (TRRS) Lily58 Pro** built from bare PCBs fabbed at PCBWay. Because these are raw PCBs and not a kit, *every* component is on the table — 58 SMD diodes, 58 hotswap sockets, jacks, OLEDs, controllers, case, hardware, switches, keycaps.
Prices and stock verified **2026-08-01**. Ergonomics of the parts choice follow the conclusions already in [[Lily58 PCB Revision Comparison]] — RP2040 for wired, mid-mount USB-C, socket the controller, uniform-profile keycaps.
Rough total: **~$150 in parts**, plus **~$155 in tools** if starting from nothing. Seven vendors; consolidation notes in [[#Decisions]].
# Design
## Core electronics
| Part | Qty needed | Buy | Vendor | Product | Price |
|---|---|---|---|---|---|
| Diode 1N4148W, **SOD-123** | 58 | 100 | Adafruit | [1N4148 SMT SOD-123 Diodes – 100 Pack](https://www.adafruit.com/product/5099) | $4.95 |
| Kailh MX hotswap socket | 58 | 60 | Typeractive | [Kailh Hotswap Sockets — **MX**](https://typeractive.xyz/products/hotswap-sockets) 6× 10pk — see [[#Hot-swap socket sourcing]] | $9.00 |
| TRRS jack PJ-320A | 2 | 2 | Keebio | [TRRS PJ-320A Jack – 3.5mm](https://keeb.io/products/trrs-jack-3-5mm) | $1.00 |
| Reset tact switch | 2 | 2 | Keebio | [Reset Pushbutton Switch](https://keeb.io/products/reset-pushbutton-switch) | $1.00 |
| OLED SSD1306 0.91" 128×32 | 2 | 2 | ProtoSupplies (WA) | [OLED 0.91" 128x32 I2C White](https://protosupplies.com/product/oled-0-91-128x32-i2c-white-display/) | $7.90 |
| Mill-Max low-profile sockets | 4× 12-pin | 2 kits | Little Keyboards | [Mill-Max Ultra Low Profile Sockets](https://www.littlekeyboards.com/products/mill-max-ultra-low-profile-sockets) | $8.98 |
**Subtotal: $32.83**
⚠️ **On the Little Keyboards socket listing, select the "+ 24 Mill-Max pins" option.** The base $4.49 price is sockets only, and the standard headers that ship with Pro Micro / Elite-C boards are explicitly *incompatible* — the pins (or clipped diode legs) are what make it work. One order = 2× 12-pin sockets = one controller, so order two.
Mill-Max part cross-reference is `315-43-112-41-003000` (socket) + `3320-0-00-15-00-00-03-0` (pin). Direct from [Mouser](https://www.mouser.com/ProductDetail/Mill-Max/315-43-112-41-003000) at $3.08 ea × 4 = $12.32 if Little Keyboards is out.
## Hot-swap socket sourcing
Sockets are the most volatile line item on this list — they sell out constantly, and the two big US 100/110-packs (Divinikey, CannonKeys) are both dry as of 2026-08-03. Verified against each store's **in-stock filter**, not the product page: Shopify's raw HTML renders a hidden "Sold out" badge that reads as live, and `/products/<handle>.json` returns stale `available: true`. Both give false readings.
### In stock, US-domestic
| Vendor | Product | Pack | Price | $/socket | 58-key cost |
|---|---|---|---|---|---|
| **Typeractive** (WI) ✅ | [Kailh Hotswap Sockets — MX](https://typeractive.xyz/products/hotswap-sockets) | 10 | $1.50 | $0.150 | **$9.00** (60) |
| Boardsource ✅ | [MX Hot Swap Sockets](https://boardsource.xyz/products/mx-keyboard-hot-swap-sockets) | 10 | $2.00 | $0.200 | $12.00 (60) |
| Adafruit (NY) | [Kailh Switch Sockets MX – 20 Pack](https://www.adafruit.com/product/4958) PID 4958 | 20 | $4.95 | $0.248 | $14.85 (60) |
| Mouser (TX) | [Adafruit 4958](https://www.mouser.com/en/ProductDetail/Adafruit/4958) | 20 | $4.95 | $0.248 | $14.85 (60) |
| KeyHive | [Hotswap Sockets](https://keyhive.xyz/shop/kailh-sockets) — select **MX** | 10 | $2.50 | $0.250 | $15.00 (60) |
| Amazon FBA | `B0BVH6M5FP` — Kailh CPG151101S11 50pcs, US warehouse | 50 | $7.90 | $0.158 | $15.80 (100) |
### In stock, overseas — cheaper, and the only route to the *good* part
| Vendor | Product | Pack | $/socket | Ship |
|---|---|---|---|---|
| **PandaKB** | [Kailh MX Hotswap Sockets **CPG151101S11-16**](https://pandakb.com/shop/parts/others/kailh-mx-hotswap-sockets-cpg151101s11-16/) — 10/50/70/110/200/2000 | 70 | ~$0.07–0.12 | CN, 7–12 business days |
| splitkb | [Kailh Hotswap Sockets — MX](https://splitkb.com/products/kailh-hotswap-sockets) | 50 | €0.131 ex-VAT | NL |
| KBDfans | [Kailh PCB Socket CPG151101S11](https://kbdfans.com/products/mechanical-keyboard-switches-kailh-pcb-socket) | 500 | $0.066 | CN, ⚠️ backordered |
| Amazon | `B096WZ6TJ5` — 100pcs, China direct | 100 | $0.125 | ~2 weeks |
### ⚠️ The part-number suffix matters more than the vendor
This is the real finding. Per Kailh's own spec sheets:
- **`CPG151101S11`** (plain) — **100 insertion cycles**
- **`CPG151101S11-1` / `-16`** (Kailh "RB" / Gen2, gold-plated aviation-grade contacts) — **5,000–6,000 cycles**
A 50–60× durability difference for roughly 5% more money. Most listings just say "CPG151101S11" and don't disclose the generation — Keyboardio's listing, for example, explicitly states "rated lifetime: 100 switch swaps." **PandaKB and LCSC `C5156480` are the only sources that explicitly sell the `-16`.** For a board that gets carried around and re-tuned, that's the one worth having.
100 cycles is not as much headroom as it sounds — build, testing, and a couple of switch experiments can burn 5–10 per socket before the board is even finished.
### Confirmed sold out (verified 2026-08-03, don't waste time)
CannonKeys 110pk · Divinikey 100pk · Keyboardio 25pk · holykeebs 10pk · Chosfox · YMDK (all pack sizes) · Mecx Labs · LCSC (all three SKUs read stock 0)
**Keebio does not sell these at all** — their "[Mill-Max Hotswap Sockets](https://keeb.io/products/mill-max-hotswap-sockets)" are 0305 holtites for adding hotswap to a *non*-hotswap PCB. ==They will not fit the Lily58 Pro's SMD Kailh pads.== Same trap at Divinikey and 42keebs. Also verified not carried: NovelKeys, Little Keyboards, 1upkeyboards, SparkFun.
**No franchised distributor carries Kailh.** DigiKey's own TechForum states it outright: *"This is not a part we can get as we do not distribute for Kailh."* Mouser and DigiKey only stock it repackaged as Adafruit 4958 at ~4× the Chinese price. Arrow's Adafruit 5118 is the **Choc** socket — wrong footprint.
### Buying notes
- **Choc sockets are not interchangeable.** `CPG135001S30` (Choc, PG1350) will not fit an MX footprint. Several high-ranking eBay/Walmart listings titled "Kailh Hot Swap Socket For Low 1350" are Choc. On Typeractive, KeyHive, splitkb and keycapsss the listing defaults to a variant selector — **pick MX explicitly**.
- **"For KAILH" ≠ Kailh.** That phrasing on marketplace listings means an unbranded generic.
- **Gateron KS-33 is a genuine drop-in substitute** — same footprint, slightly thicker, vented fin gives a bigger solder fillet, marginally larger retention clips. Fine to buy if it's what's in stock.
- There is **no documented counterfeit-socket problem**. Every failure mode on record is *installation*, not manufacture: too little solder on the pads, or the socket torn off by insertion force.
- **Order 20–30% spares.** These are $0.15 parts and one bad socket is a dead key on a board that's already assembled.
## Controllers
Both halves **must** be the same board — Elite-Pi mirrors the Pro Micro pinout, not the Elite-C's.
| Option | Vendor | Product | Price | Notes |
|---|---|---|---|---|
| **Elite-Pi 2-pack** ✅ | Keebio | [Elite-Pi RP2040](https://keeb.io/products/elite-pi-usb-c-pro-micro-replacement-rp2040) | **$25.99** | 2MB, mid-mount USB-C, matched pair in one SKU |
| Value pick | Keebio | [RP2040 Pro Micro 16MB 2-pack](https://keeb.io/products/rp2040-pro-micro-usb-c-controller) | $19.99 | Also mid-mount, 8× the flash |
| Backup | Adafruit | [KB2040](https://www.adafruit.com/product/5302) | $8.95 ea | ⚠️ **top-mount** USB-C — clearance risk under the acrylic cover |
| EU | splitkb | [Liatris](https://splitkb.com/products/liatris) | €17.99 | 16MB, 1mm PCB, lowest profile |
Sold out: KeyHive Elite-Pi ($10).
## Case, hardware, cables
| Part | Vendor | Product | Price |
|---|---|---|---|
| **Acrylic case set** ✅ | Little Keyboards | [Lily58 Technician Keyboard Case](https://www.littlekeyboards.com/products/lily58-technician-keyboard-case) | **$24.99** |
| TRRS cable (4-pole) | Keebio | [TRRS Cable – Silver w/ Sheath, 32"](https://keeb.io/products/trrs-cable) | $5.99 |
| TRRS coiled alt | Boardsource | [TRRS Cables – Black Coiled](https://boardsource.xyz/products/trrs-cable) | $6.00 |
| USB-C → USB-C | Keebio | [USB-C to USB-C Cable, 1m](https://keeb.io/products/usb-c-to-usb-c-cable) | $4.99 |
| USB-C → USB-A | Boardsource | [USB-C Cables – C to A](https://boardsource.xyz/products/usb-c-cables) | $9.00 |
The Technician case is the single best line item on this list — it covers plates *and* hardware:
- 2× switch plate, 2× bottom plate, 2× OLED cover (all 3mm acrylic)
- 4× M2 9mm spacer, 10× M2 6mm spacer, 28× M2 screw
- 10× 3M rubber bumper
That satisfies the official guide's "M2 spacers ×10, M2 screws ×28" requirement outright, so **no separate standoff order is needed**. If sourcing separately anyway: [Keebio M2 Screws and Standoffs](https://keeb.io/products/m2-screws-and-standoffs) $3.49/25pk (get 7mm standoffs for MX), and [SKUF Silicone Feet](https://keeb.io/products/skuf-silicone-rubber-keyboard-feet) $4.49/12pk.
## Switches (need 58, buy 70)
| Feel | Vendor | Product | Price for ~70 |
|---|---|---|---|
| **Linear, budget** ✅ | Typeractive | [JWK JWICK Linear](https://typeractive.xyz/products/jwk-jwick-linear-switches) 63.5g, factory lubed | **$16.80** (7×10) |
| Linear, premium | Divinikey | [HMX Azalea Linear](https://divinikey.com/products/hmx-azalea-linear-switches) 50g/55g | $23.04 (4×18) |
| Tactile | Typeractive | [Durock Mocha T1](https://typeractive.xyz/products/durock-mocha-t1-tactile-switches) | $21.00 (7×10) |
| Silent linear | Keebio | [Durock Dolphin](https://keeb.io/products/durock-dolphin-silent-linear-switches) 62g | $49.00 (70pk) |
| Silent tactile | Keebio | [Durock Shrimp T1](https://keeb.io/products/durock-shrimp-silent-tactile-t1-switches) 67g | $49.00 (70pk) |
All are 5-pin. That works — the Technician case includes switch plates, and a plate is what carries the insertion force. But note that **5-pin switches insert tighter than 3-pin, and insertion force is the documented cause of torn-off hotswap sockets** ([geekhack](https://geekhack.org/index.php?topic=108756.0), [keeb.io blog](https://blog.keeb.io/fixing-mx-hotswap-socket-leaves/), [ZSA](https://blog.zsa.io/robins-repairs-socket/)). Clipping the two plastic guide legs to convert to 3-pin is ~10 minutes with flush cutters for 58 switches and is cheap insurance on a split board that gets carried around. Adafruit also suggests a dab of epoxy under each socket after soldering for the same reason.
## Keycaps (need 56× 1U + 2× 1.5U)
**Must be a uniform profile** (XDA / DSA / ZDA). Row-sculpted sets — Cherry, OEM, SA, MT3 — do not work on a column-staggered split: the physical rows don't map to keyboard rows, and the sculpted 1.5U can't be rotated 90° for the vertical thumb key without the slope running sideways.
| Option | Vendor | Product | Price | Coverage |
|---|---|---|---|---|
| **XDA à la carte** ✅ | Boardsource | [Blank XDA](https://boardsource.xyz/products/blank-xda) — 6× *White 1u 10pk* + 1× *1.5u 2pk* | **$29.25** | 60× 1U + 2× 1.5U, exact |
| Cheapest | Amazon | [YMDK DSA Blank, Ergodox/Lily58](https://www.amazon.com/YMDK-Profile-Ergodox-Preonic-Keyboard/dp/B07CQ2P1CL) | $19.70 | 4 colorways, explicitly Lily58 |
| ZDA alt | Amazon | [YMDK ZDA Matcha Blank](https://www.amazon.com/YMDK-Similar-Keycaps-Ergodox-Preonic/dp/B096581229) | $19.90 | ⚠️ one review reports the 1.5U doesn't seat in the rotated thumb slot |
| Color match | Signature Plastics (WA) | [DSA 1.5u individual](https://spkeyboards.com/products/sp-dsa-1-5-space) | $3.50 ea | For a 1.5U in a specific color |
Boardsource **black 1u 10pk is sold out** — white only right now. Add a `1uH` homing 2-pack ($2.25 black / $2.50 white) and swap two 1U for F/J-equivalent homing keys.
## Tools
Only needed if not already stocked. 58 SOD-123 diodes is real SMD work.
| Item | Vendor | Product | Price | Tier |
|---|---|---|---|---|
| Soldering iron | Pine Store | [Pinecil V2](https://pine64.com/product/pinecil-smart-mini-portable-soldering-iron/) | $25.99 | Essential |
| Iron, station alt | Adafruit | [ATTEN ST-2090D 80W](https://www.adafruit.com/product/4921) | $59.95 | Essential (alt) |
| Iron, buy-once | Amazon | [Hakko FX888D-23BY](https://www.amazon.com/Hakko-FX888D-23BY-Digital-Soldering-Station/dp/B00ANZRT4M) | $121.47 | Essential (alt) |
| Solder 63/37 0.031" | Amazon | [Kester 44, 1oz tube](https://www.amazon.com/Kester-Rosin-Core-Solder-Dispense-Pak/dp/B00AVLM4SO) | $15.43 | Essential |
| Tack flux | Amazon | [Chip Quik SMD291 syringe](https://www.amazon.com/Chip-Quik-SMD291-10M-No-Clean-Syringe/dp/B09414BPCC) | $11.95 | Essential |
| Flux pen | Adafruit | [Chip Quik No-Clean Flux Pen](https://www.adafruit.com/product/3468) | $7.95 | Essential |
| Tweezers, curved | Adafruit | [Fine tip curved ESD, 120mm](https://www.adafruit.com/product/422) | $3.95 | Essential |
| Tweezers, straight | Adafruit | [Fine tip straight ESD, 135mm](https://www.adafruit.com/product/421) | $3.95 | Essential |
| Solder wick | Adafruit | [Solder Wick 0.8mm × 5ft](https://www.adafruit.com/product/4456) | $2.95 | Essential |
| Multimeter | SparkFun | [Digital Multimeter – Basic](https://www.sparkfun.com/products/12966) | $21.50 | Essential |
| PCB clamp | Adafruit | [Pro's Kit SN-390 PCB Clamp](https://www.adafruit.com/product/3791) | $19.95 | Essential |
| IPA 99.9% 1L | Mouser | [MG Chemicals 824-1L](https://www.mouser.com/ProductDetail/590-824-1L) | $13.97 | Essential |
| Precision drivers | SparkFun | [iFixit Mako 64-bit Kit](https://www.sparkfun.com/ifixit-mako-driver-kit-64-precision-bits.html) | $39.95 | Essential |
| Magnifying visor | Amazon | [Carson MagniVisor Deluxe CP-60](https://www.amazon.com/Carson-MagniVisor-Head-Worn-Magnifier-CP-60/dp/B007CDJKM2) | $37.99 | Nice-to-have |
| Puller set | Typeractive | [Switch Puller](https://typeractive.xyz/products/switch-puller) + [Keycap Puller](https://typeractive.xyz/products/keycap-puller) | $3.50 | Nice-to-have |
Tack flux plus a fine tip is what makes 58 diodes go fast. The multimeter's continuity beep is how each diode's orientation and each socket joint gets checked *before* switches go in.
# Decisions
## Order by vendor (6 carts)
| Vendor | Items | Subtotal |
|---|---|---|
| Keebio | Elite-Pi 2pk, 2× TRRS jack, 2× reset switch, TRRS cable, USB-C cable | $38.97 |
| Little Keyboards | Technician case, 2× Mill-Max socket kit | $33.97 |
| Typeractive | JWICK switches ×70, **MX sockets ×60**, both pullers | $29.30 |
| Boardsource | Blank XDA keycaps | $29.25 |
| ProtoSupplies | 2× OLED | $7.90 |
| Adafruit | Diodes 100pk | $4.95 |
| | **Parts total** | **$144.34** + shipping |
Moving sockets to Typeractive collapses this from seven carts to six and saves $4.50 over the original CannonKeys pick — which turned out to be sold out anyway.
Keebio's free-shipping threshold is $150, so it isn't reachable here. If collapsing carts matters more than a few dollars: Keebio also sells diodes (⚠️ **their SMD variant is 0805, not SOD-123 — wrong package for this PCB**), and Amazon has usable fallbacks for diodes (`B079KJX5J9`), sockets (`B096WZ6TJ5`), and OLEDs (`B079BN2J8V`).
## Why these specific choices
- **SOD-123, not 0805 or MELF.** The Pro is SMD-only on diodes and the pad is SOD-123FL-sized. Keebio ships 0805 and Boardsource ships LL4148 MELF under the label "SMD diode" — neither drops in. Adafruit's 100-pack is the correct part.
- **Elite-Pi over KB2040.** Mid-mount USB-C. The Lily58's acrylic controller cover has almost no clearance and a top-mount connector adds ~1.6mm. Also buying the 2-pack guarantees a matched pair, which the both-halves-same-controller rule requires.
- **Socket the controller.** Mill-Max low-profile, not soldered down. Desoldering a 24-pin board later is worse than any of the diode work being avoided. ⚠️ Do **not** buy [Keebio Peel-A-Way sockets](https://keeb.io/products/peel-a-way-sockets-for-pro-micros) — that page lists Lily58 as incompatible.
- **OLED needs a low socket, not a 2.54mm header.** Standard headers raise the OLED too high to clear a Mill-Max-socketed controller. Cheapest fix: cut a 4-pin section off one of the Mill-Max 315 strips already being ordered. (This is the same failure documented under Troubleshooting in [[Lily58 PCB Revision Comparison]].)
- **Technician case over Boardsource.** Boardsource's Lily Pad 3DP explicitly says it is *"NOT compatible with standard, generic Lily58 plates"* and needs their own Legacy Plate, which is sold out. The aluminum Lily Pad is $268 and sold out in every color. Typeractive's case is for their own wireless PCB. Little Keyboards is the only clean US path.
- **XDA over anything sculpted.** See the keycaps section — it's a hard constraint on a column-staggered split, not a preference.
## Deliberately skipped
- **Tenting.** No in-stock, US-shipping, Lily58-specific tenting kit exists right now. KEEBD's is sold out, 42keebs is EU-only. Best available is the [Lucky Pucker universal tripod puck kit](https://www.etsy.com/listing/1237160746/the-lucky-pucker-universal-tripod) ($19.99 + $6.25 ship, Illinois) paired with two small tripods, or printing Thingiverse `4108607` / `4897352`.
- **WS2812 underglow strip.** The Pro has the 3-pad header, but per [[Lily58 PCB Revision Comparison]] the RP2040 QMK target's handling of that pin needs verifying before counting on it.
- **Spring/con-through headers.** These are an *alternative* to Mill-Max sockets, not a complement. [Little Keyboards Spring Header](https://www.littlekeyboards.com/products/spring-header-12-pin) is $7.99 and restock takes 8–12 months once gone. Mill-Max is cheaper and more available.
# Build Log
## 2026-08-01
- Lily58 Pro PCBs ordered from PCBWay (bare boards, no components)
- Sourcing list assembled — wired/TRRS, mid-range, US vendors
## 2026-08-03
- Deep-dived hot-swap socket sourcing across ~30 vendors; added [[#Hot-swap socket sourcing]]
- **Corrected two errors in the 2026-08-01 list:** CannonKeys was listed as the primary socket source but is sold out; Typeractive was listed as sold out but is in stock at $1.50/10. Primary moved to Typeractive, parts total $148.84 → $144.34, seven carts → six.
- Learned the `-16` / `-1` suffix distinction (5,000–6,000 cycles vs 100) — the single most useful thing found in this pass
- Revised the 5-pin switch guidance to flag insertion-force socket damage
# TODO
- ==Confirm the reset switch footprint before ordering.== No official doc states the package; vendor evidence splits between 3×6×5mm and 6×6×5mm through-hole. Since the KiCad files were used for the PCBWay order, measure the pad spacing directly in KiCad rather than guessing. Keebio's $0.50 through-hole part is the safe default.
- ==Verify PCBWay order included only PCBs.== If plates were also laser-cut there, the Technician case ($24.99) may be redundant — but its standoffs/screws/bumpers would still be needed separately.
- ==Confirm PCB thickness is 1.6mm.== The acrylic sandwich and standoff heights assume standard thickness.
- ==Decide switch feel before ordering.== JWICK linear is $16.80 vs $49.00 for either Durock silent option — a $32 swing, and the only line item with that much spread.
- ==Check whether Boardsource restocks black XDA 1u== before committing to white.
- ==Decide Gen1 vs Gen2 sockets.== $9.00 from Typeractive (US, days, generation unspecified — assume 100-cycle) vs ~$8 from PandaKB for confirmed `-16` at 5,000 cycles but 7–12 business days from China. Buying both is $17 total and removes the risk entirely, which is probably the right call given sockets sell out constantly.
- ==Order sockets from two vendors regardless.== Every large US pack went out of stock between 2026-08-01 and 2026-08-03.
- ==Pick a QMK target.== Per [[Lily58 PCB Revision Comparison]], the Pro uses `lily58/rev1`, but confirm RP2040 support on that target vs. needing a converter (`-e CONVERT_TO=elite_pi`).
# References
- [Lily58 Pro build guide (EN)](https://github.com/kata0510/Lily58/blob/master/Pro/Doc/buildguide_en.md) — official BOM: 58 diodes, 58 sockets, 2 tact, 2 TRRS, 2 OLED, 10× M2 spacer (7mm for MX), 28× M2 screw
- [kata0510/Lily58 upstream repo](https://github.com/kata0510/Lily58)
- [keyboard_mcu_list — Pro Micro footprint board survey](https://github.com/bgkendall/keyboard_mcu_list)
- [splitkb Mill-Max Low Profile Sockets](https://splitkb.com/products/mill-max-low-profile-sockets) — source of the Mill-Max part-number cross-reference
- [Kailh official PCB socket page](https://www.kailhswitch.com/pcb-socket/) — RFQ only, 2000/reel, 15–20 day lead; source of the cycle-rating specs
- [DigiKey TechForum: "Where can I find Kailh hot swap socket"](https://forum.digikey.com/t/where-can-i-find-kailh-hot-swap-socket/27456) — confirms no franchised distribution
- [Gateron vs Kailh hotswap socket teardown](https://www.sanketsjournal.com/articles/20230127-gateron-vs-kailh-hotswap-socket-for-mx-switches)
- [keeb.io — Fixing MX hotswap socket leaves](https://blog.keeb.io/fixing-mx-hotswap-socket-leaves/) · [ZSA — Robin's repairs: the socket](https://blog.zsa.io/robins-repairs-socket/)
---
- [[Lily58 PCB Revision Comparison]] · [[Sofle PCB Revision Comparison]] · [[QMK Firmware]]