Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Building Smart Homes with Raspberry Pi Zero

You're reading from   Building Smart Homes with Raspberry Pi Zero Build revolutionary and incredibly useful home automation projects with the all-new Pi Zero

Arrow left icon
Product type Paperback
Published in Oct 2016
Publisher Packt
ISBN-13 9781786466952
Length 196 pages
Edition 1st Edition
Arrow right icon
Author (1):
Arrow left icon
Marco Schwartz Marco Schwartz
Author Profile Icon Marco Schwartz
Marco Schwartz
Arrow right icon
View More author details
Toc

Table of Contents (12) Chapters Close

Preface 1. Configuring Your Raspberry Pi Zero Board 2. Measure Data Using Your Raspberry Pi Zero Board FREE CHAPTER 3. Building a Smart Home Thermostat 4. Controlling Appliances fromthe Raspberry Pi Zero 5. Making a Smart Plug with the Raspberry Pi Zero 6. Sending Notifications using Raspberry Pi Zero 7. Use the Raspberry Pi Zero to Build a Security System 8. Monitor Your Home from the Cloud 9. Control Appliances from Anywhere 10. Building a Home Automation System with Raspberry Pi Zero Boards Index

Logging your energy consumption over time


For now, we built a smart plug that has more or less the same features as a commercial smart plug: it can control a device, measure the power consumption of this device, and also comes with a nice graphical interface. In this section, we are going to go further, and see how we can easily add functions to our project with some lines of code.

As an example, we are going to see how to log the measurements made by the board into a database on the Pi so that those measurements can be recalled later. As the code for this section is really similar to the previous section, I will only highlight the main changes here.

Start by importing the required module for the database:

var Datastore = require('nedb')
  db = new Datastore();

After that, we define a route to get all the data currently present inside the database:

app.get('/data', function (req, res) {

  db.find({}, function (err, docs) {

    res.json(docs);

  });

});

Inside the measurement loop, we create...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image