Do hardware and misc improvements

This commit is contained in:
Cem Aksoylar 2023-09-18 23:26:27 -07:00
parent 7a380aa6f1
commit 2d440e195b

View file

@ -75,73 +75,84 @@ Note that documentation is still lacking for utilizing more than one peripheral
### Hardware Support
Encoder support refactor [#1039](https://github.com/zmkfirmware/zmk/pull/1039)
#### Encoders
Encoder support in split peripheral halves [#728](https://github.com/zmkfirmware/zmk/pull/728) [#1841](https://github.com/zmkfirmware/zmk/pull/1841)
[petejohanson] contributed a major refactor of encoder (and more generally sensor) functionality in [#1039](https://github.com/zmkfirmware/zmk/pull/1039).
Debouncing for direct GPIO driver [#1288](https://github.com/zmkfirmware/zmk/pull/1288)
This refactor paved way to implementing a long-awaited feature, encoder support in peripheral halves of split keyboards! Building upon the work by [stephen] in [#728](https://github.com/zmkfirmware/zmk/pull/728), [petejohanson] implemented support in [#1841](https://github.com/zmkfirmware/zmk/pull/1841).
Add toggle mode support for direct GPIO driver [#1305](https://github.com/zmkfirmware/zmk/pull/1305)
#### Direct GPIO driver
595 shift register driver [#1325](https://github.com/zmkfirmware/zmk/pull/1325)
[joelspadin] extended the comprehensive debouncing framework used for matrix scan driver to the [direct GPIO driver](../docs/config/kscan.md#direct-gpio-driver) in [#1288](https://github.com/zmkfirmware/zmk/pull/1288).
Add RGB auto off options using idle timeout and USB status [#1010](https://github.com/zmkfirmware/zmk/pull/1010)
[kurtis-lew] added toggle mode support for direct GPIO driver [#1305](https://github.com/zmkfirmware/zmk/pull/1305). This allows for adding toggle switches to a keyboard, by properly reading their initial state on boot and making sure the power use is efficient.
EPD initialization improvements [#1098](https://github.com/zmkfirmware/zmk/pull/1098)
#### IO peripheral drivers
MAX7318 GPIO expander driver [#1295](https://github.com/zmkfirmware/zmk/pull/1295)
[petejohanson] added support for the 595 shift register commonly used with smaller controllers like Seeeduino Xiaos, in [#1325](https://github.com/zmkfirmware/zmk/pull/1325).
nice!view support [#1462](https://github.com/zmkfirmware/zmk/pull/1462) with custom status screen [#1768](https://github.com/zmkfirmware/zmk/pull/1768)
[zhiayang] added the driver for the MAX7318 GPIO expander in [#1295](https://github.com/zmkfirmware/zmk/pull/1295).
Improvements for Seeeduino Xiao BLE [#1293](https://github.com/zmkfirmware/zmk/pull/1293), [d0176f36], [#1545](https://github.com/zmkfirmware/zmk/pull/1545), [#1927](https://github.com/zmkfirmware/zmk/pull/1927)
#### Underglow auto-off options
Wait options during matrix reads and writes [#1385](https://github.com/zmkfirmware/zmk/pull/1385), [#1473](https://github.com/zmkfirmware/zmk/pull/1473) ?
[ReFil] added two [new RGB auto off options](../docs/config/underglow.md), one using an idle timeout and the other USB status in [#1010](https://github.com/zmkfirmware/zmk/pull/1010).
#### nice!view support
[nicell] added support for nice!view, a memory display optimized for low power use in [#1462](https://github.com/zmkfirmware/zmk/pull/1462).
He also contributed a custom vertically-oriented status screen that is automatically enabled when the `nice_view` shield is used in [#1768](https://github.com/zmkfirmware/zmk/pull/1768), since the default status screen has a horizontal orientation.
Please see the instructions in the [nice!view README](https://github.com/zmkfirmware/zmk/blob/main/app/boards/shields/nice_view/README.md) if you would like to restore the stock status screen.
#### E-paper display initialization
[petejohanson] contributed EPD initialization improvements in [#1098](https://github.com/zmkfirmware/zmk/pull/1098), which makes the keyboards using slow refresh displays such as the Corne-ish Zen much more responsive during initial boot.
#### Xiao BLE improvements
Various improvements were made for the Seeeduino Xiao BLE board in [#1293](https://github.com/zmkfirmware/zmk/pull/1293), [d0176f36](https://github.com/zmkfirmware/zmk/commit/d0176f36), [#1545](https://github.com/zmkfirmware/zmk/pull/1545) and [#1927](https://github.com/zmkfirmware/zmk/pull/1927) by [petejohanson] and [caksoylar], enabling features necessary for ZMK and improving its power use.
<!--Wait options during matrix reads and writes [#1385](https://github.com/zmkfirmware/zmk/pull/1385), [#1473](https://github.com/zmkfirmware/zmk/pull/1473) ?-->
### Zephyr 3.2 Upgrade
[petejohanson] once again contributed the massive work necessary for upgrading ZMK to Zephyr 3.2 in [#1499](https://github.com/zmkfirmware/zmk/pull/1499), with review help from [joelspadin] and testing by the community. This Zephyr release brings with it upgrades to the display library LVGL, adds official support for the RP2040 controllers and many internal refactors to help future development.
Check out the [dedicated blog post](2023-04-06-zephyr-3-2.md) for more details!
### Documentation
Configuration options [#722](https://github.com/zmkfirmware/zmk/pull/722)
New behavior guide [#1268](https://github.com/zmkfirmware/zmk/pull/1268)
Tap dance and hold-tap documentation improvements [#1298](https://github.com/zmkfirmware/zmk/pull/1298)
Battery sensor documentation [#868](https://github.com/zmkfirmware/zmk/pull/868)
New shield docs for other interconnects including Xiao, Arduino Uno and Blackpill [#1607](https://github.com/zmkfirmware/zmk/pull/1607)
A new Bluetooth feature page [#1499](https://github.com/zmkfirmware/zmk/pull/1499)
In addition to the specific contributions listed above, various improvements and fixes to documentation are made by many users from the community, including but not limited to [kurtis-lew], [joelspadin], [filterpaper], [byran.tech], [dxmh] and [caksoylar]. These contributions are are all very appreciated!
### Miscellaneous
Improved customer page support [#1227](https://github.com/zmkfirmware/zmk/pull/1227)
Switch to a reusable user config workflow [#1183](https://github.com/zmkfirmware/zmk/pull/1183) [#1258](https://github.com/zmkfirmware/zmk/pull/1258)
Pre-commit setup and standardize formatting [#1651](https://github.com/zmkfirmware/zmk/pull/1651)
Refactors by Joel [#1269](https://github.com/zmkfirmware/zmk/pull/1269) [#1255](https://github.com/zmkfirmware/zmk/pull/1255) ?
Allow setting BLE connection intervals [#862](https://github.com/zmkfirmware/zmk/pull/862) ?
USB HID polling interval now defaults to 1 ms, thanks to [joelspadin]'s tweak in [#1271](https://github.com/zmkfirmware/zmk/pull/1271).
Default to 1ms USB HID interval [#1271](https://github.com/zmkfirmware/zmk/pull/1271) ?
[caksoylar] added a couple configuration options for displays, including a setting to invert display colors in [#1754](https://github.com/zmkfirmware/zmk/pull/1754) and an option to display the battery percentage for the stock status screen in [#1563](https://github.com/zmkfirmware/zmk/pull/1563).
Allow configuring battery level report interval [#1303](https://github.com/zmkfirmware/zmk/pull/1303) ?
<!--Improved customer page support [#1227](https://github.com/zmkfirmware/zmk/pull/1227)-->
#### Display Features
<!--Allow setting BLE connection intervals [#862](https://github.com/zmkfirmware/zmk/pull/862) ?-->
Add setting to invert display colors [#1754](https://github.com/zmkfirmware/zmk/pull/1754)
<!--Allow configuring battery level report interval [#1303](https://github.com/zmkfirmware/zmk/pull/1303) ?-->
Add battery percentage option for battery widget [#1563](https://github.com/zmkfirmware/zmk/pull/1563) ?
Refactor to create new peripheral status widget [#1263](https://github.com/zmkfirmware/zmk/pull/1263) ?
#### Zephyr 3.2
<!-- TODO -->
[petejohanson] helped prepare and test the upgrade of ZMK to Zephyr 3.2 in [#1499](https://github.com/zmkfirmware/zmk/pull/1499)(https://github.com/zmkfirmware/zmk/pull/1499). <!--The updated Zephyr release brings with it some key BLE stability fixes, as well as various other core improvements that improve ZMK. This was a huge undertaking!-->
### Documentation
Configuration options [#722](https://github.com/zmkfirmware/zmk/pull/722)
Battery sensor documentation [#868](https://github.com/zmkfirmware/zmk/pull/868)
New behavior guide [#1268](https://github.com/zmkfirmware/zmk/pull/1268)
Tap dance and hold-tap documentation improvements [#1298](https://github.com/zmkfirmware/zmk/pull/1298)
New shield docs for other interconnects including Xiao, Arduino Uno and Blackpill [#1607](https://github.com/zmkfirmware/zmk/pull/1607)
A new Bluetooth feature page [#1499](https://github.com/zmkfirmware/zmk/pull/1499)
Various improvements and fixes by kurtis-lew, joelspadin, filterpaper, byran.tech, dxmh, caksoylar and many others
<!--Refactor to create new peripheral status widget [#1263](https://github.com/zmkfirmware/zmk/pull/1263) ?-->
## New Shields
@ -161,13 +172,13 @@ Various improvements and fixes by kurtis-lew, joelspadin, filterpaper, byran.tec
## New Boards
- RP2040 boards, including Sparkfun Pro Micro, Adafruit KB2040, Seeeduino Xiao RP2040 were added as part of the Zephyr 3.2 upgrade [#1499](https://github.com/zmkfirmware/zmk/pull/1499) - [petejohanson]
- RP2040 boards, including Sparkfun Pro Micro, Adafruit KB2040 and Seeeduino Xiao RP2040 were added as part of the Zephyr 3.2 upgrade in [#1499](https://github.com/zmkfirmware/zmk/pull/1499) - [petejohanson]
- Puchi BLE [#1445](https://github.com/zmkfirmware/zmk/pull/1445) - [BenRoe](https://github.com/BenRoe)
- nRFMicro 1.3/1.4 (nRF52833) [#912](https://github.com/zmkfirmware/zmk/pull/912) - [pashutk](https://github.com/pashutk)
- nRF5340 DK [#1562](https://github.com/zmkfirmware/zmk/pull/1562) - [joelspadin]
- PillBug [#1530](https://github.com/zmkfirmware/zmk/pull/1530) - [kylemccreery](https://github.com/kylemccreery)
- Preonic Rev 3 [#1575](https://github.com/zmkfirmware/zmk/pull/1575) - [jeromeOlivier](https://github.com/jeromeOlivier)
- Corne-ish Zen v2 [#1498](https://github.com/zmkfirmware/zmk/pull/1498) and v1 [#1593](https://github.com/zmkfirmware/zmk/pull/1593) - [petejohanson] and [caksoylar]
- Corne-ish Zen v2 [#1498](https://github.com/zmkfirmware/zmk/pull/1498) and v1 [#1593](https://github.com/zmkfirmware/zmk/pull/1593) - [LOWPROKB] and [caksoylar]
- Polarity Works CKP family of boards [#1547](https://github.com/zmkfirmware/zmk/pull/1547) - [ReFil](https://github.com/ReFil)
## Coming Soon!
@ -210,6 +221,8 @@ Some statistics of interest for ZMK:
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.
[okke-formsma]: https://github.com/okke-formsma
[andrewjrae]: https://github.com/andrewjrae
[xudongzheng]: https://github.com/xudongzheng
[nicell]: https://github.com/Nicell
[petejohanson]: https://github.com/petejohanson
[kurtis-lew]: https://github.com/kurtis-lew