Introduction to the Raspberry Pi
What is it?
The Raspberry Pi is a low cost computer, popular with people who want direct access to its hardware. It has revolutionised computer education by combining low price with accessibility.
The student, for the first time since the early days of the PC revolution, has direct physical access to the hardware. The Raspberry Pi is made for learning. To make the most of it, you must spend time to gain an understanding of the basics of its hardware, its operating system, programming, and the peripherals that you can connect to it.
The Raspberry Pi models
The Raspberry Pi, at the time I am creating this project, is available in several different models.
Model A, Model A+, Model B and Model B+. In this project I am using the Model B.
All Raspberry Pi's share some common features. Looking at the circuit board below the list, you can see:
- The Processor and RAM chip
- The LAN controller chip
- A HDMI video output connector
- A composite analog video connector (on models A and B)
- An SD card connector
- A micro-USB power connector
- A USB port
- An Ethernet port (on model Bs)
- A camera connector
- And the very important GPIO headers
The Raspberry Pi comes as a single PCB. No keyboard and mouse, no screen, not even a power supply. You have to provide all that. In this project, we will be using the Raspberry Pi in so called “headless” mode. This means that we will not be connecting it to a keyboard or mouse. Instead, we will work with the Raspberry Pi via an SSH network connection. Don’t worry if you don’t quite understand what this means, I will show you everything you need to know, step by step.
The operating system
As a computer, and unlike micro-controllers like the Arduino, the Raspberry Pi needs an operating system. There are several options to choose from:
- Rasbian, the Raspberry Pi Foundation’s preferred operating system distribution
- RISC OS
- Minibian, a minimal version of Raspbian.
All of them except for RISC OS are flavours of Linux.
Minibian is a minimalist version of Raspbian. It keeps everything that is important and throws away the graphical user interface and a few other things that are not really needed for our purposes. In return, we get a small disk footprint so we can use even small 4GByte SD Cards.
Of course, you can use Raspbian, which is the “official” operating system offered by the Raspberry Pi Foundation.
In this guide, you will learn how to install Minibian. The process for installing Raspbian is identical.
The Raspberry Pi comes with 512 MBytes or 1GByte of RAM, depending on the model. Video memory is shared with general purpose memory. In our project, we will not be using any video output, so we will configure our Pi to not use any video memory.
What can you do with a Raspberry Pi?
Although this amount of RAM may seem too little at a time when computers come with multiple of gigabytes, for an embedded computer it is more than enough. People run multiplayer game servers like Minecraft on it, and small production web servers and database server. Others have even used the RPi as a node for small supercomputers. With a bit of planning, the Raspberry Pi can do amazing things.
To make something useful with the Raspberry Pi, just like with any computer, you need application software. You can either download ready made software, or write your own. In this guide, I will show you both. You will download, install and configure various types of servers, and you will write your own programs in Python. You can learn how to create a full web application by enrolling to my course Raspberry Pi Full Stack Raspbian.
You will not become an expert Python programmer, but you will become familiar with it enough to be both useful and dangerous. That’s a great start!
The Raspberry Pi rarely works in isolation. It has a fast Ethernet communications socket through which you can connect it to the Internet. The newer Raspberry Pi have integrated Wifi and Bluetooth capabilities, which makes communications even easier. In Raspberry Pi Full Stack, we take advantage of this capability and make it possible for our application to interact with Internet based web services. You will also be able to access your application via a web browser, potentially making it possible to access your Raspberry Pi from anywhere in the world.
Ok, enough with this general introduction to the Raspberry Pi. In the next article, I will show you how to instal the Raspbian operating system on your Raspberry Pi.
"Raspberry Pi Getting Started" series
Ready for some serious learning?
Start right now with Raspberry Pi Full Stack - Raspbian
This is our most popular Raspberry Pi course.
This course is a hands-on project designed to teach you how to build an Internet-of-Things application based on the world’s most popular embedded computer.
Learn how to:
- Setup your Raspberry Pi as a web server using a minimal version of the Raspbian OS.
- Use only the console to interact with your PRi.
- Setup Python in a container dedicated to your web application, install the necessary modules to control the GPIOs and sensors.
- Build the web application, one level of the stack at a time, using high-performance open-source software.
Jump to another article in this series.
4: Headless and graphical (GUI) operating systems (coming soon)
6: SSH and headless configuration (coming soon)
7: Booting for the first time (coming soon)
8: Connect to your Raspberry Pi using the terminal (coming soon)
9: Header and pins (coming soon)
10: A taste of Python on the Raspberry Pi (coming soon)
11: A simple Python program (coming soon)
12: A simple circuit (coming soon)