You are previewing Building a Home Security System with Arduino.
O'Reilly logo
Building a Home Security System with Arduino

Book Description

Design, build and maintain a home security system with Arduino Uno

About This Book

  • Learn what a security system is, how it works and create one for yourself

  • Develop a security system by setting up security cameras and motion detector systems

  • Manage and analyze all the data collected by the sensors from the security system, using a graphical application

  • In Detail

    Arduino is an open source micro-controller built on a single circuit board that is capable of receiving sensory input from the environment and controlling interactive physical objects. It is also a development environment that allows the writing of software to the board, and is programmed in the Arduino programming language. It is used for a variety of different purposes and projects, from simple projects such as building a thermostat, to more advanced ones such as robotics, web servers, seismographs, home security systems and synthesizers.

    This book will demonstrate how the Arduino can be used to develop a highly connected home security system by mobilizing a network of sensors which can feed alerts back to an Arduino when alarms are triggered. You will know the current state of security systems, well supported by the designs that fit best for your environment. Also, we will see some current technologies such as NFC, Wi-Fi and Bluetooth, and will finally create a complete web interface that will allow us to remotely manage our system, and even send daily bulletins with the summary of activity.

    Towards the end, we'll develop a wireless home security system by setting up security cameras and motion detectors (door and gate trips, temperature sensors). We will then set up a centralized remote access hub (powered by the Arduino) that allows sensors to connect to the wireless home network that can be viewed and interacted by the user.

    What You Will Learn

  • Run cables and electricity to support home security infrastructure

  • Connect Arduino to your programming environment

  • Learn to interact with output devices – alarms, locks, shutters

  • Understand different parts of electronics circuit (MOSFET, resistor, capacitor)

  • Integrate home monitoring and security notifications with monitoring systems

  • Use logical level shifter with Arduino to send and receive data to and from Raspberry PI

  • Who This Book Is For

    This book is for novice programmers and hobbyists who want to understand how Arduino can be used to program a home security system as well as to those who want to delve deeper into the world of Arduino.

    Style and approach

    A step-by-step guide with numerous examples focusing on providing the practical skills required to build home security applications using Arduino.

    Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at If you purchased this book elsewhere, you can visit and register to have the files e-mailed directly to you.

    Table of Contents

    1. Building a Home Security System with Arduino
      1. Table of Contents
      2. Building a Home Security System with Arduino
      3. Credits
      4. About the Author
      5. About the Reviewers
        1. Support files, eBooks, discount offers, and more
          1. Why subscribe?
          2. Free access for Packt account holders
      7. Preface
        1. What this book covers
        2. What you need for this book
        3. Who this book is for
        4. Conventions
        5. Reader feedback
        6. Customer support
          1. Downloading the example code
          2. Errata
          3. Piracy
          4. Questions
      8. 1. Getting Started with a Home Security System
        1. What is home security infrastructure?
        2. How does it work?
          1. The hardware
          2. The software
        3. The prerequisites for installing a security system
        4. How to prepare your current home for a security system
        5. Wired and wireless security systems.
        6. Traditional systems versus the modern home security system
        7. Summary
      9. 2. Getting Started with Arduino and Arduino IDE
        1. Arduino boards
          1. Arduino MEGA
          2. Arduino NANO
          3. Arduino ETHERNET
          4. Intel GALILEO
          5. Arduino UNO
        2. Safety precautions
        3. Arduino IDE
          1. Installation
            1. Installing IDE on Microsoft Windows
            2. Installing IDE on Mac OS
            3. GNU-Linux (Debian-Ubuntu)
          2. Working with Arduino IDE
        4. Hello World
        5. Python and Arduino
          1. PySerial
          2. Arduino Code
          3. Python Code
        6. Summary
      10. 3. From Code to the Real World
        1. ProtoBoards and wiring
        2. Analog and digital ports
          1. Analog ports
          2. Digital ports
          3. Sensors
        3. Component datasheets
        4. Near Field Communication
        5. Access control
        6. Summary
      11. 4. Designing Your Own System
        1. Designing a project
          1. Getting ideas for design
          2. Creating a design
          3. Deploying the project
          4. Using the installation
            1. An example
          5. Why should I use debugging
        2. The basic principles of electricity
          1. Voltage
          2. Conductor resistance
          3. Current
          4. Ohm's law
          5. Joule's law
          6. Resistors and capacitors
          7. Theoretical analysis
          8. The digital multimeter
        3. Summary
      12. 5. Arduino and Sensors
        1. The code library
          1. Making your own library
          2. Third-party libraries
        2. Debugging the code
        3. More hardware
          1. The LCD
          2. The potentiometer
          3. Semiconductors
        4. A mini project
        5. Summary
      13. 6. Documentation and Version Control
        1. Code style and documentation
        2. Version control and Git
          1. Installing Git
          2. Creating a repository and sharing it with Git
            1. Sharing a copy of your code
            2. Git ignore
        3. Git clone
        4. The Graphical User Interface
          1. A mini project using the GUI
        5. Summary
      14. 7. Interaction and Connectivity
        1. The Raspberry Pi
          1. Setting up
        2. Camera and IP Camera
        3. OpenCV
          1. Installing the application and its dependencies
        4. Face detection
        5. C&C ‑ Command and control
        6. Summary
      15. Index