Skip to content

AAKBD firmware for Model F keyboards preview

Pre-release
Pre-release
Compare
Choose a tag to compare
@arkku arkku released this 20 Aug 12:48
· 30 commits to main since this release
bddca70

This is the fourth release of the AAKBD firmware that should "fully" support the Brand New Model F keyboards (F62 and F77).

This release improves the calibration logic, in particular detecting and correcting cases where keys are held down during calibration (which would formerly always result in those keys not working reliably). The saved calibration in EEPROM is also now automatically cleared if more than 5 keys register as being held down when plugging in. This should cover both the case where the calibration is off by a lot and give an option to manually clear the calibration by mashing down all of the keys. (The only case that won't be covered is if the saved calibration is so far off in the other direction that you can't get 6 keys to register as being pressed, but that should be very unlikely and can anyway be reset by flashing a firmware that clears the save.)

Since the third release, the USB vendor and product id use the newly-registered official id for these keyboards. The matrix scanning speed has been further improved (the common case should be around 0.6 ms for the F77 and around 0.5 ms for the F62).

The attached zip files contain pre-built firmwares in 192 different combinations, but it is highly recommended to compile your own if that's a possibility. This firmware is generally intended for technically-minded users, however, so customisation includes writing simple code (but there are examples).

To undo the firmware, all of the builds there should support Fn + Space + R to reset the keyboard to bootloader. They also support DFU reset, so a command like dfu-util -e can reset the keyboard programmatically.

These firmwares autosave the calibration on first start (assuming the calibration looks reliable). It is important that you don't hold down any keys at that time. The saved calibration will be used if keys are held down on start in the future. In case the keyboard goes out of calibration, you can use Fn + Space + U to unsave the calibration (assuming those keys still work). If not, you can flash a different firmware (I can later provide a firmware specifically to erase the calibration, or you can increment CAPSENSE_CAL_VERSION in matrix.c and build one yourself.)

The Fn referenced above is either the key to the right of right Shift if that key is split, or the right Ctrl key otherwise.