blob: cfc8fc87ce99433b957c4bd735b38a4ed0023793 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# Zephyr Mechanical Keyboard (ZMK) Firmware
[![Netlify Status](https://api.netlify.com/api/v1/badges/942d61a9-87c0-4c23-9b51-f5ed0bce495d/deploy-status)](https://app.netlify.com/sites/zmk/deploys)
This project is a complete work in progress, with absolutely nothing functioning yet. The goal is to explore a new MK firmware
with a less restritive license and better BLE support, built on top of the [Zephyr Project](https://www.zephyrproject.org/)
Basic WIP website to learn more: https://zmk.netlify.app/
## TODO
- Document boards/shields/keymaps usage.
- Move most Kconfig setings to the board/keymap defconfigs and out of the toplevel `prj.conf` file.
- Display support, including displaying BLE SC auth numbers for "numeric comparison" mode if we have the screen.
- Fix BT settings to work w/ Zephyr. Do we really need them?
- Tests?
# Missing Features
- Consumer Key Support (play/pause, etc)
- Mod Tap
- One Shot
- Shell over BLE?
- Split support
- custom kscan driver? that recieves events from other side over BLE notifications?
- Need to figure out how to do "custom" GATT services. Custom UUID?
- Do we need to send any state updates over from primary to secondary side?
- Encoders
- Battery reporting.
- Low power mode, with wakeup from interrupt?
## Long Term
- Tool to convert keymap `info.json` files into a DTS keymap file?
- Firmware build service?
|