
Main panel
google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards

The LiPad firmware is separated into hardware configuration and keyboard behaviour.
LiPad is an open-source printed circuit board by coolboy17289, from the coolboy17289/LiPad repository on GitHub. It is a 2-layer board of 67 × 83 mm with 39 parts on 37 nets, routed with 390 tracks and 24 vias.
It is built around the SK6812MINI-E. Its parts include 23 diodes, 10 switches and 1 IC. It belongs with the RP2040 boards of this library.
LiPad uses:
Current firmware features:
LiPad/
├── PCB/
│ ├── KiCad schematic files
│ ├── PCB layout files
│ └── 3D model files
│
├── Code/
│ ├── main.py
│ ├── kb.py
│ ├── code.py
│ └── requirements.txt
│
├── README.md
├── .gitignore
└── .vscode/
└── settings.jsonThe LiPad firmware is separated into hardware configuration and keyboard behaviour.
code.py is the CircuitPython startup file.
When the controller powers on, CircuitPython automatically runs this file to start the keyboard firmware.
main.py contains the main functionality of LiPad.
It controls:
The main firmware logic is designed to be easy to edit and customise without changing the hardware configuration.
kb.py defines the physical hardware of LiPad.
It contains:
This separation allows the firmware logic to change without needing to rewrite the hardware setup.
LiPad currently includes three layers.
Default controls:
| Key | Function |
|---|---|
| Key 1 | Previous track |
| Key 2 | Play/Pause |
| Key 3 | Next track |
Additional shortcuts:
| Key | Function |
|---|---|
| Key 1 | Media select |
| Key 2 | Calculator |
| Key 3 | Windows Run |
LiPad uses 14 SK6812 MINI addressable RGB LEDs.
The firmware supports multiple lighting modes:
A breathing effect using the active layer colour.
A moving rainbow animation across the LED layout.
A wave animation based on the LED positions.
A bright reactive lighting mode.
A low-power animation used when the keyboard has not been used for a period of time.
The PCB for LiPad was designed using KiCad.
The PCB directory contains:
The design was created with custom placement and routing to support the LiPad layout.
Development requires:
Navigate to the firmware folder:
cd CodeInstall requirements:
python3 -m pip install -r requirements.txtAfter preparing the CircuitPython controller:
CIRCUITPY driveRequired files:
CIRCUITPY/
├── code.py
├── main.py
├── kb.py
└── lib/Possible future improvements:
Contributions are welcome.
If you would like to improve LiPad:
LiPad is an open-source hardware and firmware project.
License information will be added before the first official release.
Created by Lihan Badenhorst
Project: LiPad
| Qty | Value | Footprint | References |
|---|---|---|---|
| 14 | SK6812MINI | LED_SMD:LED_SK6812MINI_PLCC4_3.5x3.5mm_P1.75mm | D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 |
| 9 | D | Diode_THT:D_DO-35_SOD27_P7.62mm_Horizontal | D1, D2, D3, D4, D5, D6, D7, D8, D9 |
| 9 | SW_Push_45deg | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8, SW9 |
| 4 | 3.2mm_M3 | MountingHole:MountingHole_3.2mm_M3 | HOLE1, HOLE2, HOLE3, HOLE4 |
| 1 | LOGO | imgs:meme | G*** |
| 1 | RotaryEncoder_Switch | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | SW10 |
| 1 | XIAO-RP2040-DIP | footprints:XIAO-Generic-Hybrid-14P-2.54-21X17.8MM | U1 |
It measures 67 × 83 mm and has 2 copper layers, 1.6 mm thick.
39 parts, built around the SK6812MINI-E. 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 coolboy17289/LiPad repository on GitHub, at the commit this page was made from: the board is PCB/LiPad.kicad_pcb and its schematic PCB/LiPad.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 coolboy17289 before reusing the design.

google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards

Bastardkb/Dilemma
The Dilemma is a vertical stagger low-profile keyboard with mods.

Pwnsat/FlatSat
Flatsat v1.0 is a hardware based platform for aerospace cybersecurity research

adamws/kicad-kbplacer
KiCad plugin for automatic keyboard's key placement and routing

imchipwood/dumbpad
Simple 4x4 numpad with rotary encoder. Powered by QMK via ATmega32u4 Pro Micro

makerforgetech/modular-biped
An open source framework for creating a bipedal modular companion robot.

