The project book, written by well-known Elektor author Dogan Ibrahim, is an introduction to using the Raspberry Pi Pico Experimenting Kit. The kit is based on the Raspberry Pi Pico processor and includes several on-board as well as external sensors, and an actuator. The kit is programmed using the MicroPython programming language. The Thonny development environment (IDE) is used in all the projects in the book. All the projects given in the book have been fully tested and are working. No prior programming or electronic experience are required to follow the projects.The book’s fully evaluated projects feature all the supplied components. Each project includes a block diagram, a circuit diagram, a full program listing, and a complete program description.Included in the bundle
Raspberry Pi Pico RP2040
Pico Expansion Board
1.44-inch TFT LCD with ST7735 driver
3x Pushbutton input
3x LED output
1x Active buzzer
6x Interfaces (UART/GPIO/I²C/ADC) Grove-compatible
Powered by Micro-USB
8 Modules
MPU6050 6-axis IMU
DHT11 humidity & temperature sensor
10 A relay
SG90 servo
Slide potentiometer
Serial-to-WiFi (ESP8266) module
Ultrasonic range sensor
8-bit RGB addressable LED (WS2818) module
Project book (178 pages)
42 Projects in the BookBoard-Hardware-Based Projects
Flashing an on-board LED
Flashing SOS
Flashing LED – using a timer
Alternately flashing LEDs
Pushbutton control
Changing the LED flashing rate using pushbutton interrupts
Binary counting LEDs
Randomly flashing yellow, green, and blue LEDs
Chasing LEDs
Reaction timer
Buttons and LEDs
The TFT Display
Second counter
Event counter
Reaction timer
Display LED and button status
Temperature and humidity – display in Thonny window
Temperature and humidity – LED output
Temperature and humidity – display on TFT
ON/OFF temperature control
ON/OFF temperature control – setting the desired temperature
Voltmeter
Changing the brightness of an LED
Ultrasonic distance measurement - display in Thonny window
Ultrasonic distance measurement - display on TFT
Height of a person (stadiometer)
Ultrasonic reverse-parking aid with buzzer
Ultrasonic liquid level controller
Melody maker
Servo motor control
Accurate servo motor control
WS2812 LED strip light show - state machine approach
WS2812 LED strip light show – using the neopixel library
WS2812 LED strip show – another neopixel library example
Displaying 3 dimensions of acceleration
A car’s maximum acceleration – using the TFT display
Level display using the gyroscope
MPU6050 temperature display
TFT display test
TFT bitmap display
Using the WiFi
Connect to the local Wi-Fi network and display the IP address
Controlling an LED from a smartphone using Wi-Fi
Displaying the temperature on a smartphone using Wi-Fi
Specifications
RP2040 microcontroller chip designed by Raspberry Pi in the UK
Dual-core ARM Cortex M0+ processor, with a flexible clock running up to 133 MHz
264 kB SRAM, and 2 MB on-board Flash memory
Castellated module allows soldering directly to carrier boards
USB 1.1 host and device support
Energy-efficient sleep and dormant modes
Drag and drop programming using mass storage via USB
26x multifunction GPIO pins
2x SPI, 2x I²C, 2x UART, 3x 12-bit ADC, 16x controllable PWM channels
On-chip accurate clock and timer
Temperature sensor
On-chip accelerated floating point libraries
8x programmable IO (PIO) state machines for custom peripherals
Why a Raspberry Pi Pico?
Designing your own microcontroller instead of buying an existing one brings a number of advantages. According to Raspberry Pi itself, not one of the existing products available for this comes close to their price/performance ratio.
This Raspberry Pi Pico has also given Raspberry Pi the ability to add some innovative and powerful features of their own. These features are not available anywhere else.
A third reason is that the Raspberry Pi Pico has given Raspberry Pi the ability to create powerful software around the product. Surrounding this software stack is an extensive documentation set. The software and documentation meet the high standard of Raspberry Pi's core products (such as the Raspberry Pi 400, Pi 4 Model B and Pi 3 Model A+).
Who is this microcontroller for?
The Raspberry Pi Pico is suitable for both advanced and novice users. From controlling a display to controlling many different devices that you use every day. Automating everyday operations is made possible by this technology.
Beginner users
The Raspberry Pi Pico is programmable in the C and MicroPython languages and is customizable for a wide range of devices. In addition, the Pico is as easy to use as dragging and dropping files. This makes this microcontroller ideally suited for the novice user.
Advanced users
For advanced users, it is possible to take advantage of the Pico's extensive peripherals. The peripherals include the SPI, I²C, and eight programmable I/O (PIO)-state machines.
What makes the Raspberry Pi Pico unique?
What's unique about the Pico is that it was developed by Raspberry Pi itself. The RP2040 features a dual-core Arm Cortex-M0+ processor with 264 KB of internal RAM and support for up to 16 MB of off-chip Flash.
The Raspberry Pi Pico is unique for several reasons:
The product has the highest price/quality ratio in the microcontroller board market.
The Raspberry Pi Pico has been developed by Raspberry Pi itself.
The software stack surrounding this product is of high quality and comes paired with a comprehensive documentation set.
Raspberry Pi 4, 2 GB RAM
The Raspberry Pi 4 sets another milestone in processor speed and performance of single-board computers. Raspberry Pi 4 is 3x faster than its 3 B+ predecessor and offers 4x faster multimedia performance (comparable to the desktop performance of an entry-level x86-based PC).
Features
High-performance 64-bit quad-core processor
Dual-display support at resolutions up to 4K via a pair of micro-HDMI ports
Hardware video decode at up to 4Kp60
2 GB of RAM
Dual-band 2.4/5 GHz wireless LAN
Bluetooth 5.0
Gigabit Ethernet
USB 3.0
PoE capability (via a separate PoE HAT add-on)
Specifications
SoC
Broadcom BCM2711
CPU
64-bit ARM Cortex-A72 (4x 1.5 GHz)
GPU
Broadcom VideoCore VI
RAM
2 GB LPDDR4
Wireless LAN
2.4 GHz and 5 GHz IEEE 802.11b/g/n/ac wireless LAN
Bluetooth
Bluetooth 5.0, BLE
Ethernet
Gigabit Ethernet
USB
2x USB-A 3.02x USB-A 2.0
GPIO
Standard 40-pin GPIO header (fully backwards-compatible with previous boards)
Video
2x micro-HDMI ports (up to 4Kp60 supported)2-lane MIPI DSI port (display)2-lane MIPI CSI port (camera)
Audio
4-pole stereo audio and composite video port
Multimedia
H.265 (4Kp60 decode)H.264 (1080p60 decode, 1080p30 encode)OpenGL ES, 3.0 graphics
SD card
microSD (for operating system and storage)
Power
5 V | 3 A (via USB-C)5 V | 3 A (via GPIO)Power over Ethernet (PoE) enabled – (requires separate PoE HAT)
Raspberry Pi Full Stack (E-book)
This book will take you on a whirlwind tour of full-stack web application development using Raspberry Pi. You will learn how to build an application from the ground up.
You will gain experience and know-how of technologies including:
The Linux operating system and command line.
The Python programming language.
The Raspberry Pi General Purpose Input Output pins (GPIOs).
The Nginx web server.
Flask Python web application microframework.
JQuery and CSS for creating user interfaces.
Dealing with time zones.
Creating charts with Plotly and Google Charts.
Data logging with Google Sheet.
Developing applets with IFTTT.
Securing your application with SSL.
Receiving SMS notifications to your phone using Twilio.
This book will also teach you how to set up a remote wireless Arduino sensor node and collect data from it. Your Raspberry Pi web application will be able to process Arduino node data in the same way it processes data from its onboard sensor.
Raspberry Pi Full Stack will teach you many skills essential to building Web and Internet of Things applications.
The application you will build in this project is a platform that you can extend upon. This is just the start of what you can do with a Raspberry Pi and the software and hardware components that you will learn about.
This book is supported by the author via a dedicated discussion space.
Program and build Raspberry Pi based ham station utilities, tools, and instruments
The improved RTL-SDR V4 allows you to receive radio signals between 500 kHz and 1.75 GHz from stations utilizing different bands including MW/SW/LW broadcast, ham radio, utility, air traffic control, PMR, SRD, ISM, CB, weather satellite, and radio astronomy.
The book Raspberry Pi 5 for Radio Amateurs gives extensive coverage of deploying the RTL-SDR kit through the use of a Raspberry Pi 5.
This bundle contains:
RTL-SDR V4 (incl. Dipole Antenna Kit) (normal price: €65)
Raspberry Pi 5 for Radio Amateurs (normal price: €40)
RTL-SDR V4 (Software Defined Radio) with Dipole Antenna Kit
RTL-SDR is an affordable dongle that can be used as a computer-based radio scanner for receiving live radio signals between 500 kHz and 1.75 GHz in your area.
The RTL-SDR V4 offers several improvements over generic brands including use of the R828D tuner chip, triplexed input filter, notch filter, improved component tolerances, a 1 PPM temperature compensated oscillator (TCXO), SMA F connector, aluminium case with passive cooling, bias tee circuit, improved power supply, and a built in HF upconverter.
RTL-SDR V4 comes with the portable dipole antenna kit. It is great for beginners as it allows for terrestrial and satellite reception and easy to mount outdoors and designed for portable and temporary outside usage.
Features
Improved HF reception: V4 now uses a built-in upconverter instead of using a direct sampling circuit. This means no more Nyquist folding of signals around 14.4 MHz, improved sensitivity, and adjustable gain on HF. Like the V3, the lower tuning range remains at 500 kHz and very strong reception may still require front end attenuation/filtering.
Improved filtering: The V4 makes use of the R828D tuner chip, which has three inputs. The SMA input has been triplexed input into 3 bands: HF, VHF and UHF. This provides some isolation between the 3 bands, meaning out of band interference from strong broadcast stations is less likely to cause desensitization or imaging.
Improved filtering x2: In addition to the triplexing, the open drain pin on the R828D can be also used, which allows to add simple notch filters for common interference bands such as broadcast AM, broadcast FM and the DAB bands. These only attenuate by a few dB, but may still help.
Improved phase noise on strong signals: Due to an improved power supply design, phase noise from power supply noise has been significantly reduced.
Less heat: Another advantage of the improved power supply is low power consumption and less heat generation compared to the V3.
Included
1x RTL-SDR V4 dongle (R828D RTL2832U 1PPM TCXO SMA)
2x 23 cm to 1 m telescopic antenna
2x 5 cm to 13 cm telescopic antenna
1x Dipole antenna base with 60 cm RG174
1x 3 m RG174 extension cable
1x Flexible tripod mount
1x Suction cup mount
Downloads
Datasheet
User Guide
Quick Start Guide
SDR# User Guide
Dipole Antenna Guide
Book: Raspberry Pi 5 for Radio Amateurs
The RTL-SDR devices (V3 and V4) have gained popularity among radio amateurs because of their very low cost and rich features. A basic system may consist of a USB based RTL-SDR device (dongle) with a suitable antenna, a Raspberry Pi 5 computer, a USB based external audio input-output adapter, and software installed on the Raspberry Pi 5 computer. With such a modest setup, it is possible to receive signals from around 24 MHz to over 1.7 GHz.
This book is aimed at amateur radio enthusiasts and electronic engineering students, as well as at anyone interested in learning to use the Raspberry Pi 5 to build electronic projects. The book is suitable for both beginners through experienced readers. Some knowledge of the Python programming language is required to understand and eventually modify the projects given in the book. A block diagram, a circuit diagram, and a complete Python program listing is given for each project, alongside a comprehensive description.
The following popular RTL-SDR programs are discussed in detail, aided by step-by-step installation guides for practical use on a Raspberry Pi 5:
SimpleFM
GQRX
SDR++
CubicSDR
RTL-SDR Server
Dump1090
FLDIGI
Quick
RTL_433
aldo
xcwcp
GPredict
TWCLOCK
CQRLOG
klog
Morse2Ascii
PyQSO
Welle.io
Ham Clock
CHIRP
xastir
qsstv
flrig
XyGrib
FreeDV
Qtel (EchoLink)
XDX (DX-Cluster)
WSJT-X
The application of the Python programming language on the latest Raspberry Pi 5 platform precludes the use of the programs in the book from working on older versions of Raspberry Pi computers.
Multitasking and multiprocessing have become a very important topic in microcontroller-based systems, namely in complex commercial, domestic, and industrial automation applications. As the complexity of projects grows, more functionalities are demanded from the projects. Such projects require the use of multiple inter-related tasks running on the same system and sharing the available resources, such as the CPU, memory, and input-output ports. As a result of this, the importance of multitasking operations in microcontroller-based applications has grown steadily over the last few years. Many complex automation projects now make use of some form of a multitasking kernel.
This book is project-based and its main aim is to teach the basic features of multitasking using the Python 3 programming language on Raspberry Pi. Many fully tested projects are provided in the book using the multitasking modules of Python. Each project is described fully and in detail. Complete program listings are given for each project. Readers should be able to use the projects as they are, or modify them to suit their own needs.
The following Python multitasking modules have been described and used in the projects:
Fork
Thread
Threading
Subprocess
Multiprocessing
The book includes simple multitasking projects such as independently controlling multiple LEDs, to more complex multitasking projects such as on/off temperature control, traffic lights control, 2-digit, and 4-digit 7-segment LED event counter, reaction timer, stepper motor control, keypad based projects, car park controller, and many more. The fundamental multitasking concepts such as process synchronization, process communication, and memory sharing techniques have been described in projects concerning event flags, queues, semaphores, values, and so on.
Raspberry Pi 4 (2 GB RAM)
The Raspberry Pi 4 is 3x faster than its 3 B+ predecessor and offers 4x faster multimedia performance (comparable to the desktop performance of an entry-level x86-based PC).
Features
High-performance 64-bit quad-core processor
Dual-display support at resolutions up to 4K via a pair of micro-HDMI ports
Hardware video decode at up to 4Kp60
2 GB of RAM
Dual-band 2.4/5 GHz wireless LAN
Bluetooth 5.0
Gigabit Ethernet
USB 3.0
PoE capability (via a separate PoE HAT add-on)
Specifications
SoC
Broadcom BCM2711
CPU
64-bit ARM Cortex-A72 (4x 1.5 GHz)
GPU
Broadcom VideoCore VI
RAM
2 GB LPDDR4
Wireless LAN
2.4 GHz and 5 GHz IEEE 802.11b/g/n/ac wireless LAN
Bluetooth
Bluetooth 5.0, BLE
Ethernet
Gigabit Ethernet
USB
2x USB-A 3.02x USB-A 2.0
GPIO
Standard 40-pin GPIO header (fully backwards-compatible with previous boards)
Video
2x micro-HDMI ports (up to 4Kp60 supported)2-lane MIPI DSI port (display)2-lane MIPI CSI port (camera)
Audio
4-pole stereo audio and composite video port
Multimedia
H.265 (4Kp60 decode)H.264 (1080p60 decode, 1080p30 encode)OpenGL ES, 3.0 graphics
SD card
microSD (for operating system and storage)
Power
5 V | 3 A (via USB-C)5 V | 3 A (via GPIO)Power over Ethernet (PoE) enabled – (requires separate PoE HAT)
Raspberry Pi 4 OR 5 AND Pico (E-book)
Cool Projects for Test, Measurement, and Control
The Raspberry Pi has dominated the maker scene for many years. Freely accessible I/O pins have made it one of the most popular processor boards of all time. However, the classic Raspberry Pi has no analog inputs. Direct measurement of analog values is therefore not possible. Consequently, photodiodes, NTCs, Hall sensors, etc. cannot be read directly. In addition, the pins are connected directly to the exposed contacts, i.e. without a driver or protection circuit. This can quickly destroy the central controller and thus the entire Raspberry Pi.
These problems can be elegantly solved with the Pico. As a front-end, it can easily handle a wide range of measurement tasks. In addition, the Pico is much cheaper than a classic Raspberry Pi 4 or 5. If a faulty circuit leads to the destruction of the Pico, this is relatively easy to handle. This makes the combination of a classic Raspberry Pi 4 or 5 and the Pico an ideal pair.
The book introduces the broad and highly topical field of modern controller technology using the combined force of a Raspberry Pi 4 or 5 and a Raspberry Pi Pico. In addition to a detailed introduction to the operation and functionality of the controller boards themselves, the book also focuses on data acquisition and processing with digital processors. Especially the combination of both systems offers a wide range of interesting possibilities.
Some practical projects from the contents:
USB between Raspberry Pi 4 or 5 and Pico
I²C Communication and Pico as an I²C device
Voltmeter and Computer Thermometer
Pico W as a Web Server and WLAN Scanner
Frequency Meters and Generators
OLED Displays on Raspberry Pi 4 or 5 and Pico
Energy Saving Monitor
Which Astronauts are in Orbit?
Mini Monitor for Current Bitcoin Exchange Rate
Build robust, intelligent machines that combine Raspberry Pi computing power with LEGO components.
The Raspberry Pi Build HAT provides four connectors for LEGO Technic motors and sensors from the SPIKE Portfolio. The available sensors include a distance sensor, a color sensor, and a versatile force sensor. The angular motors come in a range of sizes and include integrated encoders that can be queried to find their position.
The Build HAT fits all Raspberry Pi computers with a 40-pin GPIO header, including – with the addition of a ribbon cable or other extension device — Raspberry Pi 400. Connected LEGO Technic devices can easily be controlled in Python, alongside standard Raspberry Pi accessories such as a camera module.
Features
Controls up to 4 motors and sensors
Powers the Raspberry Pi (when used with a suitable external PSU)
Easy to use from Python on the Raspberry Pi
The Raspberry Pi Debug Probe is an all-in-one USB-to-debug kit that provides all the necessary hardware and cables for easy, solderless, plug-and-play debugging.
It features both a processor serial debug interface (by default the ARM Serial Wire Debug interface, but other interfaces can be supported) and an industry-standard UART interface. Both interfaces use the Raspberry Pi 3-pin debug connector.
It is designed to make it easy to debug and program Raspberry Pi Pico and RP2040 with a range of host platforms including Windows, Mac, and typical Linux computers.
While designed for use with Raspberry Pi products, the Debug Probe provides standard UART and CMSIS-DAP interfaces over USB, so it can also be used with other processors, or even just as a USB-to-UART cable. It works with OpenOCD and other tools that support CMSIS-DAP.
The Debug Probe is based on Raspberry Pi Pico hardware and runs the open source Raspberry Pi Pico Probe software. The firmware is updated in the same way as Raspberry Pi Pico firmware, so it is easy to keep the unit up to date with the latest firmware, or to use custom firmware.
Features
USB to ARM Serial Wire Debug (SWD) port
USB to UART bridge
Compatible with the CMSIS-DAP standard
Works with OpenOCD and other tools supporting CMSIS-DAP
Open source, easily upgradeable firmware
Specifications
Dimensions: 22 x 32 mm
Nominal I/O voltage: 3.3 V
Operating temperature: -20°C to +70°C
Included
1x Raspberry Pi Debug Probe
1x Plastic case
1x USB cable
3x Debug cables
3-pin JST connector to 3-pin JST connector cable
3-pin JST connector to 0.1-inch header (female)
3-pin JST connector to 0.1-inch header (male)
Downloads
Datasheet
3-pin Debug Connector
Schematics
Diagram
Latest Firmware
Raspberry Pi Pico is a low-cost, high-performance microcontroller board and also the first product based on a chip developed by Raspberry Pi itself.
The RP2040 microcontroller chip ('Raspberry Silicon') offers a dual-core ARM Cortex-M0+ processor (133 MHz), 256 KB RAM, 30 GPIO pins, and many other interface options. In addition, there is 2 MB of on-board QSPI flash memory for code and data storage.
Specifications
RP2040 microcontroller chip designed by Raspberry Pi in the UK
Dual-core ARM Cortex M0+ processor, with a flexible clock running up to 133 MHz
264 kB SRAM, and 2 MB on-board Flash memory
Castellated module allows soldering directly to carrier boards
USB 1.1 host and device support
Energy-efficient sleep and dormant modes
Drag and drop programming using mass storage via USB
26x multifunction GPIO pins
2x SPI, 2x I²C, 2x UART, 3x 12-bit ADC, 16x controllable PWM channels
On-chip accurate clock and timer
Temperature sensor
On-chip accelerated floating point libraries
8x programmable IO (PIO) state machines for custom peripherals
H version of the Raspberry Pi Pico board with pre-soldered headers and 3-pin debug connector
Downloads
Specifications of 3-pin Debig Connector
The Raspberry Pi Zero W extends the Raspberry Pi Zero family. The Raspberry Pi Zero W has all the functionality of the original Raspberry Pi Zero, but comes with added connectivity consisting of:
802.11 b/g/n wireless LAN
Bluetooth 4.1
Bluetooth Low Energy (BLE)
Other Features
1 GHz, single-core CPU
512 MB RAM
Mini HDMI and USB On-The-Go ports
Micro-USB power
HAT-compatible 40-pin header
Composite video and reset headers
CSI camera connector
Downloads
Mechanical Drawing
Schematics
The Raspberry Pi Pico 2 is a new microcontroller board from the Raspberry Pi Foundation, based on the RP2350. It features a higher core clock speed, double the on-chip SRAM, double the on-board flash memory, more powerful Arm cores, optional RISC-V cores, new security features, and upgraded interfacing capabilities. The Raspberry Pi Pico 2 offers a significant boost in performance and features while maintaining hardware and software compatibility with earlier members of the Raspberry Pi Pico series.
The RP2350 provides a comprehensive security architecture built around Arm TrustZone for Cortex-M. It incorporates signed boot, 8 KB of antifuse OTP for key storage, SHA-256 acceleration, a hardware TRNG, and fast glitch detectors.
The unique dual-core, dual-architecture capability of the RP2350 allows users to choose between a pair of industry-standard Arm Cortex-M33 cores and a pair of open-hardware Hazard3 RISC-V cores. Programmable in C/C++ and Python, and supported by detailed documentation, the Raspberry Pi Pico 2 is the ideal microcontroller board for both enthusiasts and professional developers.
Specifications
CPU
Dual Arm Cortex-M33 or dual RISC-V Hazard3 processors @ 150 MHz
Memory
520 KB on-chip SRAM; 4 MB on-board QSPI flash
Interfaces
26 multi-purpose GPIO pins, including 4 that can be used for AD
Peripherals
2x UART
2x SPI controllers
2x I²C controllers
24x PWM channels
1x USB 1.1 controller and PHY, with host and device support
12x PIO state machines
Input power
1.8-5.5 V DC
Dimensions
21 x 51 mm
Downloads
Datasheet (Pico 2)
Datasheet (RP2350)