Commit graph

11 commits

Author SHA1 Message Date
Ondrej Jirman
176a2da7e2 firmware: Implement USB enabled/disable control via I2C 2021-08-02 10:05:43 +02:00
Ondrej Jirman
134b4b6a8b firmware: Move more of the USB shutdown control to usb_enable/usb_disable
- make sure USB resources are re-enabled before jumping to bootloader
- make sure all USB resources are disabled prior to jumping to user fw
2021-08-02 10:03:48 +02:00
Ondrej Jirman
6a5fe581b9 Implement flashing over I2C and user/stock firmware support
I2C register layout changed a bit to make various operations easier
to implement in FW and for the user.

Flashing/debugging tools now share more code. Firmware is now more
configurable (it's now possible to compile-out various features).

Self-testing for column-shorts is implemented.

Firmware is optimized for low power consumption.
2021-06-28 15:09:47 +02:00
Ondrej Jirman
04ca071b09 Fixup/document I2C 2021-06-19 02:51:23 +02:00
Ondrej Jirman
fbfa245ad4 Allow to use debug printing from interrupt handlers 2021-06-19 02:50:34 +02:00
Ondrej Jirman
2725248532 Add USB stack for easier printf() based debugging of the firmware 2021-06-18 19:43:11 +02:00
Ondrej Jirman
c8d8eef090 Fix key release change detection in polling mode 2021-06-18 18:28:56 +02:00
Ondrej Jirman
b9b02a5e73 Update some comments 2021-06-16 14:44:18 +02:00
Ondrej Jirman
bca8c47f46 Implement polled mode and key bitmap change signalling via external interrupt
- this firmware consumes about 4-5 mA (can be probably made lower)
2021-06-16 14:09:25 +02:00
Ondrej Jirman
e59f647d83 Allow to switch to bootloader mode via FN+PINE+F 2021-06-15 09:21:31 +02:00
Ondrej Jirman
d3c45f58a4 Initial commit 2021-06-14 00:10:49 +02:00