Skip to main content

Raspberry Pi and Custard - Engineers first hands on Review.

The Raspberry Pi (aka Raspi) was released back at the end of February but here we are weeks later with no real hardware. We engineers are only interested in the guts of this product. So RS sent me a beta board to look at to answer the question : What is there for a engineer in the product? Well it’s time to fix that and let a real engineer at the real hardware and see if its worth opening a tin of custard for this bad boy or not!?

Since the end of February we have had to wait while shipping delays and the wrong connector have delayed us getting our hand on real boards. Then with so much hype, people from outside the engineering community came flooding in wanting boards also. This changed the whole ‘its just a Development board’ thing into a product that needs CE and FCC approval. This has then dragged on for what has seemed forever but in just the last few days we have good news. The team at Raspi has got the PASS they needed and in the next few days we should be getting the OK from both RS and Element14, then they can finally start shipping boards.

My view from the beginning was however was that this is a development board, a platform to work with and develop on. So the question really is what can you do with a Raspi that you can't get with a old pentium PC running linux?

The latest board packs a real punch per pound. Its a tiny board that has a ARM core running at 700MHz. You're going to find a Graphic chip to run the HDMI video output, Ethernet and USB connections too. The board is designed to boot and run from a image on a SD card and so far this has been purpose builds of Linux. There are a few other things like a JTAG connector but the thing I wanted to know more about than anything is the General Purpose I/O interface (GPIO).

Getting started was really easy. If you have read my reviews before you will know that I want a quick setup time, good guide and a route to go on with it after the first test. So unpacking was real simple, nothing fancy comes with the board not even a bit of paper with a link to the main Raspi site.!? Good job I know my way around google! [EDIT: RS tell me that final product will have a guide included]

The getting started guides tells you to how to go and download a Linux image to put on your SD card (not supplied). I got the Debian image that fits on a 2GB card. Unfortunately this did take me an hour to download and would suggest people find mirrors to download from, just I wanted to try direct from Raspi. You then need a image writer to place the image on the SD card, again the guides tell you where to get these and its was easy to follow and ‘burn’ the image. Then come that moment of power up and will it work?

I plugged in my HMDI to DVI-D cable, USB keyboard and then spent 20 mins looking for a mobile phone USB cable to power it up. I know lots of people have these USB phone chargers now, but not all of us do. So a alternative power input would be nice on the board also - after all if I want to put this ‘in’ something one day then hacking my mobile phone USB cable is not what I want to do and nor do i want to solder to the board either!

OK so power on and the screen comes to life displaying the Raspi logo and the sight of Linux booting up. I found it took around one and half mins to boot. There are a few things I noticed that happened during the boot. If there is no Ethernet connected it spends a bit of time trying to poll for a DHCP server. I was under the impression that hardware could tell if a cable was connected? Why look if there is not one there? I know this is a Debian thing but just saying its a pain. Also found that I got ‘mmc’ errors sometimes. These are errors reading from the SD card. There is a list of approved cards on the web site and need to be Class 4. My card was pulled from a dev kit I have here so have no idea what it really is, so can’t complain.

 

Once your board is booted then you get the login prompt. From here on in its all Linux and depending on what you use depends what you will get. However I was interested in the hardware of the board. Now I have a low cost Linux board, can I actually do anything else?

There are lots of ways of programming the Raspi. The team at Cambridge I have seen programming the board in Python, hence the boards name. Python becoming Py, or now Pi. Personally I program in C and so experimented with this. I used a Linux editor called ‘Pico’ to generate a ‘Hello World’ program and compiled it with the pre-installed ‘gcc’ compiler. This all worked but would not run. This I found it to do with permissions (another Debian thing here) and had to run it from root.

Next to wiggle some hardware then. After a bit of hunting around on the Raspi Wiki I found the pinouts for the GPIO connector and also found some sample code. This Demo code allowed me to connect up a LED and get it blinking. Oh yes thats right we have a blinky LED! That's far more important to a hardware engineer than seeing Linux boot and run.!? :o)

[Check board spec and current ratings when connecting to GPIO]

I was also able to find that you can access and control the GPIO via ‘bash’ script. This means you can write simple scripts to control hardware attached to the board but again has to be via root.

On this GPIO connector you will find 16 I/O pins. Some of these can be used as a serial port, I2C and SPI. Unfortunately there is no support for the SPI or I2C from Raspi or in this Debian build so I can’t test them. This is a massive shame in my view as this is what we engineers really need in my view.

So will I be opening the tin of custard? Well yes but it will be going on something other than my board. I’m impressed we have such a low cost board with so much on it. I think this will be a great board for developers who are looking for a powerful environment like Linux and want real I/O access. There are a number of other development going on that will help expand these hardware ports and I know that the linux community will love this board also - maybe we will finally find a board that both software and hardware engineer like using?

There is so much more to the Raspi and this post has only looked at one side of it. Later this week I hope to push through another blog about this board from the point of view of education. I also suspect there is now going to be lots more content appearing over the next few weeks as the boards ship and people start using them.

Many thanks
Paul ( @monpjc )

 

DesignSpark Electrical Logolinkedin