Handheld Game System Powered by Arduino

DIY Handheld Game System

These days, it’s easy enough to play games on the go. If you have a smart phone, you are pretty much set. That doesn’t mean you can’t still have fun designing and building your own portable gaming system, though.

[randrews] did just that. He started out by purchasing a small memory LCD display from Adafruit. The screen he chose is low power as far as screens go, so it would be a good fit for this project. After testing the screen with a quick demo program, it was time to start designing the circuit board.

[randrews] used Eagle to design the circuit. He hand routed all of the traces to avoid any weird issues that the auto router can sometimes cause. He made an efficient use of the space on the board by mounting the screen over top of the ATMega chip and the other supporting components. The screen is designed to plug in and out of the socket, this way it can be removed to get to the chip. [randrews] needs to be able to reach the chip in order to reprogram it for different games.

Once the board design was finished, [randrews] used his Shapeoko CNC mill to cut it out of a copper clad board. He warns that you need to be careful doing this, since breathing fiberglass dust is detrimental to living a long and healthy life. Once the board was milled out, [randrews] used a small Dremel drill press to drill all of the holes.

The final piece of the puzzle was to figure out the power situation. [randrews] designed a second smaller PCB for this. The power board holds two 3V coin cell batteries. The Arduino expects 5V, so [randrews] had to use a voltage regulator. This power board also contains the power switch for the whole system.

The power board was milled and populated. Then it was time to do some measurements. [randrews] measured the current draw and calculates that he should be able to get around 15 hours of play time using the two 3V coin cell batteries. Not bad considering the size.

[via Reddit]

Reverse Engineering LCD Displays

Dorkbot logo on a large LCD display

Over at DorkbotPDX in Portland, a member showed up with a stack of large LCD displays from point of sale terminals. [Paul] took it upon himself to reverse engineer the displays so that they can be recycled in future projects.

The control circuit for this LCD resides on a rather large PCB with quite a variety of components. The board was reduced to three main components: an MSM6255 display controller, a 32k RAM chip which is used as the framebuffer, and a tri-state driver.

With all the unneeded components out of the way, a custom board based around an ATmega88 MCU was added. This board was soldered in to interface with the LCD controller’s bus. This allows data to be written from the 128k flash ROM on the custom board into the frame buffer. Once this is done, the display controller will display the data on the LCD.

Now that data could be written, [Paul] figured out the correct configuration for the display controller. That was the final piece in getting images to show up correctly on the display. If you happen to find some old Micros 2700 POS terminals, [Paul]’s detailed write-up will help you scavenge the displays.

Customized iPad LCD Screen Clips onto Macbook as a Slick Second Screen

Macbook with iPad second screen

Last year, [Ben] found a good deal on iPad 3 LCD screens. He couldn’t resist buying a couple to play around with. It didn’t take him long to figure out that it’s actually quite simple to use these LCD screens with any computer. This is because the LCD panels have built-in Apple Display port interfaces. This means that you can add your own Display Port connector to the end of the LCD’s ribbon connector and just plug it into a computer. You’ll also need to hook up a back light driver, which [Ben] was able to find pre-made for around $35.

The hack doesn’t stop there, though. [Ben] wanted to have a nice, finished product. He laser cut an acrylic bezel for the LCD screen that was a perfect fit. He then milled out a space for the LCD to fit into. The acrylic was thick enough to accommodate the screen and all of the cables. To cover up the back, [Ben] chose to use the side panel of a PowerMac G5 computer case. He chose this mainly for aesthetics. He just couldn’t resist the nice brushed aluminum look with the giant Apple logo. It would be a perfect match to his Macbook.

Once the LCD panel was looking nice, [Ben] still needed a way to securely fasten it in the right place. He knew he’d want it next to his Macbook, so why not attach it directly to the Macbook? [Ben] got to work with his 3D printer and printed up some small plastic clips. The clips are glued to the iPad screen’s acrylic bezel and can be easily clipped on and off of the Macbook screen in seconds. This way his laptop is still portable, but he has the extra screen real estate when he needs it. [Ben] also printed up a plastic clip that turns the iPad’s USB power connector and the Display Port connector into one single connector. While this is obviously not required, it does effectively turn two separate plugs into one and makes the whole project that much more slick.

Simple Hack Creates an Inverted Watch Display

Before and after of a negative display watch conversion

Sometimes you have to bust out the wayback machine to find a good hack. Back in 2008, [Brian] performed this awesome negative display hack on his classic Casio G-Shock watch. The G-Shock, like most digital watches, uses a twisted nematic LCD. All Liquid Crystal Displays are made up of a layer cake of polarizers, glass, and liquid crystal. In non touchscreen displays, the top layer is a sheet of polarizing film glued down with an optical quality adhesive.

[Brian] disassembled his watch to reveal the LCD panel. Removing the glued down polarizing film can be a difficult task. Pull too hard and the thin glass layers will crack, rendering the display useless. After some patient work with an X-acto knife [Brian] was able to remove the film.

Much like the privacy monitor hack, the naked watch appeared to be off. Holding a sheet of linear polarizing film between the watch and the viewer reveals the time. If the film is rotated 90 degrees, the entire screen is color inverted. [Brian] liked the aesthetics of the inverted screen, so he glued down his polarizing film in the offset position. After reassembly, [Brian’s] “customized” watch was ready to wear.

[Via Hacker News]

Hackaday Links: March 31, 2014


Wanting to display his Google calendars [Chris Champion] decided to mount an old monitor on the wall. The hack is his installation method which recesses both the bracket and the outlet while still following electrical code (we think).

Since we’re already on the topic. Here’s a hack-tacular project which hangs a laptop LCD as if it were a picture frame. We do really enjoy seeing the wire, which connects to the top corners and hangs from a single hook a few inches above the screen bezel. There’s something very “whatever works” about it that pleases us.

[Jaspreet] build a datalogger in an FPGA. He put together a short video demo of the project but you can find a bit more info from his repo. He’s using a DE0-Nano board which is a relatively low-cost dev board from Terasic.

Want to see what’s under the hood in the processor running a Nintendo 3DS? Who wouldn’t? [Markus] didn’t just post the die images taken through his microscope. He documented the entire disassembly and decapping process. Maybe we should have given this one its own feature?

If you’re streaming on your Ouya you definitely want a clean WiFi signal. [Michael Thompson] managed to improve his reception by adding an external antenna.

We always like to hear about the free exchange of information, especially when it comes to high-quality educational material. [Capt Todd Branchflower] teaches at the United States Air Force Academy. He wrote in to say that his ECE383 Embedded Systems II class is now available online. All the info can also be found at his Github repo.

And finally, do you remember all the noise that was made about 3D printed guns a while back? Well [Mikeasaurus] put together the .iStab. It’s a 3D printed iPhone case with an integrated folding blade…. for personal protection? Who knows. We think it should be a multitasking solution that functions as a fold-down antenna.

Smart Reflow Oven is Over-Engineered


[Linas] reverse engineered an AMOLED HTC 800×480 screen and interfaced it with an STM32 micro-controller, along with some other components, to make a gorgeously over engineered reflow oven.

Under the hood there is a PSoC5LP PID controller to control the 800W IR heating coil and two K-type thermocouples for sensing.

The real beauty is in the relatively small STM32 chip powering the HTC AMOLED screen. The AMOLED screen is high contrast and has a wide viewing angle, giving it a clear crisp view from all front facing viewpoints. Though pushing the limits of what the STM32F429i can do, [Linas] managed to make a very nice “home-grown” user interface, complete with user configurable settings and current temperature graphs.

The user interface looks very responsive and using some clever programming, [Linas] was able to make use of the potential of the screen to provide beautiful plots and interface widgets.

[Linas] goes into quite a bit of detail about the programming involved with rendering to the screen, so be sure to check out the video after the jump.

Continue reading “Smart Reflow Oven is Over-Engineered”

Controlling Alphanumeric LCDs With Three Wires


The HD44780 LCD controller is the defacto way of adding a small text display to your next project. If you need a way to display a few variables, a few lines of text, or adding a small user interface to a project, odds are you’ll be using one of these parallel LCDs. These displays require at least six control lines, and if you’re using a small microcontroller or are down to your last pins, you might want to think about controlling an LCD with a shift register.

[Matteo] used the ubiquitous ‘595 shift register configured as a serial to parallel converter to drive his LCD. Driving the LCD this way requires only three pins on the Arduino, [Matteo]’s microcontroller of choice.

For the software, [Matteo] modified the stock Arduino LiquidCrystal library and put it up on his Git. Most of the functions are left untouched, but for this build the LCD can only be used in its four bit mode. That’s not a problem for 99% of the time, but if you need custom characters on your LCD you can always connect another shift register.

If you just can’t spare three pins for a display, you could squeeze this down to just two, or add a second microcontroller for a one-wire-like interface.