pok3r_re_firmware
pok3r_re_firmware copied to clipboard
[Pok3r RGB] RGB matrix in QMK
~Don't have pok3r RGB keyboard, but~ wanted to help out with the RE effort and create a starting point for support in QMK. (Update: got the keyboard).
Pok3r RGB has 2 MBIA043 LED Drivers in a chain. Stock firmware uses GPTM1 to drive GCLK PWM signal and uses BFTM1 for time-multiplexing.
GPTM1 PWM frequency: 14.4 MHz
BFMT1 compare value: 60,000 ticks (where input frequency is 72 MHz)
Pin Mapping (identical to Pro S RGB): MBIA043 GCLK: C0 MBIA043 DCLK: A14 MBIA043 LE: A15 MBIA043 SDI: C2 MBIA043 SDO: B0 MBIA043 Power: C1 (power is enabled when C1 is low)
LED (Column) GPIO Pins (gpio_map_3 in pok3r_rgb/v140 disassembly): C8, C7, B5, B4, B3, B2, C6, C5
MBIA043 Configuration (same as Pro S RGB): 0xc
for both drivers
Tasks:
- [ ] Update disassembly annotations
- [ ] Upstream QMK work:
- [ ] Add/update generic HT32 board targets and linker scripts in ChibiOS-Contrib
- branch: https://github.com/ChibiOS/ChibiOS-Contrib/pull/400
- [ ] Upstream improved HT32F165X/HT32F523XX MCU support with capability to reboot into ISP bootloader
- branch: https://github.com/hansemro/qmk_firmware/commits/ht32-mcu-support
- depends on: https://github.com/ChibiOS/ChibiOS-Contrib/pull/400
- [ ] Upstream Pok3r RGB support without RGB Matrix support
- branch: https://github.com/hansemro/qmk_firmware/commits/pok3r_rgb_support
- depends on: https://github.com/hansemro/qmk_firmware/commits/ht32-mcu-support
- depends on: https://github.com/ChibiOS/ChibiOS-Contrib/pull/400
- [ ] Upstream generic
mbi
driver: https://github.com/hansemro/qmk_firmware/commits/mbi_driver_dev - [ ] Support RGB Matrix after upstreaming
mbi
driver and making any necessary driver changes- branch: https://github.com/hansemro/qmk_firmware/commits/pok3r_rgb_mbi_dev
- [ ] Add/update generic HT32 board targets and linker scripts in ChibiOS-Contrib
- [x] Prototype QMK fork with mbia043 driver: https://github.com/hansemro/qmk_firmware/commits/pok3r_rgb_mbia043_dev
- [x] Validate Key Matrix to LED Index
- Switch to key-reactive RGB effects to test mapping
- [x] Validate LED Matrix to LED Index
- Validate with Pinwheel effect or init test (https://github.com/hansemro/qmk_firmware/blob/1ef7c981ac62a3224c03731deaac4bdf1b59fcb1/keyboards/vortex/pok3r_rgb/mbia043.c#L252-L262)
- [x] Fix LED Index to Physical Position
- [x] Caps Lock indicator LED
- [x] Left+Right Spacebar LEDs
- [x] Validate Key Matrix to LED Index