MakerLab
Raspberry PiRaspberry Pi Zero

Raspberry Pi Zero: The Tiny Powerhouse for Embedded Projects

Discover the compact and affordable Raspberry Pi Zero, a versatile single-board computer perfect for space-constrained and cost-sensitive embedded projects.

Raspberry Pi Zero

The Raspberry Pi Zero, released in late 2015, is a stripped-down, ultra-low-cost iteration of the popular Raspberry Pi family. Designed to be significantly smaller and more affordable than its predecessors, it retains much of the core functionality expected from a Raspberry Pi, making it an ideal candidate for embedded applications where size, power consumption, and budget are critical factors. Its diminutive form factor belies its capability, offering a full Linux computer experience in a package that can fit almost anywhere.

At the heart of the Raspberry Pi Zero lies the Broadcom BCM2835 system-on-a-chip (SoC). This is the same chip found in the original Raspberry Pi Model B and Model B+, but clocked at a slightly lower frequency. It features a single-core 32-bit ARMv6 architecture processor. While not a powerhouse by modern standards, this SoC is perfectly capable of running lightweight Linux distributions and handling a wide array of embedded tasks, from simple sensor monitoring to controlling small robotics and creating custom IoT devices.

The Raspberry Pi Zero occupies a unique niche within the Raspberry Pi ecosystem. It is significantly smaller and less powerful than models like the Raspberry Pi 3 or 4, but it offers a more robust computing platform than many microcontrollers. This makes it an excellent choice for makers and students who need the flexibility of a full operating system and networking capabilities but are working within tight physical or financial constraints. Its GPIO header, while smaller, still provides access to a rich set of peripherals for interfacing with external hardware.

This board is particularly suited for projects that require a small footprint, such as wearable technology, portable data loggers, compact home automation controllers, or even as a secondary processing unit within a larger system. Its low power consumption also makes it suitable for battery-powered applications. For users new to embedded Linux or those looking for a cost-effective way to add intelligence to everyday objects, the Raspberry Pi Zero is an accessible and powerful entry point.

Watch

Related video, embedded from YouTube.

Specifications

Microcontroller / SoCBroadcom BCM2835
Architecture32-bit ARMv6 (Single-core)
Clock speed1 GHz
Flash / StorageMicroSD card slot (up to 32GB typically supported)
RAM / SRAM512MB LPDDR2 SDRAM
Operating voltage3.3V
Digital I/O pins17 GPIO pins
Analog / ADCโ€”
PWMYes (software-controlled)
Connectivity802.11b/g/n Wi-Fi, Bluetooth 4.1
USB1x Micro USB OTG port (for data), 1x Micro USB power port
Power input5V via Micro USB (minimum 1.2A recommended)
Dimensions65mm x 31mm x 5mm (PCB only)

Pinout & pin functions

PinFunction
3V33.3V Power Output
GNDGround
GPIO2I2C SDA
GPIO3I2C SCL
GPIO4General Purpose I/O
GPIO17General Purpose I/O
GPIO27General Purpose I/O
GPIO22General Purpose I/O
GPIO5General Purpose I/O
GPIO6General Purpose I/O
GPIO12General Purpose I/O
GPIO13General Purpose I/O
GPIO19General Purpose I/O
GPIO16General Purpose I/O
GPIO26General Purpose I/O
GPIO7SPI MOSI
GPIO8SPI MISO
GPIO11SPI SCK
GPIO9SPI CS (Chip Select)
GPIO10General Purpose I/O (also SPI CS)
GPIO24General Purpose I/O
GPIO25General Purpose I/O
GPIO23General Purpose I/O
GPIO18General Purpose I/O
GPIO14UART TXD
GPIO15UART RXD
RUNSystem Reset (active low)
ID_SDI2C EEPROM Data
ID_SCI2C EEPROM Clock
TEST_MODETest Mode (usually not used)
FP_TEST_MODEFPGA Test Mode (usually not used)
NCNo Connect

Wiring & circuit basics

Powering the Raspberry Pi Zero requires a stable 5V supply, typically provided through its Micro USB power port. A minimum of 1.2A is recommended, especially when connecting peripherals. The board itself operates at 3.3V logic levels. Connecting 5V devices directly to GPIO pins can damage the Pi Zero. Always use a level shifter or a voltage divider when interfacing with 5V components. For example, to safely light an LED, connect the anode to a GPIO pin (e.g., GPIO17), the cathode to a current-limiting resistor (e.g., 220-330 ohms), and the other end of the resistor to a GND pin.

When connecting sensors or other devices, pay close attention to their operating voltage and logic level requirements. For I2C communication, you'll need to connect the sensor's SDA pin to the Pi Zero's GPIO2 (I2C SDA) and its SCL pin to GPIO3 (I2C SCL). Both the Pi Zero and the sensor should be connected to a common ground (GND pin). Many I2C sensors also require a 3.3V power supply, which can be provided by the Pi Zero's 3V3 pin. Always consult the sensor's datasheet for specific wiring instructions and voltage compatibility.

The Raspberry Pi Zero has a standard 40-pin header layout, but only 17 pins are exposed as General Purpose Input/Output (GPIO). These pins can be configured as inputs or outputs for digital signals. Some pins have alternative functions, such as I2C, SPI, and UART communication protocols, which are crucial for interfacing with a wide range of sensors, displays, and other modules. The RUN pin can be used to reset the system, and the ID_SD/ID_SC pins are typically used for accessing an onboard EEPROM, though this is rarely utilized in typical maker projects.

Programming & getting started

The Raspberry Pi Zero runs a full Linux operating system, most commonly Raspberry Pi OS (formerly Raspbian). This opens up a vast array of programming options. For embedded-style programming, Python with libraries like RPi.GPIO or gpiozero is extremely popular and beginner-friendly. You can also use MicroPython or CircuitPython for a more microcontroller-like experience, though these require flashing custom firmware. For more advanced users, C/C++ with the WiringPi library (though deprecated, it's still widely used) or direct system calls offers maximum performance and control.

To get started, you'll need to flash a suitable OS image (like Raspberry Pi OS Lite) onto a MicroSD card using a tool like Raspberry Pi Imager or Balena Etcher. Once booted, you can connect via SSH over Wi-Fi or a USB-to-Ethernet adapter. For Python scripting, simply write your code in a text editor on the Pi Zero and run it from the command line. For example, a simple 'blink' script would involve importing the GPIO library, setting a pin as an output, and toggling it in a loop with delays.

Project ideas

Wi-Fi Connected Weather StationBuild a compact weather station that logs temperature and humidity data from a sensor (e.g., DHT22 connected to GPIO17) and uploads it to a cloud service via Wi-Fi. This project teaches sensor interfacing, data logging, and network communication.
Portable Retro Gaming ConsoleTransform the Pi Zero into a handheld retro gaming device using a small screen, buttons connected to GPIO pins, and emulation software. This project involves hardware assembly, OS configuration, and software setup.
Smart Mirror DisplayCreate a smart mirror that displays time, weather, and news headlines on a monitor behind a two-way mirror. The Pi Zero controls the display and fetches information over Wi-Fi, using GPIO pins for potential button controls.
Robotic Arm ControllerUse the Pi Zero to control a small servo-driven robotic arm. Connect servos to PWM-capable GPIO pins and use Python to program complex movements. This project explores robotics, servo control, and basic kinematics.
IoT Security CameraAttach a Raspberry Pi Camera Module to the Pi Zero and set up a motion-activated security camera that streams video over Wi-Fi or saves images to an SD card. This project covers camera interfacing, video streaming, and network configuration.
Automated Plant Watering SystemDevelop a system that monitors soil moisture using a sensor connected to GPIO and automatically waters plants when needed. The Pi Zero controls a small water pump via a relay module. This project teaches sensor feedback and actuator control.

Buying tips & gotchas

When purchasing a Raspberry Pi Zero, be aware of the original 'W' and 'WH' models which have built-in Wi-Fi and Bluetooth, and the 'W2' model which has faster Wi-Fi. Older non-W models require a USB-to-Ethernet adapter or USB Wi-Fi dongle for network connectivity. Clones exist, so buy from reputable sources. The Zero's small size and lack of onboard USB-A ports mean you'll likely need a Micro USB OTG adapter for keyboards, mice, or USB drives. A heatsink is rarely necessary for typical Zero projects unless running under heavy load for extended periods. Consider a Pi Zero case for protection and easier handling.