Firmware: initialize I/O expander during matrix scans
nglgzz opened this issue · comments
Angelo Gazzola commented
Currently, the I/O expander is initialized only during matrix initialization. This results in the right half of the keyboard working only if it's connected before the keyboard is connected to the PC. If the right half is connected after the keyboard has already performed the matrix initialization, it's completely ignored.
If the controller fails to communicate to the expander, it should attempt to initialize it again until it manages to do so. This shouldn't compromise the functionality of the left half though, that should work the same whether the right half is connected or not.