Advanced Home Automation Using Raspberry Pi: Building Custom Hardware, Voice Assistants, and Wireless Nodes [1 ed.] 1484272730, 9781484272732

Build a versatile home automation system from scratch. There are many ways of controlling home appliances with your smar

328 18 11MB

English Pages 316 Year 2021

Report DMCA / Copyright

DOWNLOAD EPUB FILE

Table of contents :
Table of Contents
About the Author
About the Technical Reviewer
Acknowledgments
Introduction
Chapter 1: Introduction to Raspberry Pi
Raspberry Pi
Inside the Raspberry Pi Board
Hardware Requirements
A Power Supply
A microSD Card
Mouse, Keyboard, and HDMI Cable
Software Requirements
How to Install the OS in an SD card
First Time Boot
Using raspi-config
Headless Setup for the Pi
Accessing the Remote Desktop
Summary
Chapter 2: Controlling Raspberry Pi GPIO
Raspberry Pi GPIO
Raspberry Pi Pin Numbering
GPIO Programming
Importing a Python Module
Pin Scheme Declaration
Pin Mode Declaration
Outputs
Inputs
Delays
Python Program: Blinking an LED
PWM: LED Dimming
GPIO Input: Button
Using Interrupts
Analog Input
Automating Scripts and Tasks
Summary
Chapter 3: Getting Started with Web Automation
Web-Based Home Automation
Hardware Requirements
Software Requirements
What Is Flask?
Installing Flask
Creating a Simple Web Server
Creating a Home Automation Web Server
Understanding IoT Protocols
MQTT (Message Queue Telemetry Transport)
Subscribe and Publish
Messages
Topics
MQTT Broker
XMPP (Extensible Messaging and Presence Protocol)
DDS (Data Distribution Service)
Installing Mosquitto MQTT Broker
Testing Mosquitto Broker
Controlling GPIOs Using MQTT
Summary
Chapter 4: Mesh Networking Using ESP and RPi
What Is Mesh Networking?
How Does a Mesh Network Work?
Types of Mesh Networks
Mesh Networking Using ESP Modules
About ESP Dev Modules
Installing and Setup Arduino IDE
Problem Statement
ESP-MESH
Hardware Requirements and Connection Diagram
Coding and Testing
Communication Between ESP-MESH and Raspberry Pi
MQTT Communication Between ESP and Raspberry Pi
Coding and Testing
Cloud-Based MQTT Setup
Blynk: An IoT Platform
Local Blynk Server Setup on Raspberry Pi
Blynk App Setup
Coding and Testing
Summary
Chapter 5: Designing Smart Controller Circuits
Component Selection
Designing the Printed Circuit Board (PCB)
Schematic Design
Layout Design
Gerber Generation
Enclosure Design
Relay Module
Power Supply
5V SMPS Circuit Design
WiFi-Enabled Smart Switch/Plug
AC Fan and Bulb Dimmer Circuit
Zero-Crossing Detection Method
All-in-One Smart Switch
Energy Monitoring Circuit
Electric/Capacitive Switch Connections
Sensor Connections
Summary
Chapter 6: Getting Started with Home Assistant
Home Automation Platforms
Installing Home Assistant
Setting Up Home Assistant
Installing Add-Ons
Configuration.yaml
Controlling Raspberry Pi GPIO Using Home Assistant
Creating Automation in Home Assistant
Controlling a Smart Switchboard Using Home Assistant
ESPHome
Creating an ESP Node
YAML File for Smart Switchboard
Flashing Binary File in the ESP Module
ESPHome Automation
ESP32-CAM Integration with Home Assistant
ESPHome and ESP32-CAM
Arduino IDE and ESP32-CAM
Editing the Dashboard
Home Assistant and MQTT Device Interfacing
Summary
Chapter 7: Getting Started with Voice Assistant
What Is a Voice Assistant?
How Does a Voice Assistant Work?
Controlling the Raspberry Pi Using an Amazon Echo Speaker
Controlling a Smart Switchboard Using an Amazon Echo Speaker
Raspberry Pi Google Assistant and Alexa
AlexaPi Setup and Installation
Amazon Alexa and Home Assistant Integration
Creating Custom Assistants with Platypush
Troubleshooting the Audio
Voice Automation
Controlling the Assistant Programmatically
Installing Offline Voice Assistants
Setting Up and Installing the Almond Add-on
Jasper: A Custom Offline Voice Assistant
Choosing an STT and TTS Engine
Speech to Text Engines
Text to Speech Engines
Configuring Jasper
Using Jasper
Creating Jasper Modules
Controlling the ESP Module Using a Jasper MQTT Module
Summary
Chapter 8: Getting Started with OpenCV
Computer Vision
OpenCV
Installing OpenCV
OpenCV Basics
Opening and Displaying an Image
Capturing and Reading a Video File
Image Transformations
Color Spaces
Door Locking Using Face Recognition
Gathering Data
Training the Recognizer
Using Face Recognition
Using Gesture Recognition Sensors
Summary
Conclusion
Index

Advanced Home Automation Using Raspberry Pi: Building Custom Hardware, Voice Assistants, and Wireless Nodes [1 ed.]
 1484272730, 9781484272732

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
Recommend Papers