The Raspberry Pi was first introduced by the Raspberry Pi foundation to promote the education of basic computer science in developing countries. Little did the foundation know that they had truly started a DIY home project revolution. A development board running a flavor of the Debian Linux distribution at only $25 complete with a multitude of hardware pins providing support for GPIO, UART, I2C, SPI, and more, was a godsend for tinkerers hoping to wire it up to control sensors and actuators for their home automation ideas. With the introduction of version 3 and Raspberry Pi Zero W, programmers can connect to Wi-Fi with the Pi without the need to use a USB Wi-Fi dongle.
Arduino boards were first launched in the early 2000s. With a real-time operating system, and onboard ATMega controllers, these boards have always been easy to program, and they have provided a great way to interface with analog devices. Their ability to read analog signals without a 2D chipset and the extremely low power consumption of some variants allows these boards to complement the Raspberry Pi for automation projects. Just like the Raspberry Pi, these boards also provide the ability to communicate on 12C, SPI, and other protocols. Some specialized variants, such as the ESP8266, also support Wi-Fi connectivity.
As you will read through the chapters in this book you will notice how we use the Raspberry Pi or an appropriate variant of Arduino as per the specific needs of the chapter. We will show you how to use these boards to create real-life, cool, practical automation projects.