Pete Johanson
4 years ago
2 changed files with 53 additions and 1 deletions
@ -0,0 +1,52 @@
@@ -0,0 +1,52 @@
|
||||
--- |
||||
title: ZMK State Of The Firmware \#1 |
||||
author: Pete Johanson |
||||
author_title: Project Creator |
||||
author_url: https://gitlab.com/petejohanson |
||||
author_image_url: https://www.gravatar.com/avatar/2001ceff7e9dc753cf96fcb2e6f41110 |
||||
tags: [SOTF, keyboards, firmware, oss, ble] |
||||
--- |
||||
|
||||
Welcome to the first ZMK "State Of The Firmware"! |
||||
|
||||
With interest and Discord activity growing, it seemed important to lay out the progress made recently, current major bugs/showstoppers, and planned next steps. |
||||
|
||||
## Recent Activity |
||||
|
||||
There's been lots of various activity in ZMK land! |
||||
|
||||
- [Nicell](https://github.com/Nicell) (nice!nano creator) contributed initial [RGB Underglow](/docs/feature/underglow) ([#64](https://github.com/zmkfirmware/zmk/pull/64)) support to ZMK. |
||||
- Tons of [documentation](/docs) work. |
||||
- Refactoring ([#73](https://github.com/zmkfirmware/zmk/pull/73), [#74](https://github.com/zmkfirmware/zmk/pull/74)) of [keymaps](/docs/feature/keymaps) to make them simpler for users. |
||||
- Mod-Tap Behavior (docs coming!) is much improved ([#69](https://github.com/zmkfirmware/zmk/pull/69)) and usable now. |
||||
- An initial [`setup.sh`](http://localhost:3000/docs/user-setup#user-config-setup-script) script was created, allowing users to quickly bootstrap a "user config" setup and push it to GitHub, where GitHub Actions will build the firmware for you. |
||||
- Corne shield ([#80](https://github.com/zmkfirmware/zmk/pull/80)) shield definition was added. |
||||
- Initial [encoder](/docs/feature/encoders) support ([#61](https://github.com/zmkfirmware/zmk/pull/61)) was added. |
||||
|
||||
## Bugs and Showstoppers |
||||
|
||||
Despite the flurry of activity, there are still some serious bugs and show stoppers that potential ZMK users should be aware of: |
||||
|
||||
- [Bluetooth Related](https://github.com/zmkfirmware/zmk/issues/58) - There are several key bugs and fixes needed, including one complete show stopper: |
||||
- Fully working split wireless is not working. In particular, both split halves can properly pair, but once they do so, pairing with the _central_ host will not work. Workaround: You can currently have both halves pair, and use USB on the central side (Left side right now for Kyria, Corne, Lily58) and receive HID events over USB. |
||||
- BT bond information is not currently stored to the devices, so after powering off or restarting your device, users need to re-pair |
||||
- USB - There is one important USB related bug which is a showstopper: |
||||
- The Zephyr USB stack does not have a built in queue for endpoint data being written. As a result, HID events sent by ZMK are sometimes [dropped, or lost](https://github.com/zmkfirmware/zmk/issues/84). |
||||
|
||||
## Next Steps |
||||
|
||||
There's plenty of places to go next! To help keep folks in the loop for what's next, I've created a [Core Functionality](https://github.com/zmkfirmware/zmk/projects/1) project/kanban board in GitHub, where users should be able to get some visibility into items being focused on. |
||||
|
||||
Of course, at the top of that list currently is the above bugs/showstoppers, and then from there, I hope to: |
||||
|
||||
- Work on power management. |
||||
- Improve our documentation on various aspects of the system, mostly around: |
||||
- End user documentation for understanding how to use ZMK, better installation docs, etc. |
||||
- Developer focused documentation, so interested contributors can start building out more behaviors and ZMK functionality. |
||||
- Implement true "hold" detection, useful for several behaviors such as Mod-Tap and Layer-Tap. |
||||
- Hopefully acquire a proper and official USB Product ID for use for the project. |
||||
- Fun things that come up along the way! |
||||
|
||||
## Thanks! |
||||
|
||||
A big thanks for everyone who has shown interest in the project, tested things, asked questions, and contributed PRs ([Nicell](https://github.com/Nicell), [CrossR](https://github.com/CrossR), [careyk007](https://github.com/careyk007)). |
Loading…
Reference in new issue