zmk/docs/blog/2023-09-15-zmk-sotf-6.md
2023-10-05 00:05:13 -07:00

5.3 KiB

title author author_title author_url author_image_url tags
ZMK State Of The Firmware #6 Cem Aksoylar Project Contributor https://github.com/caksoylar https://avatars.githubusercontent.com/u/7876996
SOTF
keyboards
firmware
oss
ble

Welcome to the sixth ZMK "State Of The Firmware" (SOTF)!

This update will cover all the major activity since SOTF #5. That was over a year ago (again!), so lots to cover!

Recent Activity

Here's a summary of the various major changes since last time, broken down by theme:

Keymaps/Behaviors

Global quick tap [#1187]

Key toggle [#1278]

Mask triggering modifiers by default in mod morphs and add keep-mods property [#1412]

Fix bug causing stuck keys with combo & hold-tap interactions [#1411]

Add hold-trigger-on-release property for positional hold-tap uses [#1423]

Sticky key fixes [#1586], [#1745]

Parameterized macros [#1232]

Add sensor rotate behaviors to use invoke any behavior from encoders [#1758]

Caps word ignore modifiers [#1330] ?

Tap dances can be used in combos [#1518] ?

Bluetooth and Split Improvements

Release held keys on peripheral disconnect [#1340]

Connections status check fix [#1810]

Option to require passkey input on pairing [#1822]

Multiple peripherals support [#836]

Improve settings_reset shield by making it clear bonds more reliably, and allow it to build for all boards [#1879]

Use directed advertising for split communication and more robust central scanning [#1913] [#1912]

Hardware Support

Encoder support refactor [#1039]

Encoder support in split peripheral halves [#728] [#1841]

Debouncing for direct GPIO driver [#1288]

Add toggle mode support for direct GPIO driver [#1305]

595 shift register driver [#1325]

Add RGB auto off options using idle timeout and USB status [#1010]

EPD initialization improvements [#1098]

MAX7318 GPIO expander driver [#1295]

nice!view support [#1462] with custom status screen [#1768]

Improvements for Seeeduino Xiao BLE [#1293], [d0176f36], [#1545], [#1927]

Wait options during matrix reads and writes [#1385], [#1473] ?

Miscellaneous

Improved customer page support [#1227]

Switch to a reusable user config workflow [#1183] [#1258]

Pre-commit setup and standardize formatting [#1651]

Refactors by Joel [#1269] [#1255] ?

Allow setting BLE connection intervals [#862] ?

Default to 1ms USB HID interval [#1271] ?

Allow configuring battery level report interval [#1303] ?

Display Features

Add setting to invert display colors [#1754]

Add battery percentage option for battery widget [#1563] ?

Refactor to create new peripheral status widget [#1263] ?

Zephyr 3.2

petejohanson helped prepare and test the upgrade of ZMK to Zephyr 3.2 in #1499.

Documentation

Configuration options [#722]

Battery sensor documentation [#868]

New behavior guide [#1268]

Tap dance and hold-tap documentation improvements [#1298]

New shield docs for other interconnects including Xiao, Arduino Uno and Blackpill [#1607]

A new Bluetooth feature page [#1499]

Various improvements and fixes by kurtis-lew, joelspadin, filterpaper, byran.tech, dxmh, caksoylar and many others

New Shields

  • Eternal keypad [#1136]
  • nullbits SNAP [#1319]
  • Aurora Sweep [#1504]
  • Aurora Corne [#1520]
  • Aurora Lily58 [#1553]
  • Aurora Sofle [#1864]
  • Aurora Helix [#1873]
  • ZMK Uno shield [#1576]
  • Waterfowl [#1554]
  • Kyria Rev 3 [#1627]
  • Leeloo v2 and Leeloo-Micro [#1762]
  • Spaceman Pancake [#1400]
  • Reviung5 [#1548]

New Boards

  • RP2040 boards
  • Puchi BLE [#1445]
  • nRFMicro 1.3/1.4 (nRF52833) [#912]
  • nRF5340 DK [#1562]
  • PillBug [#1530]
  • Preonic Rev 3 [#1575]
  • Corne-ish Zen v2 [#1498] and v1 [#1593]
  • Polarity Works CKP family of boards [#1547]

Coming Soon!

Some items listed in the last coming soon section are still under active development.

  • Caps/Scroll/Num Lock LED support
  • Mouse Keys
  • Wired split support
  • More modular approach to external boards/shields, custom code, user keymaps, etc.
  • More shields and boards

Statistics

Some statistics of interest for ZMK:

  • GitHub (lifetime stats)
    • 163 Contributors
    • 1239 Closed PRs
    • 1845 Stars
    • 1918 Forks
  • Discord Chat
    • 7865 total registered (130% up from last SOTF!)
  • Website (last 30 days)
    • 35.9K page views
    • 3.29K new users

Sponsorship

Open Collective Pete Johanson (detail what is used for what)

Thanks!

As we approach the two year birthday for ZMK, I am reminded of how far we have come in such a short time, in large part thanks to the amazing community that has grown around it. I am so grateful to have so many contributors, testers, and user believing in the project and helping make it a joy to work on.