You might be able to tell from my other articles based on the Arduino that I like dabbling. When the Raspberry Pi was announced, that was an instant 'Ooooo', then the price was announced which led to a bigger 'Ooooooooooo'. And that was that, it was a must have. Don't know what I was going to do with it, but it was on the list.
Registered on the waiting list on the Farnell website in mid-April '12, and some time later on, got a notification if I still wanted one to follow a link and place the order. The order was placed on the 9th May. Time ticked on and Farnell sent me an email 27th June saying I should have my Raspberry Pi shipped on the 9th July. I was offshore at the time of shipment, and arrived home on the 17th July to find it was waiting for me.
And so the games begin...
What is a Respberry Pi
The Raspberry Pi is a fully featured micro-computer squashed onto a circuit board measuring approximately 9cm x 5.5cm. The specification (Model B) is;
- ARM 11 CPU running at 700MHz
- Videocore 4 GPU
- 256Mb Ram
- 2 x USB
- 1 x SD Card slot
- 1x HDMI port
- 1 x 3.5mm audio port
- 1 x RCA Video
- 1 x mini-USB (Power port)
- 1 x 10/100 Ethernet port
According to the website (http://www.raspberrypi.org) it has an overall performance equivalent of a Pentium 2 running at 300MHz, and the GPU performance is capable or running H.264 video at 40MBits/s or 24GFlops of general purpose compute power.
Why "Episode 1"?
Quite simply, this is my first venture into the Raspberry Pi. I might write another article or I might not. I have a million other things I want to do, but just not enough hours in the day for them all.
This really is just a very basic intro to the platform, and just to see really how quickly it is possible to get going from out of the box, to up and running.
What are all the connectors on the board?
The image below is of the "Model B" board which I purchase, the "Model A" board is a lower spec with less connectivity aimed at the educational market.
GPIO (General Purpose Input/Output) Connector Pinout
Top Row (L-R, Evens 2- 26): 5V0, DNC, GND, TXD, RXD, GPIO1, DNC, GPIO4, GPIO5, DNC, GPIO6, SPI_CE0_N, SPI_CE1_N
Bottom Row (L-R Odds 1-25): 3V3, SDA0, SCL0, GPIO7, DNC, GPIO0, GPIO2, GPIO3, DNC, SPI_MOSI, SPI_MISO, SPI_SCLK, DNC
JTAG Connector, is actually in two parts, the left side is the P2 Header and is the VideoCore JTAG and the right side is the P3 header (no populated pins) for the LAN JTAG. These are low level debugging ports only used during the board production.
CSI connector is the Camera Serial interface, there is meant to be a compatible camera coming out in the future for this port.
DSI connector is the Display Serial Interface, again possibly a future LCD panel coming.
What do I need to just get it going?
Apart from the Raspberry Pi itself the following things I have at hand to get it going are;
- SD Card (I am using a 2GB)
- Suitable SD Card reader attached to/in your computer
- USB Mouse and Keyboard
- Micro-USB power connector
- HDMI cable (or HDMI to whatever display connector you are using)
- Ethernet Cable
What about the software?
Popping over to the Raspberry Pi website, I downloaded the following;
- Win32DiskImager Zip File
- Debian "wheezy" Image Zip File (Version: 15th July 2012)
The Win32DiskImager is a tool for taking the image file and preparing the SD card to make it bootable. Simply dragging and dropping the files from the image to the SD card isn't sufficient.
Preparing the SD-Card
Next we need to prepare the SD Card with an image of the operating system we are going to use. Extract the Win32DiskImager to a folder on your computer. Extract the image file zip to a folder on your computer. Load up Win32DiskImager and select the source image file and the target drive you have inserted the SD card into on your computer. Click "Write" to commence imaging the SD Card. All data on the SD Card will be wiped, so make sure you have not left anything on there you need!
Connecting up and Boot time
The time has come to plug it in, switch it on and hope that it boots!. Hook up the HDMI, usb keyboard and mouse, plug in the newly imaged sd card, attach the ethernet cable and then plug in the power, sit back and hold your breath.........
Success, after the usual boot messages flying past, the screen above appeared, this is the Raspi-config menu screen. A quick check of the locale and timezone was all ok. I even selected the 'update' option and it went off out to the internet and checked for available update packages, found and installed 4 of them. So it looks like the network is working.
After finishing with the config screen, at the command prompt you can load up the desktop by typing 'startx'.
The image I installed comes pre-configured with 'LXDE' enabled as the gui. Once the desktop has fully loaded, you will see a typical desktop layout, icons down the left and toolbar along the bottom.
Next thing was to confirm I had network connectivity, I opened up Midori, which is one of the configured browsers, and navigated to The Codeproject and success, it loaded up fine and I also managed to log in, and then posted a message on the site.
Point Of Interest
Watch your power! I had some initial problems with the usb keyboard I had attached. The keyboard was backlit and also had an lcd display and usb hub built in. This took too much power and caused some problems. I purchased a cheap wireless Logik mouse/keyboard combo that has one of those tiny usb receivers. Works a treat and also the single receiver can handle both the keyboard and mouse, keeping one of the USB ports free.
Well that has been a very short 'get it going' intro to the Raspberry Pi. Just have to start to see what else I can do.
- 25th August 2012 - Article copied across to this site.
- 20th July 2012 - V1.1, Added additional connector detail [On www.codeproject.com]
- 19th July 2012 - V1.0, First submission of article [On www.codeproject.com]