With Examples for Arduino UNO, Raspberry Pi Pico and ESP32
Programming small electronic systems has never been more accessible. Tasks that once demanded expensive tools, specialized hardware, and deep electrical engineering expertise can now be tackled with low-cost development boards and approachable software. At the centre of this shift is the Arduino environment, which provides a unified and familiar way to program a wide range of microcontroller platforms—from classic AVR boards like the Arduino UNO to modern ARM-based boards such as the Raspberry Pi Pico, and powerful Wi-Fi-enabled devices like the ESP32.
This book introduces embedded programming through the core idea that defines all microcontrollers: reading inputs, processing information, and controlling outputs in a predictable loop. The Arduino environment abstracts much of the hardware complexity, allowing you to focus on behaviour rather than implementation details. With just a few lines of code, you can blink LEDs, read sensors, control motors, and communicate with other devices.
While the Arduino UNO, Raspberry Pi Pico, and ESP32 boards differ greatly in performance and features, they share the same fundamental building blocks: digital and analog I/O, timers, serial communication, PWM, interrupts, and power management. Learning these concepts within the Arduino framework builds skills that transfer easily across platforms and scale toward more advanced applications.
By exploring multiple boards while maintaining a consistent programming approach, this book helps you progress from simple experiments to confidently produce well-structured designs—showing that embedded development can be both practical and enjoyable.
40+ Projects using Arduino, Raspberry Pi and ESP32
This book is about developing projects using the sensor-modules with Arduino Uno, Raspberry Pi and ESP32 microcontroller development systems. More than 40 different sensors types are used in various projects in the book. The book explains in simple terms and with tested and fully working example projects, how to use the sensors in your project. The projects provided in the book include the following:
Changing LED brightness
RGB LEDs
Creating rainbow colours
Magic wand
Silent door alarm
Dark sensor with relay
Secret key
Magic light cup
Decoding commercial IR handsets
Controlling TV channels with IT sensors
Target shooting detector
Shock time duration measurement
Ultrasonic reverse parking
Toggle lights by clapping hands
Playing melody
Measuring magnetic field strength
Joystick musical instrument
Line tracking
Displaying temperature
Temperature ON/OFF control
Mobile phone-based Wi-Fi projects
Mobile phone-based Bluetooth projects
Sending data to the Cloud
The projects have been organized with increasing levels of difficulty. Readers are encouraged to tackle the projects in the order given. A specially prepared sensor kit is available from Elektor. With the help of this hardware, it should be easy and fun to build the projects in this book.
Der Arduino Uno ist ein Open-Source-Mikrocontroller-Entwicklungssystem, das Hardware, eine integrierte Entwicklungsumgebung (IDE) und eine Vielzahl von Bibliotheken umfasst. Es wird von einer riesigen Gemeinschaft von Programmierern, Elektronikern, Enthusiasten und Akademikern unterstützt. Insbesondere die Bibliotheken erleichtern die Programmierarbeit und reduzieren die Entwicklungszeiten, da sie das Erstellen von Programmen erheblich erleichtern.
Der Raspberry Pi 4 kann in vielen Projekten wie Audio- und Videoanwendungen, aber auch in Industriesteuerungen, Robotik, Spielen usw. eingesetzt werden. Dazu bietet er auch WiFi- und Bluetooth-Fähigkeiten, wodurch er sich zudem hervorragend für internetbasierte Steuerungs- und Überwachungsanwendungen eignet.
In diesem Buch werden sowohl der Raspberry Pi 4 als auch der Arduino Uno in PID-basierten automatischen Steuerungsanwendungen eingesetzt. Nach einer grundlegenden Theorie der Regelsysteme werden funktionierende und getestete Projekte zur Steuerung realer Systeme mit PID-Reglern vorgestellt. Die Open-Loop-Eigenschaften, die Abstimmung der PID-Parameter und das Closed-Loop-Zeitverhalten der Systeme werden zusammen mit Blockdiagrammen, Schaltplänen und PID-Regelalgorithmen ausführlich diskutiert.
Vollständige Programme für den Raspberry Pi und den Arduino Uno runden die im Buch vorgestellten Projekte ab. Die Regelsysteme können problemlos auch auf andere Projekte angewendet werden und die für den Raspberry Pi 4 angegebenen Programme sollten auch mit anderen Modellen der Raspberry Pi-Familie reibungslos funktionieren.
Das Buch behandelt folgende Themen:
Steuer- und Regelsysteme
Analoge und digitale Sensoren
Übertragungsfunktionen und zeitkontinuierliche Systeme
Systemantwortfunktionen erster und zweiter Ordnung
Zeitdiskrete digitale Systeme
Zeitkontinuierliche PID-Regler
Zeitdiskrete PID-Regler
Zweipunkt-Temperaturregelung mit Raspberry Pi und Arduino Uno
PID-basierte Temperaturregelung mit Raspberry Pi und Arduino Uno
Motorsteuerung mit Raspberry Pi und Arduino Uno
Wasserstandsregelung mit Raspberry Pi und Arduino Uno
PID-basierte LED-Helligkeitsregelung mit Raspberry Pi und Arduino Uno
Projects Using Arduino IDE and the LVGL Graphics Library
The ESP32 is probably one of the most popular microcontrollers used by many people, including students, hobbyists, and professional engineers. Its low cost, coupled with rich features makes it a popular device to use in many projects. Recently, a board called the ESP32 Cheap Yellow Display (CYD for short) is available from its manufacturers. The board includes a standard ESP32 microcontroller together with a 320x240 pixel TFT display. Additionally, the board provides several connectors for interfaces such as GPIO, serial port (TX/RX), power and Ground. The inclusion of a TFT display is a real advantage as it enables users to design complex graphics-based projects without resorting to an external LCD or graphics displays.
The book describes the basic hardware of the ESP32 CYD board and provides details of its on-board connectors. Many basic, simple, and intermediate-level projects are given in the book based on the ESP32 CYD, using the highly popular Arduino IDE 2.0 integrated development environment. The use of both the basic graphics functions and the use of the popular LVGL graphics library are discussed in the book and projects are given that use both types of approaches.
All the projects given in the book have been tested and are working. The block diagram, circuit diagram, and the complete program listings and program descriptions of all the projects are given with explanations. Readers can use the LVGL graphics library to design highly popular eye-catching full-color graphics projects using widgets such as buttons, labels, calendars, keypads, keyboards, message boxes, spinboxes, sliders, charts, tables, menus, bars, switches, drop-down lists, animations, and many more widgets.
Vom Messwert zur stabilen Entscheidung
Wie wird aus einem einfachen Mikrocontroller ein intelligentes System, das Sensorwerte erfasst, verarbeitet und sinnvoll darauf reagiert? Dieses Buch zeigt es Ihnen Schritt für Schritt – verständlich, praxisnah und ohne unnötige Vorkenntnisse.
Sie beginnen mit den Grundlagen der digitalen und analogen Ein- und Ausgänge. Anschließend lernen Sie, wie Sensorwerte gelesen, geglättet und zuverlässig bewertet werden. Anschauliche Beispiele erklären, warum einzelne Messwerte oft täuschen können und wie Mittelwertbildung, Hysterese und einfache Entscheidungsregeln für stabile Ergebnisse sorgen. Nach und nach erweitern Sie Ihre Projekte um Displays, I²C-Kommunikation und mehrere vernetzte Mikrocontroller. So entstehen verteilte Systeme, in denen Raspberry Pi Pico und ATtiny-Controller Daten austauschen und gemeinsam Aufgaben übernehmen.
Im fortgeschrittenen Teil erhalten Sie einen leicht verständlichen Einstieg in Merkmalsbildung, Datenvorverarbeitung, hybride Entscheidungsmodelle und TinyML-nahe Anwendungen. Dabei verbinden Sie klassische Regelungstechnik mit modernen datenbasierten Methoden.
Alle Projekte werden von ausführlich kommentierten Programmen in C und MicroPython begleitet. Das Buch richtet sich an Einsteiger, Maker, Studierende und alle, die Embedded-Systeme von Grund auf verstehen möchten.
Am Ende können Sie eigene Systeme entwickeln, die nicht nur messen, sondern Informationen auswerten, zuverlässige Entscheidungen treffen und gezielt reagieren.
This bundle gives you everything you need to get started right away with the XIAO ESP32-C3 development board. Learn the fundamentals of the ESP32-C3 and build practical projects with Wi-Fi, Bluetooth, sensors, displays, PWM, Deep Sleep, and much more.
Book: Build Smart Projects with the XIAO ESP32-C3 Board
The XIAO ESP32-C3 board combines the ultra-compact form factor of the XIAO series with the full capabilities of the ESP32-C3 chip, including integrated Wi-Fi and Bluetooth 5.0. This book is a comprehensive, hands-on guide to getting the most out of this powerful yet affordable development board.
The author takes readers from the fundamentals to advanced projects. Starting with LED blinking and dimming, the book progresses to ADC and PWM for precise sensor interfacing and PWM-controlled lighting effects before moving on to building practical, real-world applications, including:
A Wi-Fi weather station with an OLED display and real-time online weather data
An ultrasonic parking assistant with audible feedback
A refrigerator monitoring probe with climate sensing and Deep Sleep for years of battery operation
A retro Pong game controlled by a touch-free sensor
A microphone-based party app that responds to claps
And much more: lighting control, reaction-time measurement, mains frequency analysis, soil moisture sensing, ambient LED lighting, and 7-segment displays
Seeed Studio XIAO ESP32C3
Seeed Studio XIAO ESP32C3 has equipped a highly-integrated ESP32-C3 chip, built around a 32-bit RISC-V chip processor with a four-stage pipeline that operates at up to 160 MHz.
The board equips highly-integrated ESP32-C3 SoC. The chip has been installed with a complete 2.4 GHz Wi-Fi subsystem which means it supports Station mode, SoftAP mode, SoftAP & Station mode, and promiscuous mode for multiple Wi-Fi applications. It works under an ultra-low power state, also supporting features of Bluetooth 5 and Bluetooth mesh. There are 400 KB SRAM & 4 MB Flash on the chip, allowing for more programming space, and bringing more possibilities to the IoT control scenarios.
Applications
Internet of Things
Wearable devices
Health monitoring
Education
Low-Power networking
Rapid prototyping
Specifications
Processor
ESP32-C3 SoC
RISC-V single-core 32-bit chip processor with a four-stage pipeline that operates at up to 160 MHz
Wireless
Complete 2.4GHz Wi-Fi subsystem
Bluetooth Low Energy 5.0/ Bluetooth Mesh
On-chip Memory
400 KB SRAM & 4 MB Flash
Interface
1x UART, 1x I²C, 1x SPI, 11x GPIO (PWM), 4x ADC
1x Reset button, 1x Boot button
Power (Typ.)
Max 3.3 V Output Current: 500 mA Test Condition: BAT Pin Input @ 3.8 V Source Capability: 3 A
Charging current: 380 mA(Fast) / 40 mA(Trickle)
Input voltage (VIN): 5 VInput voltage (BAT): 3.7 V
Deep Sleep Power Consumption
Deep Sleep Mode: 44 μA
Wi-Fi Enabled Power Consumption
Active Mode: 75 mA
Modem-sleep Mode: 25 mA
Light-sleep Mode: 4 mA
BLE Enabled Power Consumption
Modem-sleep Mode: 27 mA
Light-sleep Mode: 10 mA
Dimensions
21 x 17.8 mm
Included
1x Seeed Studio XIAO ESP32C3
1x Antenna
2x 7-pin header
Downloads
Wiki
Datasheet
This bundle contains:
Book: Build Smart Projects with the XIAO ESP32-C3 Board (normal price: €35)
Board: Seeed Studio XIAO ESP32C3 (normal price: €10)
Datenbankmodelle und -software für Elektronikanwendungen
Mit seiner Energieeffizienz und seinem reichen Spektrum an quelloffener Software eignet sich der Einplatinencomputer Raspberry Pi auch für die Speicherung von Daten und deren grafische Aufbereitung lokal oder im World Wide Web (WWW).
Dieses Buch stellt verschiedene Datenbankmodelle und diverse Datenbanksoftware vor:
SQL: MariaDB, SQLite
InfluxDB: Telegraf
Grafana
MQTT
Verschlüsselung mit RPi
Apache
PHP
Node RED
Docker
Es zeigt darüber hinaus ausgewählte Ansätze, gespeicherte Daten anzuzeigen und zu verwalten. Ein eigener Abschnitt ist sowohl der SSL-Verschlüsselung der Verbindung als auch dem Betrieb von Servern im WWW gewidmet.
Das Buch richtet sich an alle,
die neugierig sind und gerne die Möglichkeiten des Raspberry Pi ausloten möchten,
die einen Einstieg in das Datenmanagement mit Datenbanken suchen,
die mit einfachen Mitteln schnell loslegen möchten,
die Alternativen aufgezeigt bekommen möchten,
die in komprimierter Form Tipps für eigene Entwicklungen suchen,
die Freude am eigenen Entwickeln und Realisieren haben.
Programmierkenntnisse und -erfahrungen sind für die Installation der Software nicht erforderlich. Jeder einzelne Schritt wird detailliert beschrieben und mit Screenshots visuell unterlegt.
Enhance your Raspberry Pi 5 with the Pironman 5, built with sturdy aluminum, superior cooling, NVMe M.2 SSD support, OLED display, RGB lighting, standard HDMI ports x2, and a secure power switch. It is perfect for NAS, Home Assistant, Media and Game Centers. The Pironman 5 is not just a case; it’s an upgrade that transforms your Raspberry Pi 5 into a powerful, efficient, and stylish device.
The Pironman 5 includes the Pi 5 NVMe PIP (PCIe Peripheral Board), a PCIe adapter board specifically designed for NVMe solid-state drives. This board supports four sizes of NVMe SSDs: 2230, 2242, 2260, and 2280, all of which can be installed in an M.2 M key slot. The connection is certified for Gen 2.0 speeds (5 GT/sec), but can be forced to Gen 3.0 (10 GT/sec) for faster performance.
Expandable NVMe M.2 SSD Slot
Boost your Raspberry Pi 5's performance with the Pironman 5's NVMe M.2 SSD slot, supporting multiple sizes (2230, 2242, 2260, 2280) for increased storage and faster system response.
Advanced Cooling System
Keep your Raspberry Pi 5 cool and stylish with the Pironman 5's tower cooler and dual RGB fans, featuring dust filters for durable, low-maintenance operation.
OLED Display for Instant Insights
The Pironman 5 includes a 0.96" OLED display, providing immediate updates on CPU and RAM usage, temperature, IP address, and more.
Enhanced Functionality and Safety
The Pironman 5 secures your Raspberry Pi 5 with features like safe shutdown, customizable RGB LEDs, HDMI ports, an IR receiver, and an external GPIO extender, enhancing functionality and connectivity.
Features
Raspberry Pi 5 mini PC
0.96" OLED Display showing Raspberry Pi’s CPU usage, temperature, disk usage, IP address, RAM usage etc.
Tower cooler can cool a 100% CPU load Pi to 39°C at 25°C room temperature
2 RGB Fans, with GPIO control
1 PWM Fan on the Tower Cooler is controlled by the Raspberry Pi system.
Supports four (PCIe Gen 2.0 / PCIe Gen 3.0) NVMe M.2 SSD sizes: 2230, 2242, 2260, and 2280.
4 WS2812 Addressable RGB LED light up the whole case with cool light effect
IR Receiver for multi-media center like Kodi or Volumio
Retro metal power button for safe shut down
External GPIO extender with pin name label, for easy access
Equipped with a spring-loaded socket for easy card removal
Aluminum main body with clear Acrylic side panel
Features two standard HDMI ports
Downloads
Documentation
Projects with Arduino Uno & Raspberry Pi with Examples for the MCP2515 CAN Bus Interface Module
This book details the use of the Arduino Uno and the Raspberry Pi 4 in practical CAN bus based projects. Using either the Arduino Uno or the Raspberry Pi with off-the-shelf CAN bus interface modules considerably ease developing, debugging, and testing CAN bus based projects.
This book is written for students, practicing engineers, enthusiasts, and for everyone else wanting to learn more about the CAN bus and its applications. The book assumes that the reader has some knowledge of basic electronics. Knowledge of the C and Python programming languages and programming the Arduino Uno using its IDE and Raspberry Pi will be useful, especially if the reader intends to develop microcontroller-based projects using the CAN bus.
The book should be a useful source of reference material for anyone interested in finding answers to questions such as:
What bus systems are available for the automotive industry?
What are the principles of the CAN bus?
How can I create a physical CAN bus?
What types of frames (or data packets) are available in a CAN bus system?
How can errors be detected in a CAN bus system and how dependable is a CAN bus system?
What types of CAN bus controllers exist?
How do I use the MCP2515 CAN bus controller?
How do I create 2-node Arduino Uno-based CAN bus projects?
How do I create 3-node Arduino Uno-based CAN bus projects?
How do I set the acceptance masks and acceptance filters?
How do I analyze data on the CAN bus?
How do I create 2-node Raspberry Pi-based CAN bus projects?
How do I create 3-node Raspberry Pi-based CAN bus projects?
Open-Source-Code mit Arduino IDE und PlatformIO
Autonomes Fahren: GPS, Accelerometer, Gyroskop
PS3-Controller
Mikrocontroller wie der Arduino und Einplatinenrechner wie der Raspberry Pi haben sich zu beliebten Komponenten entwickelt. Dritter im Bunde ist der ESP32 der Firma Espressif. Mikrocontroller dieser Baureihe zeichnen sich durch eine Vielzahl implementierter Funktionen aus, die bei einem Arduino konventioneller Prägung mit einem Atmel-AVR-Mikrocontroller erst mit weiterer Hardware möglich sind. Prominentes Beispiel sind hier die WiFi- und Bluetooth-Funktionalitäten. Gegenüber einem Raspberry Pi zeichnen sie sich durch einen deutlich geringeren Preis aus.
Allgemeine Informationen für die Realisierung eines Roboterauto-Projekts mit dem ESP32 sind leicht zu finden. Dabei handelt es sich aber oft nur um Ausführungen zu einem Teilaspekt, ohne inhaltliche oder funktionale Abstimmung. So ist nicht nur die Beschaffung der benötigten Informationen mühselig und zeitaufwändig, sie kann auch außerordentlich fehlerträchtig sein.
Ansatzpunkt dieses Buches ist, diese Lücke zu schließen. Es geht auf verschiedene Möglichkeiten eines Chassis ein, vermittelt nötige Kenntnisse und führt schrittweise von einer einfachen Motorsteuerung zu einem komplexen sensor- und sprachgesteuerten Roboterauto. Hacks rund um GPS und eine PlayStation 3 runden die Sache ab.
Inhalt
Bei der Reihenfolge der Kapitel wurde versucht – beginnend bei der Darstellung von grundlegenden Informationen – über die Lösung einfacher Aufgaben zu etwas anspruchsvolleren Techniken zu führen.
Der Mikrocontroller ESP32
Die Software erstellen
Die Stromversorgung
Rund um die Hardware
Das Chassis
Der Gleichstrommotor
Kabellose Steuerung über WiFi
Mit Sensoren Hindernisse erkennen
Eine eigene Roboterauto-App
Servo und Lichtsensor
GPS
Accelerometer / Gyroskop
PS3-Controller
Roboterauto-App
Hinweis zur Software
Die Dateien haben das Suffix (.cpp). Grund ist die Entwicklung mit PlatformIO. Mit Copy & Paste sollten sie auch in der Arduino-IDE verwendet werden können.
Dit boek gaat over de Raspberry Pi, en over het programmeren in C. De programmeertaal C en het besturingssysteem Linux (Raspbian) passen uitstekend bij elkaar. Alles wat we nodig hebben om in C te programmeren wordt meegeleverd met het besturingssysteem van de Raspberry Pi.
In dit boek leert u hoe C gebruikt wordt met de Raspberry Pi, en krijgt u een overzicht van de taal.
WiringPi is een softwarebibliotheek voor de Raspberry Pi waarmee C hardware-uitbreidingen kan benaderen. Die bibliotheek wordt gebruikt om sensoren uit te lezen en om extra hardware aan te sturen. U gaat experimenteren met LED’s en schakelaars, met motoren, met geluid en met sensoren voor temperatuur, luchtdruk, en luchtvochtigheid.
Met een Linux-systeem kunt u een webserver maken, inclusief interactieve websites met PHP en WiringPi. Daarom is ook een beknopt overzicht van HTML en PHP in het boek opgenomen. In de voorbeelden worden sensoren via het web uitgelezen en worden apparaten bestuurd. In het laatste voorbeeld wordt een temperatuurlogger gemaakt. Die meet elk kwartier de temperatuur. Een tabel met de meetwaarden kan via het web worden uitgelezen.
Alle voorbeeldprogramma’s kunnen worden gedownload van de website van Elektor.
Practical Multitasking Fundamentals
Programming embedded systems is difficult because of resource constraints and limited debugging facilities. Why develop your own Real-Time Operating System (RTOS) as well as your application when the proven FreeRTOS software is freely available? Why not start with a validated foundation?
Every software developer knows that you must divide a difficult problem into smaller ones to conquer it. Using separate preemptive tasks and FreeRTOS communication mechanisms, a clean separation of functions is achieved within the entire application. This results in safe and maintainable designs.
Practicing engineers and students alike can use this book and the ESP32 Arduino environment to wade into FreeRTOS concepts at a comfortable pace. The well-organized text enables you to master each concept before starting the next chapter. Practical breadboard experiments and schematics are included to bring the lessons home. Experience is the best teacher.
Each chapter includes exercises to test your knowledge. The coverage of the FreeRTOS Application Programming Interface (API) is complete for the ESP32 Arduino environment. You can apply what you learn to other FreeRTOS environments, including Espressif’s ESP-IDF. The source code is available from GitHub. All of these resources put you in the driver’s seat when it is time to develop your next uber-cool ESP32 project.
What you will learn:
How preemptive scheduling works within FreeRTOS
The Arduino startup “loopTask”
Message queues
FreeRTOS timers and the IDLE task
The semaphore, mutex, and their differences
The mailbox and its application
Real-time task priorities and its effect
Interrupt interaction and use with FreeRTOS
Queue sets
Notifying tasks with events
Event groups
Critical sections
Task local storage
The gatekeeper task