Skip to main content

Raspberry Pi 4/5 Model B Hardware Guide

Raspberry Pi 4/5 Model B

Hardware Requirements

The current setup assumes you'll be using a Raspberry Pi Model 4b with an mt76 based wireless adapter. The built-in ethernet port of the Raspberry Pi is connected to upstream/WAN/internet.

Running SPR

WiFi dongles

The WiFi 5 dongles have been tested to perform well with a 500-550Mbps top speed in a low noise environment and the WiFi 6 dongles can reach closer to 700Mpbs in a low noise environment.

  • A USB SSD works best. A 16GB SD card can also be used but is not recommended

  • Ethernet cable for setup (and if you run uplink over the wire)

  • Optional An Ethernet USB Dongle for additional LAN devices since the built-in ethernet card (eth0) will be used for the WAN. The UE 300 has been tested to run near line speed on the Pi (950Mbps). The U3 330 also works and provides additional USB 3.0 ports.

  • Optional For running multiple WiFi adapters, a powered USB 3.0 capable hub is recommended

tip

Grab the Complete Starter Kit for everything you need to get started here

Building from source

  • 8 GB of RAM are recommended for building SPR on the Pi. Any amount of RAM can work for building but ramdisks have to be disabled in the docker build. The prebuilt GHCR has prebuilt SPR images available also.

Using a different wireless card

For using a different wireless adapter, the default hostapd configuration may need to be modified in the UI or in configs/wifi/. Note that the built-in Raspberry Pi Wireless card can not be used as an AP by default as it does not support AP/VLAN, which is a feature that SPR relies on.

Install the SPR Pi 4/5 Image

For running SPR on a Raspberry Pi 4/5, a pre-built image is available on the releases page.

You can download spr.img.xz and flash it with a tool such as Balena Etcher, or if you prefer to write the image using the command line:

# On a mac, write the image to the external disk (rdiskX).
# Be careful to make sure you identify your removable drive correctly.
$ xzcat spr.img.xz | dd of=/dev/rdiskX bs=$[1024*1024]
tip

If you use Balena Etcher be sure to download the image first and choose Flash from file.

Completing the Setup

  1. Plug in your Pi SPR to your local network using a ethernet cable, and boot
  2. On Pis, the built in WiFi hosts an open AP "sprlab-setup". Join the open AP and go to https://192.168.2.1 or https://spr.local.
  3. Alternatively, without connecting to the open AP, visit https://spr.local to run through the UI setup. This is a mDNS name, if it does not resolve. Check your router DHCP table to see if you can locate the Pi SPR or scan for it with ping/nmap.
  4. The setup will guide you through configuring your SPR networking and adding your first device, as well as setting a UI password.

Post Setup Tasks

  1. SSH in and change the default password
    Default credentials for ssh are: ubuntu:ubuntu

  2. Enable DNS Ad Blocking and other DNS Blocklists for the network

  3. Consider disabling HTTP access to the API under the Services tab

Upstream services

Under /home/spr/super/config/base/config.sh, consider disabling UPSTREAM_SERVICES_ENABLE=1 if you do not want the API and SSH exposed to the WAN ethernet interface. This can also be toggled under the Firewall Services tab in the UI.

Follow the SPR Setup Guide

If you prefer to run on an existing image, or run from a fresh Ubuntu server install, you can Follow the SPR setup guide