Firmware -------- - mask R5:C4 and R4:C2 because these are always on on my prototype and prevent development of idle functionality (Z key is stuck) C1 2 3 4 5 6 7 8 9 10 11 12 R1 . . . . . . . . . . . . R2 . . . . . . . . . . . . R3 . . . . . . . . . . . . R4 . X . . . . . . . . . . R5 . . . X . . . . . . . . R6 . . . . . . . . . . . . - sleep when no key is pressed and wakeup using pin change interrupt on P6 port - wakeup on I2C activity only happens on device address match, so we can only sleep again after the entire transfer completes (how to detect that though?) USB Flashing Tool ----------------- - investigate reason for URB errors/empty (in command status INT transfer) Userspace input device daemon ----------------------------- - allow to read keymap config from a file instead of compiling it in - improve combo key handling - sticky keys entry mode? - add various modal modes: - show modal hints on the display - write to linux console framebuffer directly - run a generic process/script (eg. to show mode in i3 status bar) Modes: - navigation mode arrows work as arrows without holding Fn key, holding Fn key inverts the meaning to primary (so Fn+Up types a 'dot') - sticky Fn mode (all keys act as if Fn is being held) - sticky keys mode (build a multi-key shortcut gradually, without having to hold multiple keys at once) - ???