Free E-Book – Raspberry Pi Home Automation with Arduino

Book Description

The world of home automation is an exciting ield that has exploded over the past few years with many new technologies in both the commercial and open source worlds. This book provides a gateway for those interested in learning more about  the topic and building their own projects.
With the introduction of the Raspberry Pi computer in 2012, a small and powerful tool is now available to the home automation enthusiast, programmer, and electronic hobbyist that allows them to augment their home with sensors and software.
Combining the Raspberry Pi with the power of the open source Arduino platform, this book will walk you through several projects for building electronic sensors and introduce you to software that will record this data for later use.

What this book covers

Chapter 1, An Introduction to the Raspberry Pi, Arduino, and Home Automation, introduces  you to the technologies used in this book and provides a background to the world  of home automation.
Chapter 2,
Getting Started Part 1 – Setting up Your Raspberry Pi, teaches you about the Raspberry Pi and how to set it up, ready to use on your projects.
Chapter 3,
Getting Started Part 2 – Setting up Your Raspberry Pi to Arduino Bridge Shield, provides you with a guide to setting up your Raspberry Pi to Arduino bridge  shield and downloading the necessary libraries.
Chapter 4, Our First Project – A Basic Thermometer, helps you to build a thermometer  and introduces you to a variety of electronic components.
Chapter 5,
From Thermometer to Thermostat – Building upon Our First Project, expands upon our Thermometer project, turning it into a working thermostat that can switch relays on and off.
Chapter 6, Temperature Storage – Setting up a Database to Store Your Results, explores storing data output from your Thermostat, and then accessing it via a web browser.
Chapter 7, Curtain Automation – Open and Close the Curtains Based on the Ambient Light, teaches you how to integrate motors into your projects for opening and closing blinds and curtains, using the skills learned in previous chapters.
Chapter 8, Wrapping up, provides an overview of other technologies you can use in your project and a look towards the future of home automation.
Appendix, References, lists a collection of links pointing you towards the resources used in this book and other interesting information.

Raspberry Pi Home Automation with Arduino

About the Author

Andrew K. Dennis is an R&D software developer at Prometheus Research. Prometheus Research is a leading provider of integrated data management for research and is the home of HTSQL, an open source navigational query language  for RDMS.
Andrew has a Diploma in Computing, a BS in Software Engineering, and is currently studying for a second BS in Creative Computing in his spare time.
He has over 10 years experience working in the software industry in the UK, Canada, and the USA. This experience includes e-learning courseware development, custom  CMS and LMS development, SCORM consultancy, web development in a variety  of languages, open source application development, blogging about the integration of web technologies with electronics for home automation, and punching lots of  Cat5 cables.
His interests include web development, e-learning, 3D printing, Linux, the  Raspberry Pi and Arduino, open source projects, home automation and the use  of web technology in this sphere, amateur electronics, home networking, and software engineering.

Download Link for Free E-Book:

pdf download icon



Raspberry Pi Home Automation with Arduino Free E-book

Table of Contents

Chapter 1: An Introduction to the Raspberry Pi, Arduino,  and Home Automation 

What we will explore in this book

History and background of the Raspberry Pi

Raspberry Pi hardware speciications


3.5mm analog audio jack

Composite RCA port

Two USB 2.0 ports plus one micro USB

HDMI port

SD card port

256 MB/512 MB SDRAM shared with GPU



Ethernet port

GPIO pins

History and background of Arduino 

Raspberry Pi to Arduino shield connection bridge

Shield speciications

XBee socket

Power source selector

UART 14 Digital GPIO pins

Serial Peripheral Interface (SPI) pins

In Circuit Serial Programmer (ICSP) connector

Power pins

Analog inputs

Raspberry Pi GPIO connector

Writing software for the Arduino

What home automation is

A history of home automation

X10 – a standard is born

The boom and open source – a new set of technologies

Commercial products

Arrival of the Raspberry Pi


[divide style=”3″]

Chapter 2: Getting Started Part 1 – Setting up Your Raspberry Pi

The SD card – our Raspberry Pi's storage device

Pre-installed SD card versus a blank one

Setting up the SD card

Formatting our card

Formatting instructions for Windows 7

Formatting instructions for Mac OS X

Formatting instructions for Linux

BerryBoot – our tool for installing an operating system

Downloading the BerryBoot zip




Hooking up the Raspberry Pi

Downloading the right operating system

Installing Raspbian

Installation complete

Windows users

Mac and Linux users


[divide style=”3″]

Chapter 3: Getting Started Part 2 – Setting up Your  Raspberry Pi to Arduino Bridge Shield 

Raspberry Pi to Arduino bridge shield

Checking which version of the Raspberry Pi we have

Setting up the Raspberry Pi to Arduino shield and LED

Installing the software

The Arduino IDE

A quick look at the language

arduPi – a library for our Raspberry Pi and Arduino shield

Installing arduPi

Leafpad – a text editor

Blinking LED application

A guide to the code

Compiling and running our application


[divide style=”3″]

Chapter 4: Our First Project – A Basic Thermometer 

Building a thermometer

Setting up our hardware

An introduction to resistors


10K Ohm resistor



Connecting our components

Software for our thermometer

Geany IDE

Installing the IDE

An introduction to Makeiles

Thermometer code

Writing our application

Compiling and testing

What if it doesn't work

Up and running


[divide style=”3″]

Chapter 5: From Thermometer to Thermostat – Building upon  Our First Project

Safety first

Introducing the thermostat

Setting up our hardware


Connecting the relay

Setting up our software

A program to test the relay

Installing screen


Thermostat code

Testing our thermostat and fan

Attaching the fan

Starting your thermostat application

Debugging problems


[divide style=”3″]

Chapter 6: Temperature Storage – Setting up a Database to  Store Your Results


Installing SQLite Version 3.x

Creating a database

A table to record our temperature

A table to record our rooms

Writing some SQL

Apache web server

Setting up a basic web server


Setting up WSGI

Creating a Python application to write to our database



Download HTSQL

Coniguring HTSQL

Testing our Arduino shield with our database


[divide style=”3″]

Chapter 7: Curtain Automation – Open and Close the  Curtains Based on the Ambient Light


Motor shield and motors

Setting up the photoresistor

Wiring up the components

Testing the photoresistor with software


Setting up the motor shield

Wiring up the components

Curtain control application

Pulse Width Modulation


Writing our code

Debugging problems

Connecting to your blinds/curtains

Setting the timing

Attaching the hardware

Debugging problems


[divide style=”3″]

Chapter 8: Wrapping up

A brief review of what we have learned

Next steps

Prototyping Pi Plate

The wiringPi library

The Gertboard

Introduction to the Gertboard components

GPIO PCB expansion board


Motor controller

Open collector driver

Buffered I/O

Atmel ATmeg chip microcontroller

Convertors – analog to digital and digital to analog

Writing software for the Gertboard

Ideas for next step projects

Expanding the curtain automation tool to include temperature sensing

Changing the motor on the curtain automation project to a  stepper motor

Switching lights on with a photoresistor

Holiday lights from LEDs

The future of home automation

3D printing

RFID chips

EEG headsets


[divide style=”3″]

Appendix: References

Raspberry Pi

Raspberry Pi to Arduino bridge shield









Packt Publishing titles

Home automation technology
3D printing

EEG headsets

Miscellaneous resources


About The Author

Ibrar Ayyub

I am an experienced technical writer with a Master's degree in computer science from BZU Multan University. I have written for various industries, mainly home automation, and engineering. I have a clear and simple writing style and am skilled in using infographics and diagrams. I am a great researcher and is able to present information in a well-organized and logical manner.

Follow Us:
Scroll to Top