#keyboards #split-keyboard #lily58 #pcb #qmk #zmk #mcu #rp2040 # Overview The Lily58 is a 58-key column-staggered split keyboard designed by Naoki Katahira (kata0510 / @F_YUUCHI) in Japan, first released in 2018. It is itself a derivative of MakotoKurauchi's Helix, and is published under the **MIT license** — which is why the ecosystem of commercial forks is unusually large. Two things confuse almost everyone shopping for one: 1. **"Lily58 Pro" is not a newer Lily58.** Pro and Lite are two parallel product lines with different goals — Pro = hotswap + reversible PCB, Lite = simplified beginner build with separate L/R boards. 2. **No official Lily58 has ever had a rotary encoder or per-key RGB** (until the unreleased Pro V2). Every encoder/RGB Lily58 you can buy is a third-party fork. "Glow" is a vendor label, not a kata0510 revision. This note covers the six official variants, the major forks, and which one to actually buy in 2026. # Design ## Constant across every official revision - **58 keys**, 29 per half: 6 cols × 4 rows + 1 inner key + 4 thumb keys. Outermost thumb key is 1.5U vertical. - **Matrix never changed** — 6 cols × 5 rows per half, `COL2ROW`. The original, Lite Rev1, Lite Rev2, and Pro all share the single QMK target `lily58/rev1`, which independently proves it. - **Two TRRS jacks**, one per half. Serial split only uses 3 conductors, so a plain TRS cable works on the original/Lite; the Pro guide recommends 4-pole. - **Optional OLEDs** — 2× SSD1306, 4-pin 2.54mm I²C header, always user-soldered. - **License: MIT**, Copyright (c) 2018 Naoki Katahira. ## Official variants at a glance | | Original (2018) | Lite Rev1 (2019) | Lite Rev2 (2020) | Lite Rev3 (2024) | Pro (2018-12) | Pro V2 (unreleased) | |---|---|---|---|---|---|---| | MCU | Pro Micro ×2 | Pro Micro ×2 | Pro Micro ×2 | RP2040-Zero, pre-soldered | Pro Micro ×2 | Onboard RP2040 ×2 | | USB | micro-B | micro-B | micro-B | Type-C | micro-B | Type-C, both halves | | Diodes | TH 1N4148 (dual TH/SMD pads) | TH 1N4148, user-soldered | Pre-soldered (package unconfirmed) | BAV70 + 1N4148W, pre-soldered | SMD 1N4148W, user-soldered | SOD-123, factory PCBA | | Hotswap | No | No | No | **No** | **Yes** (Kailh MX + Choc v1) | Yes (MX) | | Per-key RGB | No | No | No | No | No | **Yes — 58× SK6812MINI-E** | | Underglow | 3-pad WS2812 strip header | Unconfirmed | Unconfirmed | No | 3-pad WS2812 strip header | (per-key only) | | Encoder | No | No | No | No | No | No | | PCB | **Reversible** | Mirrored L/R | Mirrored L/R (inferred) | Mirrored L/R (PCB-L / PCB-R) | **Reversible** | Mirrored L/R | | Choc support | Yes (v1) | Dropped | No | No | Yes (v1 only) | Choc V2 per README | | PCB source published | Yes | **No** | **No** | Yes | Yes | Yes | ## What actually changed, revision by revision **Original → Lite Rev1 (2019-07-03).** The designer's own stated rationale: the reversible PCB confused first-time builders about diode and Pro Micro orientation, so it became separate mirrored L/R boards. Kailh Choc support was dropped (MX only) and the I²C port was deleted. Same ¥10,000 price, same external appearance in acrylic cases. **Lite Rev1 → Rev2 (2020-05).** One change, and it's purely about build effort: **diodes, TRRS jacks, and reset switches now ship pre-soldered.** Build time dropped from 2–3 hours to 1–2. The text build guide was replaced with a video. Nothing electrically different. The Rev1 kit lists 58 loose diodes + 2 jacks + 2 tact switches; the Rev2 kit omits all three. **Lite Rev2 → Rev3 (2024-10-28).** The biggest architectural break in the line. AVR/Pro Micro → **RP2040-Zero pre-soldered to the underside**, micro-USB → USB-C, through-hole diodes → pre-mounted BAV70 dual SMD packages. There is **no Pro Micro footprint on Rev3 at all** — it cannot take an Elite-C, nice!nano, Elite-Pi, or Sea-Picro. The only user soldering left is the OLED sockets and the 58 switches. Still no hotswap, still no RGB. **Original → Pro (2018-12, Comiket C95).** Added Kailh hotswap sockets with a combined MX + Choc v1 footprint; diode footprint changed from dual TH/SMD to **SMD-only**; ICSP header removed; OLEDs moved into the kit as standard. Reversibility, Pro Micro, TRRS, I²C option, matrix and layout all unchanged. Note there is no official changelog for this — it's reconstructed from the two schematics. **Pro → Pro V2 (published 2024-07, ==never released==).** Official changelog: Type-C connector, RP2040 support, redesigned around surface-mount parts, Pro Micro protective acrylic dimensions changed. Critically: **outer dimensions and switch positions are unchanged, so existing cases (including Lulu) still fit.** The changelog omits it, but the PCB data unambiguously contains **58× SK6812MINI-E per-key LEDs** — this would be the first official Lily58 with backlighting. The controller is soldered down, so no MCU swapping. ## Controllers — "Pro Micro" is a footprint, not a chip As of 2026 the 24-pin Pro Micro *outline* is the standard; the ATmega32U4 that originally filled it is not. Two reasons it fell out of use: - **The micro-USB connector.** Surface-mount with almost no mechanical anchoring, on the one part of the keyboard you physically stress daily. Ripped-off USB ports are the classic Pro Micro failure mode. - **32KB flash.** QMK with RGB matrix + OLED + VIA simply won't fit on a 32U4 anymore. RP2040 boards in the identical footprint cost the same or less with 2–16MB. Current practice: **RP2040 for wired, nRF52840 for wireless.** All USB-C. | Board | MCU | Flash | USB | Price | Vendor | |---|---|---|---|---|---| | **Elite-Pi** | RP2040 | 2MB | Mid-mount C | $12.99 | Keebio (US) — the default recommendation | | **Adafruit KB2040** | RP2040 | 8MB | C | ~$9 | Adafruit (US) — cheapest reputable | | **Liatris** | RP2040 | 16MB | Mid-mount C | €17.99 | splitkb (NL) — 1mm PCB, lowest profile | | **0xCB Helios** | RP2040 | 16MB | Mid-mount C | ~$25 | Vbus detection, power LED | | **nice!nano v2** | nRF52840 | — | C | ~$25 | Typeractive (US) — wireless/ZMK | | **SuperMini nRF52840** | nRF52840 | — | C | ~$10 | AliExpress — nice!nano clone, QC varies | | **Generic "RP2040 Pro Micro"** | RP2040 | 4–16MB | C | ~$5 | AliExpress/Amazon — works, batch-variable QC | | Pro Micro USB-C | ATmega32U4 | 32KB | C | ~$10 | Keebio; SparkFun Qwiic Pro Micro at Micro Center / DigiKey / Mouser | | Pro Micro (original) | ATmega32U4 | 32KB | micro-B | ~$8 | ==Avoid for new builds== | **USB-C ATmega32U4 does exist** (Keebio's USB-C Pro Micro, SparkFun Qwiic Pro Micro) — but it's similar money for 1/50th the flash. Only worth it if a board genuinely needs 5V logic. The Lily58 does not. ### Build rules for the Lily58 - **Both halves must be the same controller.** Keebio states it outright: you cannot mix an Elite-Pi with a Pro Micro or Elite-C. Elite-Pi mirrors the *Pro Micro* pinout, not the Elite-C's extra pins. - **Get mid-mount USB-C.** Top-mount adds ~1.6mm and the Lily58's acrylic controller cover has little clearance. Elite-Pi and Liatris are both mid-mount. - **Socket it with Mill-Max low-profile sockets.** Desoldering a 24-pin controller later is worse than any diode work you were trying to avoid. - **Lite Rev3 has no socket at all** — RP2040-Zero is soldered down. No swaps, no wireless, ever. - ==RP2040/nRF boards generally lose the WS2812 underglow pin behaviour and need a different QMK/ZMK target — verify before counting on the Pro's LED strip header.== # Decisions ## Which one to build (2026) - **Best all-round buy: splitkb Aurora Lily58 (€37.95).** MCU choice (Pro Micro / Elite-C / Elite-Pi / Liatris / nice!nano), per-key RGB, up to one encoder per half from four positions, top-mounted controllers, tenting-puck compatible, QMK *and* ZMK. Three SKUs: MX hotswap, Choc hotswap, hand-solder. Caveat: **Choc + encoder is impossible** (no vertical room), and it is **not open source** — splitkb explicitly says so. - **Least soldering: Typeractive Lily58 Wireless ($35/pair, currently sold out).** Hotswap sockets, diodes, reset button, power switch, and JST battery jack all pre-soldered. Native nice!view support. No RGB, no encoder. MX version keeps case compatibility; the Choc version does not. - **Most open + most features: Lotus58 by TweetyDaBird** (CERN-OHL-S-2.0+). Per-key RGB + underglow, hotswap, encoder with flexible placement (can occupy a thumb position), a **fifth thumb key per hand**, all-through-hole for beginners, and it runs standalone as a one-handed gamepad. The trade-off: it is **case- and plate-incompatible with the Lily58** by design. Wired ~$60–95, plus BLE (nRF52840, ZMK) and 2.4 GHz unWired spin-offs. One-person operation — buy from Lectronz, not Tindie. - **Cheapest path to a genuine Lily58 Pro: KeyHive (from $5/PCB) or Little Keyboards ($18.99).** Bare PCBs, everything else separate. No RGB, no encoders. - **If you want RGB on a stock-compatible board: Keycapsss Lily58L (€16).** The "L" almost certainly means "Light" (QMK path is `lily58/light`) — 58× SK6812 Mini-E per-key + 12× WS2812 underglow, optional EC11 per side, Pimoroni trackball footprint. MX only. **CC BY-NC-SA 4.0 — non-commercial**, so you can fab it for yourself but not sell it. Stocked but frozen at Rev1.3. - **Don't buy a Lite Rev3 expecting to go wireless.** The soldered RP2040-Zero closes off every controller swap. ## Licensing — the inverse of what polish suggests | Project | License | Design files public | |---|---|---| | Lily58 / Pro / Lite Rev3 / Pro V2 (kata0510) | MIT | Yes, full KiCad | | Lotus58 (TweetyDaBird) | CERN-OHL-S-2.0+ (copyleft) | Yes, gerbers in Releases | | Lily58L (Keycapsss) | CC BY-NC-SA 4.0 (non-commercial) | Build guide only | | Aurora Lily58 (splitkb) | **None — explicitly not open source** | No, DXF cases only | The most commercially polished fork is the least open; the most open has the least reliable stock. splitkb does donate €1/kit to QMK and ZMK. ## Descendants — boards that are Lily58 underneath The MIT license means the Lily58 is upstream of a lot more than its own forks: - **[[Sofle PCB Revision Comparison|Sofle]]** (Josef Adamčík, 2019) — started by opening the Lily58 Pro KiCad project; the v1 schematic still imports symbols named `SW_PUSH-Lily58-cache-Lily58_Pro-rescue`. Adds a 5th thumb key per hand and converts the Lily58's inner-key slot into a rotary encoder position. Same 58 switches. Its LICENSE carries the Lily58 attribution notice. - **Boardsource Lulu** — Lily58-derived, *not* Sofle-derived despite frequent confusion. Boardsource describes it as "100% backwards compatible with the current Lily58 solderable PCB." - **Lotus58** — began as tweaks to a Lily58, diverged far enough to break case compatibility (see above). Lily58 itself is downstream of **Helix** (MakotoKurauchi) — the repo's LICENSE carries that attribution in turn. ## Case compatibility — the cleanest way to sort these - **Keeps Lily58 case compatibility:** Lily58L, Aurora Lily58, Typeractive MX, Pro V2, WorldspawnsKeebs Lyte - **Breaks it:** Lotus58, Typeractive Choc, holykeebs Choc # Configuration QMK targets — note which are official and which are vendor forks: ```bash # Official (kata0510) make lily58/rev1:default # original + Lite Rev1 + Lite Rev2 + Pro (all four) make lily58/lite_rev3:default # RP2040 # Third-party make lily58/light:default # Keycapsss Lily58L — encoder F4/F5, 70 WS2812 make lily58/glow_enc:default # "ORVISEVANS+" — encoder F5/D4, 72 LEDs make lily58/r2g:default # Mechboards Lily58 R2G make tweetydabird/lotus58:default # Lotus58 (also elite_c and nanoBoot variants) ``` ZMK shields, all MIT and listed as tested/pre-configured: ``` lily58_left / lily58_right splitkb_aurora_lily58_left / _right lotus58_left / lotus58_right ``` # Troubleshooting - **Symptom**: OLED won't seat on a Lite Rev2 build. - **Cause**: built with plain pin header + socket instead of con-through (a 2022 stock shortage workaround). - **Fix**: raises the Pro Micro's height enough to make the OLED unusable. Use con-through / spring pin headers. - **Symptom**: Aurora Lily58 Rev 1.0 diode silkscreen looks wrong. - **Cause**: D27 and D29 are swapped and D27 is rotated 180° on Rev 1.0. JP1/JP2 labels are also reversed. - **Fix**: cosmetic only — splitkb confirms it does not affect functionality. Fixed in Rev 1.1. - **Symptom**: Low-profile switches won't clear the plate on the original Lily58. - **Cause**: through-hole 1N4148 bodies are too tall. - **Fix**: the build guide's own recommendation — buy SMD 1N4148W separately and use the SMD pads on the dual footprint. # TODO - ==Confirm Lite Rev2 diode package (SMD vs TH) — pre-soldering is documented, the package never is. Rev2 tools table still lists tweezers "for soldering diodes," probably stale copy from Rev1.== - ==Confirm whether Lite Rev1/Rev2 have any WS2812 underglow pads — no PCB source published for either, so there's no way to check short of inspecting a board.== - ==Pro V2: watch for a release. QMK has no `lily58/pro_v2` target, docs are all "TBA," and the Liliums BOOTH shop is currently private. Last repo commit was 2025-12-26 though, so it isn't dead.== - ==Resolve the "Lily58 Glow" lineage. TweetyDaBird says Lotus58 began as tweaks to "the Lily58 Glow," and QMK has `lily58/glow_enc` with manufacturer "ORVISEVANS+", but no canonical Glow repo or designer was found.== - ==Nobody official has ever endorsed Elite-Pi / Sea-Picro / nice!nano on a Lily58 — only Elite-C LP and BLE Micro Pro, both flagged 動作保証いたしかねます ("operation not guaranteed"). Community practice only.== # References - [kata0510/Lily58 — upstream repo](https://github.com/kata0510/Lily58) · [MIT LICENSE](https://github.com/kata0510/Lily58/blob/master/LICENSE) - [Lily58 Pro build guide (EN)](https://github.com/kata0510/Lily58/blob/master/Pro/Doc/buildguide_en.md) - [Lite Rev3 README](https://github.com/kata0510/Lily58/blob/master/Lite_Rev3/README.md) · [Pro V2 README](https://github.com/kata0510/Lily58/blob/master/Pro_V2/README.md) - [Pro V2 official changelog (JP)](https://docs.liliums.net/lily58-pro-v2/changelog/) · [docs.liliums.net](https://docs.liliums.net/) - [Lite Rev1 launch post (2019-07-03)](https://yuchi-kbd.hatenablog.com/entry/2019/07/03/124006) · [Lite Rev2 launch post (2020-05-23)](https://yuchi-kbd.hatenablog.com/entry/2020/05/23/013047) · [Lite Rev3 announcement](https://x.com/F_YUUCHI/status/1850851255335452936) - [QMK keyboards/lily58](https://github.com/qmk/qmk_firmware/tree/master/keyboards/lily58) · [ZMK supported hardware](https://zmk.dev/docs/hardware) - [Encoder feature request — issue #26](https://github.com/kata0510/Lily58/issues/26) - [splitkb Aurora Lily58](https://splitkb.com/products/aurora-lily58) · [changelog](https://docs.splitkb.com/product-guides/aurora-series/changelogs/aurora-lily58) · [attribution / license](https://docs.splitkb.com/product-guides/aurora-series/attribution/aurora-lily58) - [Keycapsss Lily58L build guide](https://github.com/Keycapsss/Lily58L-Build-Guide) · [store](https://keycapsss.com/keyboard-parts/pcbs/71/lily58l-split-keyboard-pcb) - [TweetyDaBird/Lotus-58-Classic](https://github.com/TweetyDaBird/Lotus58) · [Lotus 58 BLE on Lectronz](https://lectronz.com/products/lotus-58-ble) - [Typeractive Lily58 Wireless](https://typeractive.xyz/products/lily58-partially-assembled-pcb) · [Mechboards Lily58 R2G](https://mechboards.co.uk/products/lily58-kit) · [KeyHive](https://keyhive.xyz/shop/lily58) · [Boardsource](https://boardsource.xyz/products/lily58) · [holykeebs Lily58 Choc](https://holykeebs.com/products/lily58-choc) ## Controllers - [keyboard_mcu_list — comparison of Pro Micro-shaped boards](https://github.com/bgkendall/keyboard_mcu_list) — the most complete survey, worth checking before buying - [Keebio Elite-Pi](https://keeb.io/products/elite-pi-usb-c-pro-micro-replacement-rp2040) · [Keebio USB-C Pro Micro](https://keeb.io/products/pro-micro-usb-c-version-5v-16mhz-arduino-compatible-atmega32u4) - [splitkb Liatris](https://splitkb.com/products/liatris) · [SparkFun Qwiic Pro Micro USB-C](https://www.sparkfun.com/sparkfun-qwiic-pro-micro-usb-c-atmega32u4.html) - [Bastard Keyboards — RP2040 community controller notes](https://docs.bastardkb.com/hw/rp2040-community.html) --- - [[Sofle PCB Revision Comparison]] · [[JLCPCB Design Notes]] · [[KiCad Design Tips]] · [[QMK Firmware]]