Choose your language
Raspberry Pi programming course
More than 2 million students worldwide

Raspberry Pi programming course

Master Raspberry Pi from hardware setup to full IoT deployment using Python and Linux. This course takes you through GPIO programming, sensor integration, computer vision, and cloud connectivity. Build real projects that run automatically, log data, and stream live readings to remote dashboards.

Dedika for businesses

What you'll learn:

You will set up a Raspberry Pi from scratch, navigate Linux from the command line, and write Python scripts that interact directly with physical hardware. You will connect sensors using I2C, SPI, and UART protocols, then log and visualise the data you collect. You will build a Flask web server, integrate MQTT for IoT messaging, and push readings to cloud dashboards. You will apply OpenCV and TensorFlow Lite for real-time computer vision on the Pi. By the end, you will deploy complete, production-ready projects with automated startup, Docker containers, and professional documentation.

How you study in practice Raspberry Pi programming course

How you practise Raspberry Pi programming course

For businesses looking to train their team

With Dedika for businesses, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course content

8 Chapters • 40 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Introduction to Raspberry Pi Hardware

  • Lesson 1 • Raspberry Pi Models and Specifications

    Covers differences among Pi models, processor specs, RAM, and connectivity. Builds hardware literacy needed for all subsequent chapters.

  • Lesson 2 • Network and Remote Access Setup

    Configures Wi-Fi, SSH, and VNC for remote development. Enables headless operation used throughout advanced chapters.

  • Lesson 3 • Required Peripherals and Accessories

    Identifies essential peripherals: power supply, SD card, display, and input devices. Ensures students assemble a complete, functional workstation.

  • Lesson 4 • Installing the Operating System

    Guides students through flashing Raspberry Pi OS onto an SD card and booting the system. Establishes the software foundation for all coding work.

  • Lesson 5 • File System and Storage Management

    Explains the Linux file system hierarchy and SD card storage management. Prepares students to organise projects and manage disk space effectively.

Chapter 2See details

Linux Command Line Fundamentals

  • Lesson 1 • Process and System Management

    Covers monitoring running processes, managing services, and checking system resources. Prepares students to troubleshoot and optimise Pi performance.

  • Lesson 2 • Navigating the Terminal

    Introduces the Bash shell, prompt structure, and essential navigation commands. Forms the operational baseline for all terminal-based tasks ahead.

  • Lesson 3 • File and Directory Operations

    Covers creating, copying, moving, and deleting files and directories. Directly supports project organisation in every subsequent chapter.

  • Lesson 4 • Package Management with APT

    Explains installing, updating, and removing software using APT. Enables students to extend the Pi's capabilities with third-party tools and libraries.

  • Lesson 5 • Text Editing in the Terminal

    Teaches editing files with nano and basic vim. Students write and modify configuration files and scripts without a graphical editor.

Chapter 3See details

Python Programming Essentials

  • Lesson 1 • Python Syntax and Data Types

    Introduces variables, data types, operators, and basic I/O. Establishes the syntax foundation required for every Python script in this course.

  • Lesson 2 • Control Flow and Loops

    Covers if/elif/else conditionals and for/while loops. Enables students to write programmes that respond to conditions and repeat actions.

  • Lesson 3 • Lists, Dictionaries, and File I/O

    Covers core data structures and reading/writing files. Students store sensor data and configuration values in structured formats.

  • Lesson 4 • Functions and Modules

    Teaches defining reusable functions and importing standard library modules. Promotes modular code design used in all hardware and network projects.

  • Lesson 5 • Error Handling and Debugging

    Introduces try/except blocks, common exceptions, and debugging techniques. Builds resilient scripts that handle hardware and runtime errors gracefully.

Chapter 4See details

GPIO Programming and Electronics Basics

  • Lesson 1 • GPIO Pin Concepts and Safety

    Explains GPIO pin numbering, voltage levels, and current limits. Prevents hardware damage and establishes safe wiring practices for all projects.

  • Lesson 2 • Pulse Width Modulation

    Uses PWM to control LED brightness and servo motor position. Extends output control from binary on/off to variable analogue-like signals.

  • Lesson 3 • Breadboard Circuit Construction

    Teaches breadboard layout, schematic reading, and component wiring. Enables students to prototype circuits safely before soldering or permanent assembly.

  • Lesson 4 • Controlling Output Devices

    Programmes GPIO pins as outputs to control LEDs and buzzers with RPi.GPIO. Demonstrates the output half of the input/output programming model.

  • Lesson 5 • Reading Digital Input Signals

    Configures GPIO pins as inputs to read button presses and digital sensors. Introduces pull-up and pull-down resistors for reliable signal reading.

Chapter 5See details

Sensors, Protocols, and Data Acquisition

  • Lesson 1 • UART Serial Communication

    Configures UART for serial communication with GPS modules and microcontrollers. Teaches parsing serial data streams into usable Python objects.

  • Lesson 2 • SPI Communication Protocol

    Covers SPI clock, MOSI, MISO, and chip-select lines with spidev. Reads an ADC chip to convert analogue sensor voltages to digital values.

  • Lesson 3 • Data Logging and Storage

    Stores timestamped sensor readings in CSV files and SQLite databases. Prepares data for visualisation and analysis in later chapters.

  • Lesson 4 • I2C Communication Protocol

    Explains I2C bus architecture, addresses, and Python smbus2 usage. Connects temperature and pressure sensors as practical I2C examples.

  • Lesson 5 • Analog Sensors and ADC Integration

    Reads analogue sensors such as potentiometers and light-dependent resistors via an ADC. Bridges the gap between analogue physical signals and digital processing.

Chapter 6See details

Networking and IoT Connectivity

  • Lesson 1 • Cloud Platform Integration

    Connects the Pi to cloud IoT platforms for remote monitoring and control. Students configure device credentials and visualise live data on cloud dashboards.

  • Lesson 2 • Socket Programming Basics

    Introduces TCP and UDP sockets using Python's socket library. Establishes peer-to-peer communication skills underlying all network protocols.

  • Lesson 3 • MQTT Protocol for IoT

    Implements publish/subscribe messaging with Mosquitto and paho-mqtt. Connects the Pi to IoT brokers for lightweight, real-time data exchange.

  • Lesson 4 • Building a Flask Web Server

    Creates a lightweight web server on the Pi using Flask to serve sensor data. Enables browser-based monitoring without external cloud services.

  • Lesson 5 • HTTP Requests and REST APIs

    Uses the requests library to call REST APIs and parse JSON responses. Enables the Pi to fetch weather data and post sensor readings to web services.

Chapter 7See details

Camera, Multimedia, and Computer Vision

  • Lesson 1 • Motion Detection

    Detects motion by comparing consecutive frames using background subtraction. Triggers GPIO outputs or alerts when movement is detected.

  • Lesson 2 • Object Classification with TensorFlow Lite

    Runs a pre-trained TensorFlow Lite model on the Pi for object classification. Introduces edge AI inference within the hardware constraints of the Pi.

  • Lesson 3 • Pi Camera Module Setup

    Connects and configures the Pi Camera module using the Picamera2 library. Establishes the capture pipeline required for all vision-based projects.

  • Lesson 4 • Image Processing with OpenCV

    Applies OpenCV operations including resizing, colour conversion, and filtering. Prepares raw camera frames for feature detection and analysis.

  • Lesson 5 • Face Detection and Recognition

    Uses Haar cascades and face recognition libraries to identify faces in frames. Demonstrates a practical biometric application on constrained hardware.

Chapter 8See details

Advanced Projects and System Optimisation

  • Lesson 1 • Systemd Service Deployment

    Packages Python applications as systemd services that start automatically on boot. Enables reliable, unattended operation of deployed Pi projects.

  • Lesson 2 • Multithreading and Async Programming

    Uses threading and asyncio to run concurrent tasks such as sensor reading and networking. Prevents blocking that degrades real-time system responsiveness.

  • Lesson 3 • Capstone Project Planning and Execution

    Guides students through scoping, building, and documenting a complete Pi project. Integrates hardware, software, networking, and deployment skills into one deliverable.

  • Lesson 4 • Performance Profiling and Optimisation

    Profiles Python scripts with cProfile and optimises CPU and memory usage. Addresses the Pi's limited resources to achieve acceptable real-time performance.

  • Lesson 5 • Containerisation with Docker

    Packages Pi applications in Docker containers for reproducible deployment. Simplifies dependency management and enables multi-service architectures.

Certification

Your valid completion certificate

This course is for you:

  • Hobbyist makers: eager to turn hardware tinkering into structured, repeatable projects.

  • Computer science students: wanting hands-on embedded systems experience beyond classroom theory.

  • IT professionals: looking to expand their skill set into physical computing and IoT.

  • Career changers: aiming to break into embedded development or hardware engineering roles.

  • STEM educators: seeking practical Pi expertise to teach physical computing in classrooms.

  • Home automation enthusiasts: ready to build custom smart devices instead of buying them.

What our students say

Your lessons are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of interest without needing to change platforms... I'm grateful for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can change chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the way videos are presented and transcribed, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast and simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top upskilling courses

FAQ

Who is Dedika?

Is the certificate valid in Australia?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course