The Arduino Uno is an open-source microcontroller development system encompassing hardware, an Integrated Development Environment (IDE), and a vast number of libraries. It is supported by an enormous community of programmers, electronic engineers, enthusiasts, and academics. The libraries in particular really smooth Arduino programming and reduce programming time. What’s more, the libraries greatly facilitate testing your programs since most come fully tested and working.
The Raspberry Pi 4 can be used in many applications such as audio and video media devices. It also works in industrial controllers, robotics, games, and in many domestic and commercial applications. The Raspberry Pi 4 also offers Wi-Fi and Bluetooth capability which makes it great for remote and Internet-based control and monitoring applications.
This book is about using both the Raspberry Pi 4 and the Arduino Uno in PID-based automatic control applications. The book starts with basic theory of the control systems and feedback control. Working and tested projects are given for controlling real-life systems using PID controllers. The open-loop step time response, tuning the PID parameters, and the closed-loop time response of the developed systems are discussed together with the block diagrams, circuit diagrams, PID controller algorithms, and the full program listings for both the Raspberry Pi and the Arduino Uno.
The projects given in the book aim to teach the theory and applications of PID controllers and can be modified easily as desired for other applications. The projects given for the Raspberry Pi 4 should work with all other models of Raspberry Pi family.
The book covers the following topics:
Open-loop and closed-loop control systems
Analog and digital sensors
Transfer functions and continuous-time systems
First-order and second-order system time responses
Discrete-time digital systems
Continuous-time PID controllers
Discrete-time PID controllers
ON-OFF temperature control with Raspberry Pi and Arduino Uno
PID-based temperature control with Raspberry Pi and Arduino Uno
PID-based DC motor control with Raspberry Pi and Arduino Uno
PID-based water level control with Raspberry Pi and Arduino Uno
PID-based LED-LDR brightness control with Raspberry Pi and Arduino Uno
The Arduino Uno is an open-source microcontroller development system encompassing hardware, an Integrated Development Environment (IDE), and a vast number of libraries. It is supported by an enormous community of programmers, electronic engineers, enthusiasts, and academics. The libraries in particular really smooth Arduino programming and reduce programming time. What’s more, the libraries greatly facilitate testing your programs since most come fully tested and working. The Raspberry Pi 4 can be used in many applications such as audio and video media devices. It also works in industrial controllers, robotics, games, and in many domestic and commercial applications. The Raspberry Pi 4 also offers Wi-Fi and Bluetooth capability which makes it great for remote and Internet-based control and monitoring applications. This book is about using both the Raspberry Pi 4 and the Arduino Uno in PID-based automatic control applications. The book starts with basic theory of the control systems and feedback control. Working and tested projects are given for controlling real-life systems using PID controllers. The open-loop step time response, tuning the PID parameters, and the closed-loop time response of the developed systems are discussed together with the block diagrams, circuit diagrams, PID controller algorithms, and the full program listings for both the Raspberry Pi and the Arduino Uno. The projects given in the book aim to teach the theory and applications of PID controllers and can be modified easily as desired for other applications. The projects given for the Raspberry Pi 4 should work with all other models of Raspberry Pi family. The book covers the following topics: Open-loop and closed-loop control systems Analog and digital sensors Transfer functions and continuous-time systems First-order and second-order system time responses Discrete-time digital systems Continuous-time PID controllers Discrete-time PID controllers ON-OFF temperature control with Raspberry Pi and Arduino Uno PID-based temperature control with Raspberry Pi and Arduino Uno PID-based DC motor control with Raspberry Pi and Arduino Uno PID-based water level control with Raspberry Pi and Arduino Uno PID-based LED-LDR brightness control with Raspberry Pi and Arduino Uno
Arduino Uno is an open-source microcontroller board based on the ATmega328P. It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz ceramic resonator (CSTCE16M0V53-R0), a USB connection, a power jack, an ICSP header and a reset button. It contains everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started. You can tinker with your Uno without worring too much about doing something wrong, worst case scenario you can replace the chip for a few dollars and start over again.
'Uno' means one in Italian and was chosen to mark the release of Arduino Software (IDE) 1.0. The Uno board and version 1.0 of Arduino Software (IDE) were the reference versions of Arduino, now evolved to newer releases. The Uno board is the first in a series of USB Arduino boards, and the reference model for the Arduino platform; for an extensive list of current, past or outdated boards see the Arduino index of boards.
Specifications
Microcontroller
ATmega328P
Operating Voltage
5 V
Input Voltage (recommended)
7-12 V
Input Voltage (limit)
6-20 V
Digital I/O Pins
14 (of which 6 provide PWM output)
PWM Digital I/O Pins
6
Analog Input Pins
6
DC Current per I/O Pin
20 mA
DC Current for 3.3 V Pin
50 mA
Flash Memory
32 KB (ATmega328P) of which 0.5 KB used by bootloader
SRAM
2 KB (ATmega328P)
EEPROM
1 KB (ATmega328P)
Clock Speed
16 MHz
LED_BUILTIN
13
Dimensions
68.6 x 53.4 mm
Weight
25 g
Contents
Projects
PicoVoiceVoice alienation and sound effects with the Raspberry Pi Pico
Navigation with Vibration Feedback
POV Display
Pulse Width Modulation (PWM) with the Raspberry Pi Pico
Wi-Fi with the Raspberry Pi Pico
'Hello World' from the Raspberry Pi Pico and RP2040A look at the Raspberry Pi Foundation’s first microcontroller
Simple On-Off Temperature Controller with Raspberry Pi HAT
Multitasking with the Raspberry PiShowcase: a traffic lights controller
The Raspberry Pi Ruler GadgetFun with a time-of-flight sensor
Raspberry Pi Buffer Board (Mk. 1)Never blow up the I/O again
FM radio with RDSA top HAT project for the Raspberry Pi
LoRa with the Raspberry Pi PicoFun with MicroPython!
Tutorials
Qt for the Raspberry Pi
Raspberry Pi Pico Programmingwith MicroPython and Thonny
Raspberry Pi Full StackRPi and RF24 at the heart of a sensor network
Raspberry Pi Bash Command Cheat Sheet
Community
Java on the Raspberry PiAn interview with Frank Delporte
Reviews
Introducing the New Raspberry Pi Pico W, H, and WH
Secure Boot Solution for Raspberry PiRetrofit security at a reasonable price
Review: SmartPi – Smart Meter Extension for Raspberry Pi
Review: The Enviro+ Raspberry Pi HATMeasuring environmental data with Raspberry Pi and the HAT Enviro+
Review: Meet the Raspberry Pi 4All new but still good?
Raspberry Pi Gets a Fast 3.5' Touch DisplayMore power at no extra charge
Book Launch: Raspberry Pi for Radio Amateurs
This book is about DC electric motors and their use in Arduino and Raspberry Pi Zero W based projects. The book includes many tested and working projects where each project has the following sub-headings:
Title of the project
Description of the project
Block diagram
Circuit diagram
Project assembly
Complete program listing of the project
Full description of the program
The projects in the book cover the standard DC motors, stepper motors, servo motors, and mobile robots. The book is aimed at students, hobbyists, and anyone else interested in developing microcontroller based projects using the Arduino Uno or the Raspberry Pi Zero W.
One of the nice features of this book is that it gives complete projects for remote control of a mobile robot from a mobile phone, using the Arduino Uno as well as the Raspberry Pi Zero W development boards. These projects are developed using Wi-Fi as well as the Bluetooth connectivity with the mobile phone. Readers should be able to move a robot forward, reverse, turn left, or turn right by sending simple commands from a mobile phone. Full program listings of all the projects as well as the detailed program descriptions are given in the book. Users should be able to use the projects as they are presented, or modify them to suit to their own needs.
Add this board to a device and you'll be able to connect it to a WiFi network, using its secure ECC608 crypto chip accelerator. The Arduino Uno WiFi is functionally the same as the Arduino Uno Rev3, but with the addition of WiFi/Bluetooth and some other enhancements. It incorporates the brand new ATmega4809 8-bit microcontroller from Microchip and has an onboard IMU (Inertial Measurement Unit) LSM6DS3TR.
The Wi-Fi Module is a self-contained SoC with an integrated TCP/IP protocol stack that can provide access to a Wi-Fi network, or act as an access point.
The Arduino Uno WiFi Rev2 has 14 digital input/output pins (5 that can be used as PWM outputs, 6 analog inputs), a USB connection, a power jack, an ICSP header, and a reset button. It contains everything needed to support the microcontroller. Simply connect it to a computer with a USB cable or power it with an AC adapter or battery to get started.
Specifications
Operating Voltage
5 V
Input Voltage
7 V - 12 V
Digital I/O
14
Analog Input Pins
6
Analog Input Pins
6
DC Current per I/O Pin
20 mA
DC Current for 3.3 V Pin
50 mA
Flash Memory
48 KB
SRAM
6.144 Bytes
EEPROM
256 Bytes
Clock Speed
16 MHz
Radio Module
u-blox NINA-W102
Secure Element
ATECC608A
Inertial Measurement Unit
LSM6DS3TR
LED_Builtin
25
Length
101.52 mm
Width
53.3 mm
Weight
37 g
A Fast-Lane Ride From Concept to Project
The core of the book explains the use of the Raspberry Pi Zero 2 W running the Python programming language, always in simple terms and backed by many tested and working example projects. On part of the reader, familiarity with the Python programming language and some experience with one of the Raspberry Pi computers will prove helpful. Although previous electronics experience is not required, some knowledge of basic electronics is beneficial, especially when venturing out to modify the projects for your own applications.
Over 30 tested and working hardware-based projects are given in the book, covering the use of Wi-Fi, communication with smartphones and with a Raspberry Pi Pico W computer. Additionally, there are Bluetooth projects including elementary communication with smartphones and with the popular Arduino Uno. Both Wi-Fi and Bluetooth are key features of the Raspberry Pi Zero 2 W.
Some of the topics covered in the book are:
Raspberry Pi OS installation on an SD card
Python program creation and execution on the Raspberry Pi Zero 2 W
Software-only examples of Python running on the Raspberry Pi Zero 2 W
Hardware-based projects including LCD and Sense HAT interfacing
UDP and TCP Wi-Fi based projects for smartphone communication
UDP-based project for Raspberry Pi Pico W communication
Flask-based webserver project
Cloud storage of captured temperature, humidity, and pressure data
TFT projects
Node-RED projects
Interfacing to Alexa
MQTT projects
Bluetooth-based projects for smartphone and Arduino Uno communications
The Uno differs from all preceding boards in that it does not use the FTDI USB-to-serial driver chip. Additional features coming with the R3 version are: ATmega16U2 instead of 8U2 as a USB-to-Serial converter. 1.0 pinout: added SDA and SCL pins for TWI communication placed near to the AREF pin and two other new pins placed near to the RESET pin, the IOREF that allow the shields to adapt to the voltage provided from the board and the second one is a not connected pin, that is reserved for future purposes. stronger RESET circuit. Microcontroller ATmega328P Operating Voltage 5 V Input Voltage 7 V - 12 V Digital I/O Pins 14 PWM Pins 6 Analog Input Pins 8 DC Current per I/O Pin 20 mA DC Current for 3.3 V Pin 50 mA Flash Memory 32 KB (ATmega328P) of which 0.5 KB used by bootloader SRAM 2 KB EEPROM 1 KB Clock Speed 16 MHz LED_Builtin 13 Length 68.6 mm Width 53.4 mm Weight 25 g
Programming and Projects for the Minima and WiFi
Based on the low-cost 8-bit ATmega328P processor, the Arduino Uno R3 board is likely to score as the most popular Arduino family member so far, and this workhorse has been with us for many years. Recently, the new Arduino Uno R4 was released, based on a 48-MHz, 32-bit Cortex-M4 processor with a huge amount of SRAM and flash memory. Additionally, a higher-precision ADC and a new DAC are added to the design. The new board also supports the CAN Bus with an interface.
Two versions of the board are available: Uno R4 Minima, and Uno R4 WiFi. This book is about using these new boards to develop many different and interesting projects with just a handful of parts and external modules, which are available as a kit from Elektor. All projects described in the book have been fully tested on the Uno R4 Minima or the Uno R4 WiFi board, as appropriate.
The project topics include the reading, control, and driving of many components and modules in the kit as well as on the relevant Uno R4 board, including
LEDs
7-segment displays (using timer interrupts)
LCDs
Sensors
RFID Reader
4×4 Keypad
Real-time clock (RTC)
Joystick
8×8 LED matrix
Motors
DAC (Digital-to-analog converter)
LED matrix
WiFi connectivity
Serial UART
CAN bus
Infrared controller and receiver
Simulators
… all in creative and educational ways with the project operation and associated software explained in great detail.
Raspberry Pi DAC+ (formerly known as IQaudio DAC+) is a high-performance audio HAT designed for any Raspberry Pi with a 40-pin GPIO header. Equipped with the Texas Instruments PCM5122 DAC, it delivers crystal-clear stereo analogue audio through a pair of phono (RCA) connectors.
No external power is needed – the DAC+ connects directly to the Raspberry Pi’s GPIO header without requiring soldering or cables.
Features
Power LED
Analogue audio out (0-2 V RMS) via panel-mounted stereo
phono (RCA) sockets with MUTE signal (headphone detect)
Dedicated headphone amplifier, output via 3.5 mm panel-mounted barrel socket
40-pin pass-through GPIO header
HAT EEPROM write-enabled
Downloads
Datasheet
Learn the basics of electronics by assembling manually your Arduino Uno, become familiar with soldering by mounting every single component, and then unleash your creativity with the only kit that becomes a synth!
The Arduino Make-Your-Uno kit is really the best way to learn how to solder. And when you are done, the packaging allows you to build a synth and make your music.
A kit with all the components to build your very own Arduino Uno and audio synthesizer shield.
The Make-Your-Uno kit comes with a complete set of instructions in a dedicated content platform. This includes video material, a 3D interactive viewer for following detailed instructions, and how to program your board once it is finished.
This kit contains:
Arduino Make-Your-Uno
1x Make-Your-Uno PCB
1x USB C Serial adapter Board
7x Resistors 1k Ohm
2x Resistors 10k Ohm
2x Resistors 1M Ohm
1x Diode (1N4007)
1x 16 MHz Crystal
4x Yellow LEDs
1x Green LED
1x Push-Button
1x MOSFET
1x LDO (3.3 V)
1x LDO (5 V)
3x Ceramic capacitors (22pF)
3x Electrolytic capacitors (47uF)
7x Polyester capacitors (100nF)
1x Socket for ATMega 328p
2x I/O Connectors
1x Connector header 6 pins
1x Barrel jack connector
1x ATmega 328p Microcontroller
Arduino Audio Synth
1x Audio Synth PCB
1x Resistor 100k Ohm
1x Resistor 10 Ohm
1x Audio amplifier (LM386)
1x Ceramic capacitors (47nF)
1x Electrolytic capacitors (47uF)
1x Electrolytic capacitors (220uF)
1x Polyester capacitor (100nF)
4x connectors pin header
6x potentiometer 10k Ohm with plastic knobs
Spare parts
2x Electrolytic capacitors (47uF)
2x Polyester capacitor (100nF)
2x Ceramic capacitors (22pF)
1x Push-Button
1x Yellow LEDs
1x Green LED
Mechanical parts
5x Spacers 12 mm
11x Spacers 6 mm
5x screw nuts
2x screws 12 mm
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.