Raspberry PI Game Console Project: Getting an OS to run on it.

8d8f488e9e5c11e2a3d822000a1f9be5_7

(My previous post)

So now that we have a Raspberry PI we need an ARM based Operating system to go on it.

My original idea is to run Jelly Bean on it, but I couldn’t quickly find an image for the Raspberry PI (which means I’ll either have to find harder or I’m gonna have to bust my ass and build one myself and add all the drivers necessary so that it runs like charm)

At this point I just need to know that my hardware is good to go, so the quickest, easiest way to put an OS on the Raspberri PI that I found was to get a Debian based Linux on it called Raspbian “wheezy”.

You can download the .zip file that contains the image file via http or you can help seed a torrent of it after you get it.

Once you download that you will end up with a 493.6MB .zip file, unzip it, and you will see the 1.96GB 2013-02-09-wheezy-raspbian.img file.

Now you have to put that .img file inside the SD card that will go into the Raspberry PI.

I’ll teach you how to do that on a Mac (on a linux box is quite the same, the file and mount locations are probably the only thing that’ll change)

1. Stick the SD card on the SD slot of your macbook.
2. On the Finder, Eject the SD card as soon as it comes up.
3. Open a Terminal
4. Execute sudo diskutils list, you should see something *like* this (this is actually how it’ll look when you’re done)

[bash]$ sudo diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.3 GB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS Macintosh HD 499.4 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *2.0 TB disk1
1: Apple_HFS Time Machine 2.0 TB disk1s1
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 TB disk2
1: EFI 209.7 MB disk2s1
2: Apple_HFS PICS_AND_MOVIES 999.9 GB disk2s2
/dev/disk4
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *15.9 GB disk4
1: Windows_FAT_32 58.7 MB disk4s1
2: Linux 1.9 GB disk4s2[/bash]

I want you to notice the “/dev/disk4“, judging by the size, that’s our 16 GB SD card right?

5. Now that we know where it is, let’s copy the image file into it. First make sure to unmount the partitions that are on the SD Card so you can write on it, for example, I have there a Windows_FAT_32 partition I don’t want to loose (disk4s1), you unmount it like this:

sudo diskutil unmount /dev/disk3s1

Then copy the image using the awesome dd utility, if the .img file was in your “Downloads” folder the command would look like this. (“if” stands for “input file”, make sure you put the full path to the file, or go to that folder and execute the command below)

sudo dd bs=1m if=~/Downloads/2013-02-09-wheezy-raspbian.img of=/dev/disk4

This will take a few minutes, be patient.

Once done, take the SD card, put it in the Raspberry PI SD Slot, hook it up to a monitor and power, snap a mouse and keyboard, and boot. It should work.

My First Raspberry PI Project: DIY ARM Video Game Console.

I got everything on amazon, didn’t pay for shipping (Prime member):

raspberry_pi_diy_game_console_nes_snes_sega_n64

So far I bought:
Raspberry PI ($48)

Raspberry PI case ($14)

Power adapter ($2.25)

SNES-like Controller with USB jack ($10.75)

SanDisk SDHC 16GB class 6 (30mb/s) ($15)

I first intend to install Ubuntu ARM along with several video game console emulators for NES, SNES, SEGA, N64.

People at the Raspberry PI G+ Community have suggested instead to install arch linux and keep it light, I’ll go first for ubuntu since I know it well.

However I’m thinking that a more interesting option, given that it has an ARM processor is to install Android Jelly Bean on it and see if not only I can run game emulators on it, I’ll be running and testing FrostWire for Android on it.

Ever since I started developing FrostWire for Android I’ve thought that Android has everything in it to be a desktop operating system, maybe Raspberry PI’s will be the hardware I’ll use to prove my vision.

The idea is to end up with a nice tutorial on how to do this after I’m done so you can all do it. In the meantime I’ll keep posting updates.