Previous prototype is great for development purposes (easy access to debugger interface), but for everyday use it's a little bit to big. I want to carry InputStick all the time, so I can finally store all my passwords in my Android password manager application (currently under development) and use InputStick to type them for me (some of them are 64 characters long! Just imagine typing that manually every time). So, I've decided to look for smaller enclosure, yet big enough to fit all InputSticks components inside. I've disassembled several USB flash drives, to see if I will be able to reuse their enclosures for InputStick. Most of them were just a little bit to narrow, even to fit Bluetooth module, which is 13 mm wide. Finally, I got my hands on this USB flash drive enclosure:
After taking some measurements it started to look promising, its internal dimensions are: 16mm x 36mm. I started to work on new revision of PCB. Placing components and routing traces was much more difficult task this time, yet I managed to remain with 0603 resistors/capacitors. Maybe its time to finally switch to 0402? I remember that some time ago I thought that 0603s were hard to hand solder. However, because of space constraints I had to change package of STM32 chip from 48pin LQFP to 36pin QFN, so this time I had to use hot air soldering station. Here you can see results:
As you can see, one side of the PCB is occupied almost entirely by Bluetooth module. USB plug is a little bit crooked... well, I could fix it if i wanted to, but for now I don't mind. It's just a prototype. Now my main problem is difficult access to programming interface, but I'm going to solve this with bootloader which will allow to remotely update firmware. For debugging purposes I will stick to previous prototype.
As you can see on the picture above, unless I use different Bluetooth module, current prototype is as small as it can get. Compared to previous one, new prototype is considerably smaller: 52mm x 19mm vs 70mm x 23mm (including USB plug):
It can be attached to a keyring:
or with the metal cap removed, it can even fit into a wallet: