zmk_mf68/README.md

36 lines
1.5 KiB
Markdown
Raw Normal View History

2020-05-02 06:49:04 +10:00
# Zephyr Mechanical Keyboard (ZMK) Firmware
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/)
2020-05-16 11:52:25 +10:00
## TODO
- Debouncing in the kscan driver itself? Only some GPIO drivers in Zephyr support it "natively"
2020-05-17 07:30:30 +10:00
- Document boards/shields/keymaps usage.
2020-05-16 11:52:25 +10:00
- Move most Kconfig setings to the board/keymap defconfigs and out of the toplevel `prj.conf` file.
- Merge the Kscan GPIO driver upstream, or integrate it locally, to avoid use of Zephyr branch.
- 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?
2020-05-16 11:54:01 +10:00
- Update the kscan GPIO driver to use interrupts.
- Try disabling callbacks for the read pins temporarily when scanning, then re-enabling them.
2020-05-16 11:52:25 +10:00
2020-05-17 13:26:26 +10:00
# Missing Features
2020-05-19 06:21:41 +10:00
- Consumer Key Support (play/pause, etc)
2020-05-17 13:26:26 +10:00
- 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?
2020-05-19 06:21:41 +10:00
- Encoders
2020-05-20 05:24:11 +10:00
- Battery reporting.
- Low power mode, with wakeup from interrupt?
2020-05-17 13:26:26 +10:00
2020-05-16 11:52:25 +10:00
## Long Term
- Tool to convert keymap `info.json` files into a DTS keymap file?
- Firmware build service?