My children are hopelessly addicted to their gaming devices. This is a problem, but not one that I can directly solve because the school mandates that they have both an Android smartphone and a Windows laptop. Rather than to meet the problem head on I figured the better way to address it is to replace consumption with creation. But creating anything at all on a smartphone or a laptop, where the competition is insane, and the toolchains super complex is going to be an uphill battle. After all, a typical game title these days has a studio full of people dedicated to it, large teams of developers and so on. There isn’t really anything you can do that will come close to being able to compete with the eye candy and 3D stuff your average game contains.
But where you could compete is on the fun factor. And in that sense some of those old games are right up there with the new ones, if not downright more fun. It’s also a much better match for my skillset, and far easier for a novice to get into if we piggyback on the Arduino eco-system, which has some fairly powerful options in their offering. More or less by chance I ran into a place that sells interesting hardware bits, in this case a 32x8 display of addressable LEDs.
Not a cheap component at 20 euros each or so, but actually cheaper than the individual LEDs. Still, 32x8 is a bit anemic for any kind of game so I ganged up 6 of them in a rectangle for a 48x32 display, which gives this project its name. On a typical high res display that’s about 2 characters worth of space but because the LEDs used are huge compared to your typical pixel on a normal screen the display ends up quite large. 48x32 cm works out to about 19x12”.
An enclosure of sorts is a must, so I lasercut a box with a relatively cheap Chinese made lasercutter that cuts plywood like it’s cardboard and with insane precision. I could never make something with this level of fit by hand. Getting it all to work was a bit fiddly but in the end I got a set of parts that were good to be used for the real thing.
Joysticks were another challenge, but a smaller one, Thingiverse to the rescue, a really simple thing to print and it fit on the first try, here is the finished result and what’s inside it:
Putting it all together, an Arduino R4 as the computer component and some standard wiring and some connectors to hook it all together will get you this:
And after some more work here is the Nokia ‘Snake’ game in its natural environment:
Note how the graphics are all composed of single LEDs, the features are obstacles (purple) food (yellow), the snake itself (green) and the snake head (blue). This is a single player game but I’ve also built a number of simple two player games with it.
In the next installment I will walk you through the software and show you how to make simple games, if you already know how to program or want to build one of these yourself the cad files and the include file are here.