The Raspberry Pi, the $35 credit card-sized computer, has lived an interesting life despite being less than a year old. It has been used to teach programming and host servers, but above all it has provided a near-perfect platform for some of the most fun and interesting hobbyist projects in the computing world.

Arcade cabinets, computing clusters housed in LEGOs, musical instruments, robots, and wearable computers are just some of the uses Pi owners have found. It turns out you can do a lot with an ARM processor, GPU, a few ports and GPIO pins, and an operating system (typically Linux-based) loaded onto an SD card. Here are 10 of the coolest Raspberry Pi creations we've been able to find.

A Pi-powered arcade cabinet

Lots of people have installed gaming emulators on the Raspberry Pi—not as many have used it to build an entire arcade cabinet. One such brave soul named Darren J described his epic MAME project in a guest post on the official Raspberry Pi blog last month.

Darren loaded the MAME (Multiple Arcade Machine Emulator) software onto a Raspberry Pi inside a coin-operated JAMMA cabinet. It wasn't easy. Darren had to replace the monitor and power supply unit (PSU), and get the inputs connecting the buttons and joysticks to the Pi working properly. For that, he got an I-PAC 2, a PC interface that supports 32 button and joystick inputs.

"I hadn’t seen any information on anyone using one with a Pi, but as it supposedly appeared as a standard USB keyboard to the host system, I thought it was worth a try," Darren wrote. "In addition, having screw terminals would make connecting all the buttons a breeze—it was a simple case of finding a pinout of the JAMMA edge connector and attaching the cables one at a time. With the addition of a powered USB hub, it was time to see if the Pi worked with the iPac 2. I needn’t have worried, it worked without any issues at all."

Darren and buddies played Track and Field on the cabinet, before he sold it on eBay for £258. The lucky winning bidder received a functioning game machine with two joysticks, three buttons per player, and two start buttons. It has a working coin mechanism, although it's not the cabinet of choice if you're looking to play every arcade game in existence.

"At present the range of games the Pi can play is limited—some need emulation that’s just beyond it and the sound is usually the first indicator that things are not going to go well, but for vintage games it’s working well, and is exactly what I planned for—no hard drives to worry about, and much lighter than a fragile PC," Darren wrote.

When Darren showed the finished cabinet to a friend, "he couldn’t believe such a small machine is capable of running the system at all, let alone as well as it does."

Looking for more Raspberry Pi arcade awesomeness? Check out this guy who built a fully functioning arcade cabinet so small it fits in the palm of your hand:



And as we've written previously, a successfully funded Kickstarter project aims to ship arcade cabinets for the Raspberry Pi in kit form starting in February.

Raspberry Pi in the sky: Sending images from near space

One of Dave Akerman's hobbies is High Altitude Ballooning (HAB), which he explains involves the use of "standard weather balloons to put small payloads typically 100g-1kg into 'near space' at altitudes of around 30km or so, carrying a tracking device (so the balloon position is known throughout the flight) and usually some sensors (temperature, pressure etc) and often a video or stills camera storing to an SD card for later retrieval."

But why bother with "later retrieval" when you can send live images down to Earth during flight? That's what Akerman was able to do after buying a Raspberry Pi. "In almost all of my previous flights I used Arduino Mini Pro boards, and these are ideal—tiny, weigh almost nothing, simple and need very little power," the UK-based Akerman wrote in July. "I looked at the Pi and saw none of these desirable features! What I did see though was a USB port offering quick, easy and inexpensive access to a webcam, meaning that for the first time I could have live images (SSDV) sent down by my payload—something that hasn’t been done very often."

Akerman added heat sinks to protect the Pi, a Radiometrix NTX2 radio transmitter, GPS receiver, and a webcam, among other things. "The radio system has low bandwidth and with a typical flight lasting 2 hours or so we don’t have time to send large images, so there’s no point using the very best webcam and the highest resolution," Akerman wrote. "I settled on 432 x 240 pixels with 50% compression as a good compromise between quality and download speed. I measured the webcam current and it went from 50mA at idle to 250mA peak when taking a picture, hence the need to short out the USB fuse (140mA max). A simple shell script took a photo every 30 seconds, saving them on the SD card so that the tracker program could choose the 'best' image (largest jpeg!) for transmission."

The project went off pretty much without a hitch, and the Raspberry Pi was recovered intact.

Siri, open the garage door

Apple's Siri technology is designed for people to give orders to their phones. But it can also control additional devices with Siri Proxy, a proxy server that connects to the Siri service.

One enterprising Pi user revealed this month that he's using Siri to open and close his garage door, thanks to a Raspberry Pi hooked up to an automatic garage door system:

"This is my first real Raspberry Pi project—Siri Proxy running on the Raspberry Pi, along with wiringPi to access the Pi's GPIO pins and turn a relay on/off," a user calling himself "DarkTherapy" wrote in the Raspberry Pi forums. "The relay is then hooked up to my automatic garage door system. So, I have control of the door with Siri on my iPhone."

The system is set up to work only over Wi-Fi, but he says it "would be possible to use this over cellular with a VPN." After installing Siri Proxy and wiringPi, he modified the code in one of the example Ruby scripts that comes with Siri Proxy to include commands specific to his garage door setup.

Here's the code he used:

listen_for /open the garage door/i do say "Opening the garage door.." request_completed system("gpio mode 1 out") system("gpio write 1 1") system("sleep 0.5") system("gpio write 1 0") end listen_for /close the garage door/i do say "Closing the garage door.." request_completed system("gpio mode 1 out") system("gpio write 1 1") system("sleep 0.5") system("gpio write 1 0") end

That type of script can be modified to control all sorts of devices. "As you can see, the ruby script is basically calling 'system' commands to access wiringPi," DarkTherapy wrote. "Setting a GPIO pin as an output then setting it high for half a second then low again. You can have Siri call any command you can type in a terminal window, such as a passwordless SSH login to a remote pc to have it shut down or rebooted."

For more home automation fun, check out these projects for controlling a coffee machine, creating an e-mail notifier light, a sunrise/sunset timer for Christmas lights, and a Pi-powered alarm system.

Listing image by Trevor Johnson