This complete Raspberry Pi Pico microcontroller programming course features a textbook, a component kit, hands-on projects, and a comprehensive online course with simulations. It is ideal for step-by-step learning of embedded systems programming in MicroPython using a practical, hands-on approach.
A Practical Introduction to Embedded Systems with the Raspberry Pi Pico
This course is designed for people who are new to embedded systems and looking for a structured, example-driven way to get started.
A kit of parts comprising LEDs and resistors, switches, sensors and actuators, displays, a breadboard and wires, and more is included. These are used in the course to illustrate example applications.
No prior experience with Arduino or embedded development is required. Each section features hands-on examples and mini projects designed to reinforce key concepts and inspire deeper exploration. By the end of the course, you’ll be able not only to reproduce the examples but also to build on them with your own ideas and applications.
What Will You Learn?
Microcontroller programming in MicroPython with the Raspberry Pi Pico using the Thonny IDE
Working with Digital I/O, read buttons and encoders, control LEDs and relays
Read analog inputs, voltages, and analog sensors
Generating analog output signals and PWM
Use serial communication like UART, I²C and SPI to control displays and read digital sensors and SD cards
Managing time
Working with interrupts
Real-time sensor input and control via buttons, LEDs, and displays
Control actuators like relays and servo motors
Who Is It For?
Students and self-learners exploring embedded systems
Makers and IoT enthusiasts looking to improve their hardware skills
Educators and trainers seeking ready-to-teach material
What's Inside the Box?
Access to the full course on the Elektor Academy Pro Learning Platform
Raspberry Pi Pico microcontroller board + USB cable
Book: Programming Microcontrollers in MicroPython
Downloadable project files for every module
Component Box:
2× LED, red, 5 mm
LED, green, 5 mm
3× Resistor, 470 Ω, 0.25 W
LDR
Potentiometer, 10 kΩ, linear
Pushbutton
Rotary encoder module
Relay module
DHT22 Humidity & Temperature Sensor
TM1637-compatible 4-digit 7-segment display
MPU-6050 IMU with headers
SSD1306-compatible I²C OLED display
Micro SD card adapter with header
Buzzer
SG90 Micro Servo
ILI9341-compatible SPI 240×320 TFT display
20× Jumper wires
Breadboard
All Programming Courses (and differences in content)
Course
Arduino
Raspberry Pi Pico with Arduino C/C++
ESP32 with Arduino C/C++
Raspberry Pi Pico with MicroPython
ESP32 with MicroPython
Online Course
Access to Arduino Course
Access to Pico with Arduino C/C++ Course
Access to ESP32 with Arduino C/C++ Course
Access to Pico with MicroPython Course
Access to ESP32 with MicroPython Course
Board
Uno R3
Raspberry Pi Pico
ESP32
Raspberry Pi Pico
ESP32
Book
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in MicroPython
Programming Microcontrollers in MicroPython
Kit
40-piece Component Box
40-piece Component Box
40-piece Component Box
40-piece Component Box
40-piece Component Box
For a limited time, the Joy-Pi Advanced is available in a great-value bundle with a Raspberry Pi 4 (8 GB)!
The Joy-Pi Advanced is a compact and powerful device that allows you to realize your projects quickly and easily. Whether you already have a lot of experience, or next to none, the Joy-Pi Advanced lets you unleash your creativity. Thanks to its compatibility with a wide range of platforms, including Raspberry Pi, Raspberry Pi Pico, Arduino Nano, BBC micro:bit, and NodeMCU ESP32, you can easily and quickly access your preferred platform.
In addition, the Joy-Pi Advanced features more than 30 stations, lessons, and modules, giving you an unlimited variety of ways to get your projects done. With the self-developed learning center, you can not only improve your skills but also create new projects. The learning center offers a wealth of information and tutorials that will guide you step by step through your projects.
Joy-Pi Advanced is characterized in particular by its intelligent switch units, which allow an extended use of the available pins. A total of three switch units are integrated, each equipped with 12 individual switches that provide precise control of the connected sensors and modules. This system solves the well-known problem of limited pin count that occurs with conventional microcontrollers. The switch units allow you to operate a large number of sensors and modules in parallel by switching them on and off individually. This simulates multiple pin assignment, allowing you to exploit the full power of your projects without compromising functionality.
By combining innovative adapter boards and the micro:bit slot, you can achieve seamless compatibility with a wide range of microcontrollers such as Raspberry Pi Pico, NodeMCU ESP32, micro:mit and Arduino Nano. The specially developed adapter boards are designed to perfectly match the respective microcontroller. By plugging the microcontroller onto the appropriate adapter board and then plugging it into the micro:bit slot, the Joy-Pi Advanced quickly and easily becomes compatible with the different microcontrollers. This allows seamless integration of your preferred platform and the ability to combine the strengths of the different microcontrollers in your projects. This way, you can fully focus on your creative projects without worrying about the compatibility of different microcontrollers. The Joy-Pi Advanced simplifies the development process and gives you the possibility to design your projects flexibly and individually.
Features
Highly integrated development platform & learning center
Fast, easy & wireless combination of various sensors & actuators
Installation option for Raspberry Pi 4
Compatible with various microcontrollers
Self-developed, didactic learning platform for Raspberry Pi & Windows
Specifications
Compatible to
Raspberry Pi 4, Arduino Nano, NodeMCU ESP32, BBC micro:bit, Raspberry Pi Pico
Installed sensors, actuators & components
39
Learning platform
Over 40 entries in the know-ledge database, 10 projects, 10 learning tasks, 14 visions
Displays
7-segment display, 16x2 display, 1.8“ TFT display, 0.96" OLED display, 8x8 RGB matrix
Sensors
DS18B20, shock sensor, hall sensor, barometer, sound sensor, gyroscope, PIR sensor, Light barrier, NTC, Light sensor, 6x touch sensor, color sensor, ultrasonic distance sensor, DHT11 temperature & humidity sensor
Control
Joystick, 5x switches, potentiometer, rotary encoder, 4x4 button matrix, relays, PWM fan
Motors
Servo interface, Stepper motor interface, Vibration motor
Measuring & conversion modules
Analog-Digital Converter, Level converter, voltmeter, Variable voltage supply
Other components
RTC real time clock, buzzer, EEPROM memory, infrared receiver, breadboard, RFID reader
Adapter boards
Adapter for NodeMCU ESP32, Arduino Nano & Raspberry Pi Pico, Board connectors for Raspberry Pi & External Boards
Electronic components
Infrared remote control, RFID chip, RFID card, 6x alligator clips, microSD card reader, servo motor, stepper motor, 32 GB microSD card
Components
40x resistors, 3x green LEDs, 3x yellow LEDs, 3x red LEDs, 1x transistor, 5x buttons, 1x potentiometer, 2x capacitors
Other accessories
Screw assortment, screwdriver, accessory storage bag, power supply & power cable, servo mount
Power supply
Built-in power supply: 36 W, 12 V, 3 A Case connector: Small device plug C8
Voltage outputs
12 V, 5 V, 3.3 V, Variable voltage output (2-11 V)
Data buses & signal outputs
I²C, SPI, Analog to digital converter
Battery (RTC)
CR2032
Dimensions
327 x 200 x 52 mm
Included
Raspberry Pi 4 (8 GB RAM)
Downloads
Joy-Pi website
Datasheet
Manual
This complete ESP32 microcontroller programming course features a textbook, a component kit, hands-on projects, and a comprehensive online course with simulations. It is ideal for step-by-step learning of embedded systems programming in MicroPython using a practical, hands-on approach.
A Practical Introduction to Embedded Systems with the ESP32
This course is designed for people who are new to embedded systems and looking for a structured, example-driven way to get started.
A kit of parts comprising LEDs and resistors, switches, sensors and actuators, displays, a breadboard and wires, and more is included. These are used in the course to illustrate example applications.
No prior experience with Arduino or embedded development is required. Each section features hands-on examples and mini projects designed to reinforce key concepts and inspire deeper exploration. By the end of the course, you’ll be able not only to reproduce the examples but also to build on them with your own ideas and applications.
What Will You Learn?
Microcontroller programming in MicroPython with the ESP32 using the Thonny IDE
Working with Digital I/O, read buttons and encoders, control LEDs and relays
Read analog inputs, voltages, and analog sensors
Generating analog output signals and PWM
Use serial communication like UART, I²C and SPI to control displays and read digital sensors and SD cards
Managing time
Working with interrupts
Real-time sensor input and control via buttons, LEDs, and displays
Control actuators like relays and servo motors
Who Is It For?
Students and self-learners exploring embedded systems
Makers and IoT enthusiasts looking to improve their hardware skills
Educators and trainers seeking ready-to-teach material
What's Inside the Box?
Access to the full course on the Elektor Academy Pro Learning Platform
ESP32 microcontroller board + USB cable
Book: Programming Microcontrollers in MicroPython
Downloadable project files for every module
Component Box:
2× LED, red, 5 mm
LED, green, 5 mm
3× Resistor, 470 Ω, 0.25 W
LDR
Potentiometer, 10 kΩ, linear
Pushbutton
Rotary encoder module
Relay module
DHT22 Humidity & Temperature Sensor
TM1637-compatible 4-digit 7-segment display
MPU-6050 IMU with headers
SSD1306-compatible I²C OLED display
Micro SD card adapter with header
Buzzer
SG90 Micro Servo
ILI9341-compatible SPI 240×320 TFT display
20× Jumper wires
Breadboard
All Programming Courses (and differences in content)
Course
Arduino
Raspberry Pi Pico with Arduino C/C++
ESP32 with Arduino C/C++
Raspberry Pi Pico with MicroPython
ESP32 with MicroPython
Online Course
Access to Arduino Course
Access to Pico with Arduino C/C++ Course
Access to ESP32 with Arduino C/C++ Course
Access to Pico with MicroPython Course
Access to ESP32 with MicroPython Course
Board
Uno R3
Raspberry Pi Pico
ESP32
Raspberry Pi Pico
ESP32
Book
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in MicroPython
Programming Microcontrollers in MicroPython
Kit
40-piece Component Box
40-piece Component Box
40-piece Component Box
40-piece Component Box
40-piece Component Box
This complete Raspberry Pi Pico microcontroller programming course features a textbook, a component kit, hands-on projects, and a comprehensive online course with simulations. It is ideal for step-by-step learning of embedded systems programming with Arduino using a practical, hands-on approach.
A Practical Introduction to Embedded Systems with the Raspberry Pi Pico
This course is designed for people who are new to embedded systems and looking for a structured, example-driven way to get started.
A kit of parts comprising LEDs and resistors, switches, sensors and actuators, displays, a breadboard and wires, and more is included. These are used in the course to illustrate example applications.
No prior experience with Arduino or embedded development is required. Each section features hands-on examples and mini projects designed to reinforce key concepts and inspire deeper exploration. By the end of the course, you’ll be able not only to reproduce the examples but also to build on them with your own ideas and applications.
What Will You Learn?
Microcontroller programming in C/C++ with the Raspberry Pi Pico using the Arduino IDE
Working with Digital I/O, read buttons and encoders, control LEDs and relays
Read analog inputs, voltages, and analog sensors
Generating analog output signals and PWM
Use serial communication like UART, I²C and SPI to control displays and read digital sensors and SD cards
Managing time
Working with interrupts
Real-time sensor input and control via buttons, LEDs, and displays
Control actuators like relays and servo motors
Who Is It For?
Students and self-learners exploring embedded systems
Makers and IoT enthusiasts looking to improve their hardware skills
Educators and trainers seeking ready-to-teach material
What's Inside the Box?
Access to the full course on the Elektor Academy Pro Learning Platform
Raspberry Pi Pico microcontroller board + USB cable
Book: Programming Microcontrollers in C/C++ Using Arduino
Downloadable project files for every module
Component Box:
2× LED, red, 5 mm
LED, green, 5 mm
3× Resistor, 470 Ω, 0.25 W
LDR
Potentiometer, 10 kΩ, linear
Pushbutton
Rotary encoder module
Relay module
DHT22 Humidity & Temperature Sensor
TM1637-compatible 4-digit 7-segment display
MPU-6050 IMU with headers
SSD1306-compatible I²C OLED display
Micro SD card adapter with header
Buzzer
SG90 Micro Servo
ILI9341-compatible SPI 240×320 TFT display
20× Jumper wires
Breadboard
All Programming Courses (and differences in content)
Course
Arduino
Raspberry Pi Pico with Arduino C/C++
ESP32 with Arduino C/C++
Raspberry Pi Pico with MicroPython
ESP32 with MicroPython
Online Course
Access to Arduino Course
Access to Pico with Arduino C/C++ Course
Access to ESP32 with Arduino C/C++ Course
Access to Pico with MicroPython Course
Access to ESP32 with MicroPython Course
Board
Uno R3
Raspberry Pi Pico
ESP32
Raspberry Pi Pico
ESP32
Book
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in MicroPython
Programming Microcontrollers in MicroPython
Kit
40-piece Component Box
40-piece Component Box
40-piece Component Box
40-piece Component Box
40-piece Component Box
Raspberry Pi Pico WH is a microcontroller board based on the Raspberry Pi RP2040 microcontroller chip.
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.
Raspberry Pi Pico WH has been designed to be a low cost yet flexible development platform for RP2040 with a 2.4 GHz wireless interface using an Infineon CYW43439. The wireless interface is connected via SPI to the RP2040.
Features of Pico WH
RP2040 microcontroller with 2 MB of flash memory
On-board single-band 2.4 GHz wireless interfaces (802.11n)
Micro USB B port for power and data (and for reprogramming the flash)
40 pin 21 x 51 mm 'DIP' style 1 mm thick PCB with 0.1' through-hole pins also with edge castellations
Exposes 26 multi-function 3.3 V general purpose I/O (GPIO)
23 GPIO are digital-only, with three also being ADC capable
Can be surface mounted as a module
3-pin ARM serial wire debug (SWD) port
Simple yet highly flexible power supply architecture
Various options for easily powering the unit from micro USB, external supplies or batteries
High quality, low cost, high availability
Comprehensive SDK, software examples and documentation
Pre-populated headers and 3-pin debug connector
Features of the RP2040 microcontroller
Dual-core cortex M0+ at up to 133 MHz
On-chip PLL allows variable core frequency
264 kByte multi-bank high performance SRAM
External Quad-SPI Flash with eXecute In Place (XIP) and 16 kByte on-chip cache
High performance full-crossbar bus fabric
On-board USB1.1 (device or host)
30 multi-function general purpose I/O (four can be used for ADC)
1.8-3.3 V I/O voltage
12-bit 500 ksps analogue to digital converter (ADC)
Various digital peripherals
2x UART, 2x I²C, 2x SPI, 16x PWM channels
1x timer with 4 alarms, 1x real time clock
2x programmable I/O (PIO) blocks, 8 state machines in total
Flexible, user-programmable high-speed I/O
Can emulate interfaces such as SD card and VGA
Note: Raspberry Pi Pico W I/O voltage is fixed at 3.3 V.
Downloads
Datasheet
Specifications of 3-pin Debug Connector
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)
Raspberry Pi Pico W is a microcontroller board based on the Raspberry Pi RP2040 microcontroller chip.
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.
Raspberry Pi Pico W has been designed to be a low cost yet flexible development platform for RP2040 with a 2.4 GHz wireless interface using an Infineon CYW43439. The wireless interface is connected via SPI to the RP2040.
Features of Pico W
RP2040 microcontroller with 2 MB of flash memory
On-board single-band 2.4 GHz wireless interfaces (802.11n)
Micro USB B port for power and data (and for reprogramming the flash)
40 pin 21 x 51 mm 'DIP' style 1 mm thick PCB with 0.1' through-hole pins also with edge castellations
Exposes 26 multi-function 3.3 V general purpose I/O (GPIO)
23 GPIO are digital-only, with three also being ADC capable
Can be surface mounted as a module
3-pin ARM serial wire debug (SWD) port
Simple yet highly flexible power supply architecture
Various options for easily powering the unit from micro USB, external supplies or batteries
High quality, low cost, high availability
Comprehensive SDK, software examples and documentation
Features of the RP2040 microcontroller
Dual-core cortex M0+ at up to 133 MHz
On-chip PLL allows variable core frequency
264 kByte multi-bank high performance SRAM
External Quad-SPI Flash with eXecute In Place (XIP) and 16 kByte on-chip cache
High performance full-crossbar bus fabric
On-board USB1.1 (device or host)
30 multi-function general purpose I/O (four can be used for ADC)
1.8-3.3 V I/O voltage
12-bit 500 ksps analogue to digital converter (ADC)
Various digital peripherals
2x UART, 2x I²C, 2x SPI, 16x PWM channels
1x timer with 4 alarms, 1x real time clock
2x programmable I/O (PIO) blocks, 8 state machines in total
Flexible, user-programmable high-speed I/O
Can emulate interfaces such as SD card and VGA
Note: Raspberry Pi Pico W I/O voltage is fixed at 3.3 V.
Downloads
Datasheet
Specifications of 3-pin Debug Connector
The Raspberry Pi Pico 2 H (with Headers) 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 H 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)
The Raspberry Pi Pico 2 WH (with headers) is a microcontroller board based on the RP2350 featuring 2.4 GHz 802.11n wireless LAN and Bluetooth 5.2. It gives you even more flexibility in your IoT or smart product designs and expanding the possibilities for your projects.
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 WH 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
Wireless
On-board Infineon CYW43439 single-band 2.4 GHz 802.11n wireless Lan and Bluetooth 5.2
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
Pinout
Schematic
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
,
by Lobna Belarbi
Must-Have Boards, Kits & Tools to Start Your Arduino Journey with Elektor
Whether you're a newcomer eager to explore the world of microcontrollers or an experienced maker seeking to expand your toolkit, Elektor offers a curated selection...