22 July 2012

My RPi gets a cover

Recently I've been playing some more with my Raspberry Pi. Due to my friend's initiative I've acquired parts for RPi enclosure made of acrylic glass. 

You can make one yourself using schematics on this page. You're gonna need a Plexiglas sheet and a laser cutter. It's also possible to buy a kit with all necessary parts. Assembly instructions are covered here. It's really important to use adhesive tape, otherwise you are going to have a bad time. You can peel it off after you inserted all the bolts and the walls are not falling down. Don't tighten the bolts too much. Especially the one between SD card slot and GPIO pins -- acrylic parts are really fragile there.

The software

I've also installed new, stable Raspbian release. It's a special image based on Debian distribution using hardware floating point numbers implementation. This means some performance gains in computation heavy tasks. Raspbian also ships with user friendly tool for device configuration, raspi-config and Raspberry Pi dedicated multimedia player -- omxplayer. It can be used to play full HD videos using all RPi's hardware features. Although it is only running in a console framebuffer, video is perfectly smooth. I haven't noticed any stutter watching Big Buck Bunny.

Since Go (programming language) is recently also hot stuff I tried to run a simple "hello world" program on my RPi. I've used golang (1.0.2) packages shipped with Raspbian with no luck.  All attempts ended with an "illegal instruction" error. 
It is a known bug with ARM6 golang target. To get around this I've downloaded current release's sources and build it with GOARM=5 flag to enable software floating point emulation. This of course kills some performance but Go is now working on my device.

More pie

In order to unleash all my RPi's powers I need to interact with the outside world. To do it in a safe and well cultured manner I have to protect the GPIO pins from excessive voltages and currents. The next step is then building a breakout board like this. Pins are secured here with a Zener diode - resistor pair. It's a simple design that can be executed on a breadboard or a stripboard.

I also have some long term plans for my device. I thought of using it for a retro gaming system. It's pretty easy since game emulators for Raspberry Pi are beginning to appear. They are not that user (and gamepad) friendly but let's use a few lines of Python and SDL and we're home.

No comments:

Post a Comment