Prototyping a low-resolution handheld gaming rig


[Jason] has been hard at work on this Arduino-based low-res gaming platform. He even had a fab house deliver circuit boards to pull everything together. It’s a little small in his hands, and the graphics are limited to the 8×8 pixels provided by the display. But it still looks like a lot of fun and the code was written to make adding new games quite painless.

The board hosts an ATmega328 which drives the bi-color LED display using a pair of TPIC6B595 shift registers. Control is provided by a collection of buttons to either side of the display. The unit is powered by three AAA batteries held in a pack soldered to the back side of the PCB.

The image above shows [Jason] giving a Space Invaders game a try. The clip after the break shows respectable action, sound from a piezo buzzer, and it even scrolls your score at the end of the game. But you’re not limited to just one title. Adding new games is as easy as implementing a class in a new header file. You can get a feel for how this is set up by viewing the source code repo.

This reminds us of the Pixel Bros low-res system.

Continue reading “Prototyping a low-resolution handheld gaming rig”

8x8x8 LED cube and the board that drives it

Check out the LED cube which [Thomas], [Max], and [Felix] put together. But don’t forget to look at that beautiful PCB which drives it… nice! But hardware is only part of what goes into a project like this one. After the soldering iron had cooled they kept going and wrote their own software to generate patterns for the three-dimensional display.

Looking at a clean build like this one doesn’t drive home the amount of connections one has to make to get everything running. To appreciate it you should take a look at this other 512 LED cube which has its wires showing. You can see from the schematic (available in the project repository) that all of these lines are managed by a series of shift registers. The board itself connects to a computer from which it gets the visualization commands. A Java program they call CubeControl can push letters or turn the cube into a VU meter.

The team built at least two of these. This smaller version uses red LEDs, while the larger one shown in the video after the break has blue ones.

Continue reading “8x8x8 LED cube and the board that drives it”

Building a bigger bar graph

Take a gander at the Giant LED bar graph which [Chunky Hampton] recently completed (from this image we don’t think the nick name suits him). It’s simple both mechanically and electrically, but we love the look and think it would be a nice addition to your home, hackerspace, or as a children’s museum exhibit (we’re looking at you [Mr. Porter]).

The enclosure is a hunk of PVC electrical conduit. It’s got to be one of the largest sizes, but still should be found at most home stores. The base mounts easily and the cover snaps into place. [Chunky] used a hole saw to create the openings for the LED modules. They’re circular boards with multiple single-color LEDs on them. A common power bus feeds the high side of each bit, while a couple of transistor ICs controlled by 595 shift registers address them on the low side. From there just use any controller you wish, but in this case it’s an Arduino.

[Chunky] uses the meter to display power output from his stationary bicycle generator. But he also put together a little Larson Scanner demo which you can see after the break.

Continue reading “Building a bigger bar graph”

LED matrix shield starts with a very loud snap

We see a lot of LED matrix projects. They’re fun, and you can learn a lot of basic lessons during the build. But this one is out of the ordinary. [Rtty21] built an oddly sized, and sound controlled matrix shield for his Arduino. That’s it right there, the shield is the large chunk of protoboard but you can just see the Arduino peeking up over the top of it.

Now we say oddly sized because a 9×9 matrix doesn’t make much sense with an 8-bit micro controller. There’s no schematic but in the clip after the break he mentions that the columns and rows are driven by a decade counter and shift register and that’s what makes it possible to drive nine bits easily. Also of note on the board is that washer above and to the right of the matrix. It’s a touch-sensitive reset button. But the main control mechanism is a Clapper clone circuit. Just snap your fingers and it turns the project on or off. [Rtty21] based the design on this step-by-step sound input build.

Continue reading “LED matrix shield starts with a very loud snap”

[David] hand soldered a Blinky ball… and you can too!

This is a blinky ball that [David] designed, built, and programmed himself. Does it look familiar? It should, he took his inspiration from the original prototype, and the Hackerspace-produced derivative. [David’s] version is not as small, or as blinky, but in our minds the development process is the real reason for building something like this. He took a great idea and figured out how he could pull it off while pushing his skill set, staying within his time and budget constraints.

The project is powered by an Arduino nano which resides in the core of the ball. [David] used protoboard sourced locally for each of the slices, soldering green LEDs along the curved edges, and added shift registers to drive them. The ball is driven by a LiPo battery which can power it for about 45 minutes. You can see the animation designs he coded in the clip after the break.

Continue reading “[David] hand soldered a Blinky ball… and you can too!”

Arduino MIDI sequencer displays a lot of data

This Arduino MIDI sequencer has no shortage of ways to display loop info. The screen above is a touch-sensitive interface that acts as the user input. But if this screen is not visible, you can still see which tracks have activated samples for each beat and what effects are being used. That’s thanks to the collection of display boards which are shown in the video after the break.

The setup acts as the MIDI front end, relying on other hardware to generate the samples. It presents all of the options through several pages on the 320×240 touch screen display. The Ardunio Mega is responsible for monitoring the UI data, crafting and sending the MIDI commands, as well as updating the LED-based display boards. These include bar graphs for the various effects, a four row by sixteen pixel beat pattern display, and 7-segment displays to track the current location within the loop. All in that’s 368 LEDs driven by 18 shift registers.

Update: Link to a gallery can be found after the break as well.

Continue reading “Arduino MIDI sequencer displays a lot of data”

AVR External Memory Interface (XMEM) reads input matrix

Reading from a large number of inputs, like this piano keyboard, can be tedious. Even when multiplexing there’s a lot to keep track of. But if you choose the right microcontroller, you may have hardware assistance. Here’s an ATmega640 is using it’s external memory interface to read the key matrix.

You may remember the Open Music Labs article about reading from a shift register using just one pin of a microcontroller. This time around a shift register is still used, but instead of pulling in a long line of parallel inputs, the switches are multiplexed to reduce the number of I/O pins used to read them.

A 74HC573 is used to facilitate the multiplexing. We won’t go into how that part is accomplished; there’s a separate post that explains the process. What’s unique here is that the XMEM peripheral of the AVR microcontroller is used to grab the data. This is intended for external memory chips, but if you get the timing just right, it greatly simplifies reading in a matrix of up to 128 inputs.