The Tomu is super cool! It also has a bunch of spinoffs, the most interesting of which IMO is the Fomu (https://tomu.im/fomu.html). It's an ice40up5k FPGA in your USB port, not sure if you can get them anywhere due to the parts shortage but I know I've enjoyed hacking on mine.
I just received my Somu a week ago. Really like the form factor and am mostly happy with it's functionality so far. One thing that bugs me is that the RGB light is always on. While it's position inside the USB socket is deep enough for it not to be bothersome to the eyes, I'm annoyed that the security token quite literally has a bright light on it that potentially draws the attention of bad actors. Luckily I got the "Hacker" version that allows this behavior to be modified. Anyone who gets the standard version will have locked firmware, meaning this behavior cannot be changed. FYI.
Thanks, feels good to not be alone. I see this kind of hardware and just shrug. But I'd really love to be the kind of person who sees the possibilities and says "wow this is super nice!" (-:
It's quite easy to change the design to C-type. But the reason that they chose an A-Type is that it's much larger and only needs contacts on one side => you can fit the entire board inside the USB port. With C-type, that won't fit.
Not Bluetooth, but tempting to give this idea a try using a sub-$1 microcontroller [0] implementing a software-defined radio with a PCB trace antenna which is powered from the kinetic energy when you actually hit the key.
Not bluetooth, but every key being wireless is great for ergonomic keyboards. You can tune the layout iteratively without soldering anything. I think there's enough kinetic energy for a short transmit each time the key is pressed, but currently the energy is now dispersed to bounce the key back up. A thick keyboard (like kinesis or dactyl) does have space for a CR1616 battery under each switch though.. That with an NFC/RFID chip for each key might actually enable a truly wireless keyboard.
Put in a mini display to the key, and customise your keycaps! See my other comment about the EspUSB and trying to type other languages.
The ARM core wouldn't be ideal for that though, because it would need a separate WiFi chip. Probably better just to use an ESP (ESP8266, ESP8285, ESP32-C3) that has WiFi (sometimes also BLE) on the silicon.
For an easier challenge, I wish there's a TOMU that sits flush with the USB port, and with functioning push buttons on the side. Then I could add 2 extra keys to my keyboard!
I was shocked when I found out ESP wasn't ARM. It's a weird arch you never heard of. They distribute an ancient Gcc in their SDK, and at least Debian only packages an ancient Gcc for it. Don't know if anybody packages a current-ish compiler. Don't know how big a hassle it is to build one.
There is reasonable GCC support for the ESP Vertex arch, and they seem to be migrating toward RISC-V, so the current ESP32-C3 uses RISC-V arch. But they still have another Vertex part in the works.
We switched from Arduino (which is ARM) to ESP32 and all dependencies compiled and just worked, so I wrongly assumed that it'd be ARM, too. But apparently, their tooling is just really good.
Charles Lohr made the amazing design. I built a little on top, and made a slight modification to the firmware to allow text entry in all languages by sending Unicode codepoints.
So now I can type Chinese (or Japanese, Korean, Russian, Arabic, Thai...) on my phone's keyboard, and have the EspUSB type it into my laptop. Very convenient when the characters aren't printed on the keys.
Pity I never figured out how to do the regulatory compliance for the EspUSB, so couldn't follow through on actually getting it onto a web store (e.g. Tindie, AliExpress, eBay, TradeMe). I looked into it, but the lack of EM shielding is quite difficult to justify, and adding such shielding would make it too big.