01 — Raspberry Pi 5 Setup
What You'll Need
- Raspberry Pi 5 board (4 GB or 8 GB RAM)
- Official 27W USB-C power supply — the Pi 5 draws more power than earlier boards, and an underpowered supply causes throttling and random crashes
- microSD card, 32 GB or larger (A2-rated recommended), or an NVMe SSD on the M.2 HAT+ for better performance
- A computer with an SD card reader/slot, used only to flash the OS image
- Micro-HDMI to HDMI cable, a monitor, and a USB keyboard/mouse — or skip these and set up headless over SSH
- An active cooler or a case with a fan — the Pi 5 runs hot under sustained computer-vision workloads
- Raspberry Pi Camera Module 3 (or a USB webcam) for the vision labs
- Wi-Fi or a wired Ethernet connection
1. Flash Raspberry Pi OS
Download Raspberry Pi Imager for your computer's operating system:
https://www.raspberrypi.com/software/
Insert the microSD card into your computer, then open Raspberry Pi Imager:
- Choose Device → Raspberry Pi 5
- Choose OS → Raspberry Pi OS (64-bit) — the current Bookworm release
- Choose Storage → your microSD card (double-check this — it will be erased)
Click Next. When asked whether to apply OS customisation settings, choose Edit Settings and configure:
- General tab: hostname (e.g.
cv-pi01), username and password, wireless LAN (SSID, password, country), locale/timezone/keyboard layout - Services tab: enable SSH (password authentication is fine to start with)
Save the settings, confirm, and click Write. Imager downloads, writes, and verifies the image — this takes several minutes.
Setting the hostname and enabling SSH in advance lets you boot the Pi headless (no monitor/keyboard) and connect immediately with ssh username@hostname.local.
When writing finishes, insert the microSD card into the Pi 5 (slot is on the underside of the board). Connect peripherals first, then power last.
2. First Boot
Power on the Pi. The first boot takes longer than normal because the filesystem is being resized to fill the card.
If a monitor is connected, the Welcome wizard appears (skip any step already configured in Imager):
- Set Country / Language / Timezone / Keyboard
- Create a user (if not already set)
- Select a Wi-Fi network
- Check for updates
- Restart
If you set up SSH in Imager and are going headless, find the Pi on the network from another computer:
ssh username@cv-pi01.localReplace username and cv-pi01 with the values you set in Imager. If .local resolution does not work on your network, check your router's connected-devices list for the Pi's IP address instead.
4. Enable the Camera & Interfaces
Open Raspberry Pi Configuration → Interfaces and enable:
- Camera — required for the Camera Module
- SSH — if not already enabled
- I2C / SPI — only if a lab uses additional sensors
Reboot if prompted. Connect the Camera Module's ribbon cable to the CSI port, matching the orientation shown by the arrows printed next to the connector.
Test the camera from a terminal:
rpicam-helloA 5-second preview window should appear. If you are using a USB webcam instead, check that it is detected with:
ls /dev/video*5. Update the System
sudo apt update
sudo apt full-upgrade -y
sudo rebootCheck the installed OS version:
cat /etc/os-releaseCheck for bootloader/EEPROM updates:
sudo rpi-eeprom-updateTroubleshooting
No display output
The Pi 5 has two micro-HDMI ports. Use the one closest to the USB-C power port (HDMI0), or try the other port if nothing appears.
Undervoltage warning
A lightning-bolt icon in the corner of the screen (or a yellow square on early boot) means the power supply is not delivering enough current. Use the official 27W USB-C supply — phone chargers and older Raspberry Pi power supplies are often insufficient.
Can't find the Pi on the network
Check your router's list of connected devices for the hostname you set in Imager. If hostname.local does not resolve from your computer, connect a monitor temporarily and check the IP address with hostname -I.
Next steps
With Raspberry Pi OS installed and the desktop configured, continue to Tutorial 03 — Linux, Python & AI-Ready Raspberry Pi OS to learn the terminal commands, Python workflow, and computer-vision packages used throughout the labs.