Log ind

Are you looking for cheap computer power?

In that case Raspberry Pi could be a solution. Raspberry Pi is a multipurpose, powerful mini computer that enables you to start developing quickly and cheaply both for professional purpose and for entertainment. Our senior software/ICT Engineer Alexandre Alapetite gives an overview of the advantages of the booming minicomputer.

A Raspberry Pi 1 Model A+ (left) and an Arduino Leonardo (right); they look similar, but are very different.

What is a Raspberry Pi exactly?

It is a computer board of the size of a visit card, with an ultra-competitive price of 20 to 35 USD – depending on the exact model. At this size and price, one gets a computer with modest performance. Just like a traditional desktop computer, it can be connected to a monitor via HDMI (e.g. a TV screen), to peripherals via USB (e.g. keyboard, mouse), or via a few other types of connectors. Instead of a hard-disk, a Raspberry Pi stores data on a removable SD memory card. A Raspberry Pi has relatively low energy consumption, and is connected to electricity through a standard USB charger, just like for smartphones. A Raspberry Pi also offers some GPIO (General Purpose Input/Output) to extend it or connect it to other digital electronic systems, possibly home-made. Finally, most of the Raspberry Pi platform is Open Source (e.g. hardware design, software).

All in all, a Raspberry Pi is a tiny inexpensive computer, which can be connected to standard peripherals as well as ad-hoc electronic systems.

What can a Raspberry Pi do?

Being a full-fledged computer, a Raspberry Pi can run a graphical user interface, in order to e.g. browse Internet, do some office work, and – like it was intended – for young people to learn some computer programming. The most common operating systems used on a Raspberry Pi are based on Linux (in particular Raspbian – an adaptation of Debian – from the same family than the well-known Ubuntu). A light version of Microsoft Windows 10 (IoT Corve) can also run on it, but without the traditional desktop.

Model A is a cheaper (20 USD) and less capable version of Raspberry Pi, which also uses less energy, while Model B is more expensive (35 USD) with more computing power and better connectivity (more USB ports, Ethernet port for the network).

Three years after its appearance on the market, the performances of Raspberry Pi have increased considerably (factor ~5) in 2015 with the Version 2 of the Raspberry Pi Model B, making the user experience of the graphical interface pleasant (e.g. Web browsing), while version 1 required a good amount of patience. The remarkable feat is that these improvements were done while keeping the same low price, same size, and similar energy consumption.

What is Raspberry Pi popular for?

Raspberry Pi is commonly seen with a role of cheap media centre for a living room (connected to a TV and to an external hard-disk, e.g. running OpenELEC / KODI), as a small home server (NAS e.g. running OwnCloud, home automation e.g. with PiFace and Domoticz), as a small Web server, as a robotic platform (e.g. GoPiGo kit, and also for drones), as one of the reference platforms for Internet of Things (IoT) projects, and many other systems in which a cheap computer brain is needed.

Differences and similarities between Raspberry Pi and Arduino

Arduino is the most well-known platform for electronics enthusiasts, and found as the basis for many ad-hoc electronic systems. It has got a huge success since 2007, mainly due to the fact that Arduino has considerably lowered the barrier to making a home-made electronic device, with a rich ecosystem, good documentation and support. Arduino is now ubiquitous in hobby electronic projects, classrooms when dealing with electronics, university labs, and hacker spaces around the globe.

In some domains, the Arduino platform is even more known than Raspberry Pi. The most popular Arduino boards (e.g. Uno) also have more or less the size of a visit card, with a price similar to a Raspberry Pi. Initially, Arduino also had an educational focus, and is also very much Open Source. There is also a large community of enthusiasts behind both platforms, and many extension boards exist to extend the capabilities of each. Arduino and Raspberry Pi might thus look much alike, but they are not competitors; and here is why:

While the Raspberry Pi is a full-fledge computer, as presented above, which means running multiple heavy programs at the same time in an operating system, Arduino is focusing on micro-controller boards. Micro-controllers typically run one single relatively small computer program at a time, but consume only a small fraction of the power needed by a computer, among other assets.

Raspberry Pi and Arduino are thus complementary, and it is not rare to see projects using both, for different roles. A Raspberry Pi and an Arduino can communicate with each-other in particular via USB or GPIO.

When to select what?

Raspberry Pi(computer)

Arduino(micro-controller)

To interact with a human, through e.g. a screen, keyboard, mouse, sound

To display content on a TV or computer screen

To run large (>500kB) computer programs, especially if written in higher level languages (e.g. Java, PHP, Python...)

To process multimedia content

To work with other electronic components

If the system needs to run on a small battery for a long time, e.g. a battery-powered temperature sensor

For systems that need a real-time response, e.g. an auto-balancing robot

To work with analogue signals (e.g. analogue temperature sensor)

Examples of uses at the Alexandra Institute

Raspberry Pi

Arduino

To drive our information screen

For several “Smart City” projects dealing with sensor information in towns

For a prototype of system able to recognize number-plates

For an energy harvesting system in a music festival, interacting with participants

For driving the video-projector and sound of an exhibition in a museum

Etc.

A wearable system to measure human postures during sport

A custom Bluetooth beacon system with sound to help blind people finding things

A prototype communication system for the Red Cross during emergency situations

For implementing a lighting ambiance influenced by the crowd in concerts

For experimenting with cryptography on tiny devices in IoT contexts

Etc.

Outlooks

Besides the cases when a microcontroller (e.g. Arduino) should be used instead, a Raspberry Pi is not always the proper computer platform to pick. In particular, it is not intended for 24/7 production – even though many people use it as such with success – and the SD card is probably its weakest point, in particular when there is an intensive data writing activity.

Raspberry Pi has several alternatives, such as BeagleBone, Intel Galileo, or the more powerful and much more expensive Intel NUC, which all have their strengths and drawbacks, but none of them have yet the popularity of Raspberry Pi, which has found a sweet spot for price/performance.

In any case, one can say that Raspberry Pi has already succeeded in its non-profit mission to popularize a platform for everybody to put their hands on, to get familiar with computers, and to hack innovative projects around it.