What this book covers
Chapter 1, Understanding the Raspberry Pi, explores the Raspberry Pi before we embark on creating IoT projects using it.
Chapter 2, Harnessing Web Services with the Raspberry Pi, delves into writing Python code to transform our Raspberry Pi into an IoT device, by leveraging web services to pull data and create visual displays on the Sense HAT. This lays the groundwork for more advanced IoT web services development, through practical projects such as a stock ticker, weather display, and decision-maker applications.
Chapter 3, Building an IoT Weather Indicator, explores the integration of servo motors and LEDs with the Raspberry Pi to create a practical IoT weather indicator, leveraging its precision, control, and real-time feedback capabilities for enhanced system functionality.
Chapter 4, Building an IoT Information Display, shows you how to build an IoT information display, using the Raspberry Pi-branded 7-inch touchscreen to show real-time weather and local traffic information. The chapter starts with an exploration of compatible screens and culminating in a comprehensive dashboard project.
Chapter 5, Exploring the GPIO, dives deeper into the GPIO port functionality on both the Raspberry Pi and Raspberry Pi Pico by constructing an IoT home security application, including a basic alarm system with a passive infrared sensor (PIR) motion sensor, pushbutton, and buzzer.
Chapter 6, Building an IoT Alarm Module, looks at enhancing our basic alarm system by using a Raspberry Pi Pico W, a public MQTT server, and the MQTTHQ web client to build an IoT alarm module, where motion detection triggers messages and remote buzzer activation. This will form the foundation of our IoT home security system.
Chapter 7, Building an IoT Button, shows you how to build an essential component of our IoT home security system, the IoT button, using both the compact M5Stack ATOM Matrix and the versatile Raspberry Pi Pico W for different versions of the button.
Chapter 8, Creating an IoT Alarm Dashboard, covers using a Raspberry Pi 5 with a 7-inch touchscreen to create an IoT alarm dashboard, allowing us to arm and disarm the alarm module, review MQTT notifications, and display a map of alarm locations, thereby completing our advanced IoT alarm system with global application capabilities.
Chapter 9, Understanding LoRa, explores LoRa (short for Long Range) technology for IoT communication, its applications in agriculture and smart cities, and how to build a LoRa sensory transmitter and receiver using Raspberry Pi Pico and Pico W, respectively, demonstrating LoRa’s extensive range capabilities and efficient low-power data transmission.
Chapter 10, Integrating LoRa with the Internet, shows you how to use our Raspberry Pi Pico W-equipped LoRa receiver to publish sensory data from a remote LoRa transmitter to an MQTT server, modify our analog-metered weather indicator to utilize this data, and explore various IoT communication technologies such as LoRaWAN and cellular.
Chapter 11, Introducing ROS, introduces the ROS, detailing its significance in robotics, setting it up on a Raspberry Pi 4 with Ubuntu, and using turtlesim to learn basic ROS concepts and operations, ultimately preparing us to build the advanced IoT robot A.R.E.S. (Advanced Robot Eyes for Security).
Chapter 12, Creating an IoT Joystick, shows you how to create an IoT joystick using a Raspberry Pi Pico WH. You will use it to remotely control a ROS TurtleSim robot, building on previous projects and demonstrating IoT’s practical application in robotics.
Chapter 13, Introducing Advanced Robotic Eyes for Security (A.R.E.S.), focuses on converting our TurtleSim virtual robot into a real-life robot called ARES, which features a video feed accessible via the VLC media player and is controlled by the IoT Joystick from Chapter 12. We will use a Raspberry Pi for sensory input and a Raspberry Pi Pico for motor, LED, and buzzer control, with a 3D-printed frame.
Chapter 14, Adding Computer Vision to A.R.E.S., finally sees us add computer vision to ARES, enabling it to recognize objects and send text alerts. We will also use OpenCV and the You Only Look Once (YOLO) object detection system to build a smart video streaming application.