Corne
A cost-effective DIY wireless split keyboard based on the Corne layout, featuring Bluetooth connectivity, low-profile design, and ZMK firmware for seamless performance.
Install / Use
/learn @milar111/CorneREADME
Budget Wireless Corne Keyboard Build
A DIY wireless split keyboard based on the Corne layout, built for approximately $25 USD. This project uses a ProMicro clone with nrf52840 chip, making it a cost-effective alternative to traditional wireless split keyboard builds.
Features
- Fully wireless using Bluetooth
- Split ergonomic design (Corne layout)
- Low profile design for portability
- Battery-powered with power switch
- ZMK firmware
- Estimated battery life: 1+ month
Bill of Materials
| Component | Quantity | Cost (USD) | Link | |-----------|----------|------------|------| | Controller boards (ProMicro nrf52840) | 2 | 6.82 | AliExpress | | Batteries | 2 | 4.20 | AliExpress | | Mechanical Switches | 50 | 7.47 | AliExpress | | Keycaps | Set | 3.79 | Option 1 / Option 2 | | Diodes (1N4148) | 100 | 0.85 | AliExpress | | Slide Switches | 2 | 0.11 | | | 3D Printed Parts | Set | 1.80 | Files provided |
Total Cost: $25.04 (excluding wires and screws)
Current Keymap
Build Instructions
Prerequisites
- Basic soldering skills
- Access to a 3D printer
- Basic understanding of keyboard firmware
Case Assembly
- Print the case files (STL files provided in
3DFilesdirectory) - Note: You may need to adjust the:
- Battery compartment size
- Slide switch holes
Wiring
- Wire switches in a matrix configuration
- Connect diodes:
- Direction matters (black line indicates cathode)
- Use diode legs for the rows
- Use separate wires for columns
- Keep wiring clear of screw holes
- Connect the battery:
- GND to GND pin
- Positive to one of the side legs on the slide switch
- Middle pin of the slide switch to the RAW pin
Pin Connections for Rows and Columns
The matrix configuration uses GPIO pins on the nRF52840 Pro Micro clone. Below are the connections:
How Rows and Columns Are Numbered
- Rows: Rows are always numbered from top to bottom on both halves.
- Columns: Columns are always numbered from left to right (as viewed from the back of the plate (where the wiring is done)).
⚠️ Note: If you accidentally solder the rows or columns to the wrong pins, you do not need to desolder. The mappings can be fixed in the firmware configuration files:
corne.dtsi: Defines rows for both halves.corne_left.overlay: Defines columns for the left half.corne_right.overlay: Defines columns for the right half.
Left Half Pin Assignments
- Rows (Connected to
row-gpios):- Row 0: Pin 21
- Row 1: Pin 20
- Row 2: Pin 19
- Row 3: Pin 18
- Columns (Connected to
col-gpios):- Column 0: Pin 2
- Column 1: Pin 7
- Column 2: Pin 6
- Column 3: Pin 5
- Column 4: Pin 4
- Column 5: Pin 3
Right Half Pin Assignments
- Rows (
row-gpios):- Row 0: Pin 21
- Row 1: Pin 20
- Row 2: Pin 19
- Row 3: Pin 18
- Columns (
col-gpios):- Column 0: Pin 3
- Column 1: Pin 4
- Column 2: Pin 5
- Column 3: Pin 6
- Column 4: Pin 7
- Column 5: Pin 2
Firmware Setup
This keyboard uses ZMK firmware. The left half acts as the main controller that connects to your device.
To flash the firmware:
- Double press the reset button
- Board will appear as mass storage device
- Flash the appropriate firmware file
If you forgot the keyboard from your device and can't reconnect:
- Flash the
settings_reset-nice_nano_v2-zmk.uf2file - Reflash the regular firmware
- Pair
Repository Structure
├── .github/workflows/
│ └── build.yml
├── 3DFiles/
│ ├── STEP/
│ │ └── CorneSTEP.step
│ ├── STL/
│ │ ├── Case_Left.stl
│ │ ├── Case_Right.stl
│ │ └── PlateCorne.stl
├── config/
│ ├── boards/shields/corne/
│ │ ├── corne_left.conf
│ │ ├── corne_left.overlay
│ │ ├── corne_right.conf
│ │ ├── corne_right.overlay
│ │ ├── corne.conf
│ │ ├── corne.dtsi
│ │ ├── Kconfig.defconfig
│ │ └── Kconfig.shield
│ ├── corne.keymap
│ └── west.yml
├── firmware/
│ ├── corne_left-nice_nano_v2-zmk.uf2
│ ├── corne_right-nice_nano_v2-zmk.uf2
│ └── settings_reset-nice_nano_v2-zmk.uf2
└── zephyr/
├── module.yml
└── build.yaml
Known Issues
- Left side case may have warping issues if battery swells
- Slide switch holes may need adjustment based on your components
Final result
Related Skills
diffs
342.5kUse the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both) instead of manual edit summaries.
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
openpencil
1.9kThe world's first open-source AI-native vector design tool and the first to feature concurrent Agent Teams. Design-as-Code. Turn prompts into UI directly on the live canvas. A modern alternative to Pencil.
ui-ux-pro-max-skill
55.6kAn AI SKILL that provide design intelligence for building professional UI/UX multiple platforms
Security Score
Audited on Mar 30, 2026
