Book Image

Raspberry Pi 3 Home Automation Projects

By : Shantanu Bhadoria, Ruben Oliva Ramos
Book Image

Raspberry Pi 3 Home Automation Projects

By: Shantanu Bhadoria, Ruben Oliva Ramos

Overview of this book

Raspberry Pi 3 Home Automation Projects addresses the challenge of applying real-world projects to automate your house using Raspberry Pi 3 and Arduino. You will learn how to customize and program the Raspberry Pi 3 and Arduino-based boards in several home automation projects around your house. This book aims to help you integrate different microcontrollers like Arduino, ESP8266 Wi-Fi module, Particle Photon and Raspberry Pi 3 into the real world, taking the best of these boards to develop some exciting home automation projects. We will start with an interesting project creating a Raspberry Pi Powered smart mirror and move on to Automated Gardening System, which will help you build a simple smart gardening to keep your garden healthy with minimal effort. You will also learn to build projects such as CheerLights into a holiday display, a project to erase parking headaches with OpenCV and Raspberry Pi 3, create Netfl ix's "The Switch" for the living room and lock down your house like Fort Knox with a Windows IoT face recognition-based door lock system. By the end of the book, you will be able to build and automate the living space with intriguing IoT projects and bring a new degree of inter connectivity to your world.
Table of Contents (7 chapters)

Programming the button

We're are programming a Netflix TV remote control, and we see the code for testing the sending signals from the Particle Photon to the TV.

Testing the code for remote control for a Netflix TV

In the following sketch, we show an example of programming the button:

//Before using, make sure you get your IR timings and add your hue bridge IP/dev username in the appropriate places.

//To keep it as simple as possible, this does not contain any code for the optional LEDs on the case. We light up our indicators and logo after the button is pressed.

TCPClient client;

#define PIN_IR A0
#define PIN D0
#define NUM_PULSES 68

//specific to your TV
int pulse_widths[NUM_PULSES][2] = {
{62116, 8860}, {4360, 540}, {520...