nRF52840 Chorder (experimental)
Zach and I are working on a version of the chorder that uses a Seeed Studio XIAO BLE nRF52840. The goal is to make a single chorder that can gracefully be both an HID USB Keyboard and an HID BLE Keyboard. It is working well, but does a few things that I am not happy with yet if it were up for general use. If you would like to be part of it's shakedown, write me and I can send you the code. But at this point only ask if you are comfortable editing arduio code as you will need to do that to customize the chorder to your preferences.
Currently I am using it for my primary keyboard with both my phone and Linux box.
You will note in the above, that there is an additional small board being used. This board is not normally needed, it is a dedicated battery charging board I had on hand and was important before I had implemented putting the nRF52840 into it's “standby” state ( using <5μA ). The SPST on/off here connects between the charging board and the nRF52840 I use1) can now be replaced with a momentary SPST connected as a reset switch. This reset will turn the nRF5280 on from standy. This state can be entered by a chord or triggered if idle for an hour2) and off USB power.
Also of note, the “Franken-Chorder”3) enclosure pictured is so named as it is made up from parts from several different enclosure attempts. The 3D printed flat bottom(Zach & Nhat), some 3D printed keyswich holders(Zach), an acrylic top (Nhat). Pictured with keyboard feet,4) mag connectors,5) Cherry MX red switches modified with ~25g springs, and mostly very old keycaps.
Parts list:
- 7 keyswitches (choc pinks, or cherry MX with light springs swapped in.)
- 7 keycaps for selected the keyswitches.
- 350ma-500ma LiPo battery
- SPST switch, momentary or on/off
- Optional: headers
- Some form of enclosure or a 3D printed case and whatever hardware the case needs.
- Optional keyboard feet, I like these which add some weight - Hagibis Laptop Stand Adjustable Height. These are pictured above.
- Optional magnetic data and charging connectors. I prefer these as they eliminate the force of cable insertion and removal on the XIAO board. The ones pictured are N. NETDOT Gen10 I have also used the stronger and more expensive 24Pin 240W Magnetic Right Angle USB C Adapter, 40Gbps Type
There are a number of chords specific to this chorder. These do things like changing the HID mode between BLE and USB, put the board into the low power standby state, and blink system information on the chip's RGB LED. My default for these chords are documented on the Function Keys - Function Mode Prefix chart.