Book Image

BeagleBone Home Automation Blueprints

By : Rodolfo Giometti
Book Image

BeagleBone Home Automation Blueprints

By: Rodolfo Giometti

Overview of this book

BeagleBone is a microboard PC that runs Linux. It can connect to the Internet and can run OSes such as Android and Ubuntu. BeagleBone is used for a variety of different purposes and projects, from simple projects such as building a thermostat to more advanced ones such as home security systems. Packed with real-world examples, this book will provide you with examples of how to connect several sensors and an actuator to the BeagleBone Black. You’ll learn how to give access to them, in order to realize simple-to-complex monitoring and controlling systems that will help you take control of the house. You will also find software examples of implementing web interfaces using the classical PHP/HTML pair with JavaScript, using complex APIs to interact with a Google Docs account, WhatsApp, or Facebook. This guide is an invaluable tutorial if you are planning to use a BeagleBone Black in a home automation project.
Table of Contents (18 chapters)
BeagleBone Home Automation Blueprints
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Setting up the software


Regarding the software, this time the major part is covered by the web interface, which is the real core of the project, and the acquisition and controlling process to get the aquarium data and managing the actuators. Then, a dedicated monitor script will be used to implement the communication between the web interface and the internal database.

Managing the system status and configuration

To manage the status of all devices and to do the data logging, we can use a database again to store all the relevant data, as we did in Chapter 1, Dangerous Gas Sensors. So, we can use the chapter_03/my_init.sh file in the book's example code repository to set up the database. The following snippet shows the relevant code where we define the tables used in the project:

# Select database
USE aquarium_mon;

#
# Create the system status table
#

CREATE TABLE status (
        n VARCHAR(64) NOT NULL,
        v VARCHAR(64) NOT NULL,
        PRIMARY KEY (n)
) ENGINE=MEMORY;

# Setup default...