Skip to content

Instantly share code, notes, and snippets.

@DeflateAwning
Last active April 15, 2026 00:41
Show Gist options
  • Select an option

  • Save DeflateAwning/8c75662cc2be32d37b1b04b7358f73ff to your computer and use it in GitHub Desktop.

Select an option

Save DeflateAwning/8c75662cc2be32d37b1b04b7358f73ff to your computer and use it in GitHub Desktop.
Build notes for my Lily58 keyboard

Lily58 Build Notes

Firmware

Quick Reference: Firmware Updates

git clone https://github.com/DeflateAwning/qmk_firmware
cd qmk_firmware
git checkout develop-lily58

qmk compile -kb lily58/rev1 -km DeflateAwning
qmk compile -kb lily58/rev1_repair_col4 -km DeflateAwning

# Double-click the reset button to enter update mode.
# Then, flash by copying the uf2 build products to the MCUs.

Firmware Setup Procedure

  1. Clone and make a new branch.
  2. Make a new keymap: qmk new-keymap -kb lily58/rev1
  3. Navigate to keyboards/lily58/keymaps/DeflateAwning/config.h
  4. Open the rules.mk file at that location.
  5. Paste in the magic line (into rules.mk): CONVERT_TO = rp2040_ce
  6. Build with:
qmk compile -kb lily58/rev1 -km DeflateAwning
  1. Flash by copying the .uf2 file to the board.

Flashing Notes

  • Short the BOOT pad to the closest edge pad (GND), then do a reset.
  • After the first QMK flash, you can double-click the reset switch (within 200ms) to enter flashing mode.

Handedness Configuration

https://docs.qmk.fm/features/split_keyboard#setting-handedness

https://docs.qmk.fm/features/split_keyboard#handedness-by-eeprom

// Enable storing the left vs. right hand layout in EEPROM.
// Add the `-bl` flag when flashing, per https://docs.qmk.fm/features/split_keyboard#handedness-by-eeprom
#define EE_HANDS

Hardware

PCB Order

File 1 - Keyboard

  • Gerber: Lily58_Y64
  • Git Commit: b6957432f
  • Exported gerber from Lily58/pcb/Lily58.kicad_pro
  • Size: 142.5 mm* 106.3 mm
  • Black, 1.6mm FR4, HASL Lead Free
  • FR4-Standard TG 135-140

File 2 - Top Plate

  • Unused in assembly.
  • Gerber: Lily58_Lite_Rev3_TOP_Case_Y65
  • Git Commit: b6957432f
  • Exported gerber from Lily58/case/top-plate/Lily58_Lite_Rev3_TOP_Case.kicad_pro
  • Black, 1.6mm FR4, HASL Lead Free

BOM

Assembly Notes

  • To solder pins onto MCU, offset away from the USB-C connector. Don't assemble the top pins (1 row) beside the USB-C connector.
  • On the right half, put the MCU (with components facing down, installed from the top) offset to the right/offset toward the switches.
  • On the left half, put the MCU (with components facing down, installed from the top) offset to the right/away from the switches.
  • Close/short/jump the bad underneath the MCU.
  • Install reset switch and TRRS connector on top side of each board.
  • Build Guide (Lily58(Old)): https://kata0510.github.io/Lily58-Document/Lily58_BG/

2026-04-14 ESD Damage Repair

A pin on the left half broke by ESD damage, so I wired it to a different pin on the microcontroller. Worked well! A future revision should put TVS diodes on the pins.

  • Left-half keyboard
  • PCB: In the pcb/ folder of the hardware repo, opened the design. Note that Blue (bottom) is actually the top-side layer for the left half.
  • col4 MCU pin was broken.
  • Cut the trace to RP2040 MCU pin 8.
  • Wired col4 to RP2040 MCU pin 29.
  • Firmware: Duplicated the rev1/keyboard.json file to rev1_repair_col4/keyboard.json. Edit the matrix_pins.cols[4] from B2 to F4, based on https://docs.qmk.fm/feature_converters#available-pin-compatibility.
  • Now, the build-and-flash process is:
# Build:
qmk compile -kb lily58/rev1 -km DeflateAwning
qmk compile -kb lily58/rev1_repair_col4 -km DeflateAwning

# Then, flash by copying the uf2 build products to the MCUs. Repair one goes to the left half.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment