June saw lots of progress on Palawan. Many bugs were fixed in the Grainuum stack, the bootloader was fleshed out, and stability was improved. The system is usable now, and just about feature-complete. Enough to think about shipping.
An image is worth many words, so let's start with a box that uses Palawan:
The box is some cheap arcade buttons sourced from the markets of Shenzhen put into a plastic takeout container I got from the local food supply store. The hard part was sourcing a 24mm drill bit. Once I had the bit, I printed out a pattern on some paper, taped it on, braced the plastic with a roll of tape, and drilled the pilot holes:
Once that was done I drilled the full holes. I had to be very ginger when drilling, because the plastic tended to catch and shred. But in the end it came out looking alright. Here you can see the pilot holes drilled, and the tape that was used to brace the plastic:
My first prototype assembly used alligator clips. This was very easy to put together and test, although the actual box did not go together. It was a decent method to check usage and wiring, though:
In the end, I decided to solder things together. It's not as "DIY-friendly", but the results are much easier to work with and are more stable. It's also lighter, and frees up the alligator clips for use with other projects.
This particular contraption shows up as a keyboard, and can press numbers 0-9 and Tab. When it boots, it compares its firmware hash with the firmware hash of the "server", and updates itself if they differ. This way, it's possible to make modifications to a device that's installed and inaccessible otherwise.
Now that I have a working prototype, it's possible to get real-world data on this idea, and see what features are really important.