That's a pretty fun project, but it's a bit sad that the electronics were lifted form an existing keyboard.
Are mindstorms flexible enough to emulate USB HID?
edit: it looks like mindstorm EV3 is bluetooth-enabled. I don't know the details, but it might be possible to get it bound as a bluetooth keyboard, and thus to have a fully functional "pure-lego"[0] bluetooth keyboard.
[0] the mindstorm EV3 brick runs a Linux distro on a 300MHz ARM9 core with 64MB RAM and 16MB flash (plus a SDHC slot). Whether this remains "pure lego" may be up to debate.
LEGO purists generally admit anything produced by the LEGO company, plus generic consumables like batteries as specified.
So a sticker from an original set is allowed, but printing your own sticker isn't; any 9V battery will do in a 9V battery box, and any SD card in an SDHC slot, but not a newly made extra-long wire to carry power out to a motor.
There are companies that make LEGO-compatible bricks, which range from execrable quality to slightly better than LEGO's own, but none of that would qualify.
All that being said, I don't know of anyone who maintains LEGO purity except in competitions and exhibitions with specific rules. LEGO themselves often produce large sculptures with an interior support armature which is not made of LEGO products.
Sure, but in this case the lego part is kinda minor, it's a basic sculpture but the logic is lifted from and the layout imposed by the original keyboard's contacts.
You can't create a better, more flexible or completely different keyboard (e.g. recreate a symbolics keyboard, or a typematrix layout)
easy to flash and run own distro on the ev3 as well for example
https://github.com/mindboards/ev3dev
or lejos if you want the jvm.
the ev3 is a fair bit of fun, not as flexible as arduino (obviously) but it ain't too bad.
What I would like to see would be a keyboard where the full keys were like LEGOs, and you could arrange them on the board in any layout you wished. But this is a good start.
I was disappointed when I saw the base was taken from a keyboard (I was expecting that to be mindstorm based as it was posted on HN). But the mechanism for the keys is very cool and well designed, it's a massive understatement to say it's just Lego pieces glued on the keys
The way you can easily slide them to perfectly arrange them is pretty neat too. I can see this work well in prototyping settings with DIY contact switches (two layers of aluminium with a piece of foam and a hole, basically).
Are mindstorms flexible enough to emulate USB HID?
edit: it looks like mindstorm EV3 is bluetooth-enabled. I don't know the details, but it might be possible to get it bound as a bluetooth keyboard, and thus to have a fully functional "pure-lego"[0] bluetooth keyboard.
[0] the mindstorm EV3 brick runs a Linux distro on a 300MHz ARM9 core with 64MB RAM and 16MB flash (plus a SDHC slot). Whether this remains "pure lego" may be up to debate.