At this point, the project is functionally complete... but there are some firmware improvements I intend to make going forward:
- Monitor the "peripheral detect" line and detect a keyboard disconnect event, then attempt to re-connect when detected again. Currently, the module must be fully installed onto the keyboard before powering the module on. Once the keyboard handshake is complete, the LED changes from blue to green/yellow/red (depending on battery state). I'd like for the handshake to wait until the device is connected. I had this kindof working, but the handshake would begin instantly and would fail because I couldn't finish plugging the device in fast enough to connect all the pins. A short one or two second delay should fix this.
- I'd like to make the heartbeat LED fade in and out instead of pulsing. The LED is surprisingly bright and - let's just say that the current version encourages touch typing. If you're looking at your keyboard be prepared for a photon assault. This too should be relatively straightforward to implement.
- I would like to implement a low power sleep mode. Currently, the keyboard is kept awake the entire time and constantly draws power. The TinyPICO also has some built-in deep sleep modes that I'd like to take a look at. The Hardware and Electronics reference guide has some details about the Keyboard's low power mode and how to enable and recover from it.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.