How to setup: Nest Bootstrap Control Panel

If you haven’t yet read the parent post for this how to, please do so first by following this link.

The instructions from the Nest Bootstrap Control Panel Git Hub repo are pretty good, but there are a few things I wanted to add.

First, you need the following before you can proceed:

  • php5-json
  • php5-mcrypt

And while the install guide doesn’t specify it, you will need mysql installed.

To get both of these type the following:

If you have trouble with mcrypt later on like I did (or if you’re using Ubuntu 14), you will want to type the following:

To install mysql, do the following:

Activate mysql with this command:

After you do the above, you an follow this guide to finish configuring mysql.

After you have the pre-requisites installed, you will want to clone the repo into your web directory. In my case, mine is located in /var/www

I also renamed my Bootstrap-Nest-Administration-Tool by typing:

Next, you will want to access mysql. To do this, type:

You should be prompted for a password. This is the root password you created for your mysql installation.

After you’re in, you should see something like the following:

If so, you will want to type:

After the above completes successfully, you will want to type quit to exit mysql and return to your shell.

From your shell, you will type:

The next step included calls for an edit to your vhosts file, but I didn’t do that since I’m not using a vhosts file in my environment. I went right into the next step:

Note: Make sure the copied file is copied into the includes directory, or you will experience an error later on. After the file is copied, you will edit it with the necessary information and configure your crontab by typing:

Finally, you can copy and paste the following, but be sure to update the paths to the location where you cloned this repo.

After the above is all done, the remainder of your configuration will be done by accessing the web GUI interface. If everything was setup correctly, you should see the following:

Go ahead and register a new user account. This can be whatever you want. The ultimate final step you will want to do is click on Settings at the top and enter your Nest.com login information, as well as your zip code. Click submit and run your cronjob by pasting the following (be sure to update the links to your environment) in to your shell:

Assuming everything completed successfully, you should see data under the graphs tab like this:

Reminder: All of my posts are provided "AS IS", imply no warranties, and confer no rights or special privileges. Use of included postings, code samples and other works are subject to the terms specified at Microsoft. For more information, click here.

Comments 5

  • I got to the step:

    mysql -unest_stats -p nest_stats < dbsetup.sq

    but when I enter it, I get the following error:

    -bash: dbsetup.sq: No such file or directory

    Any ideas?

  • Does this only start pulling data from when it was installed/run, or can it retrieve the past 10 days that Nest is reporting in it’s “history”?

    • Great question. Let’s talk this out. You’re creating a mysql database on a Linux machine to connect to your thermostat and capture data. As such, it doesn’t connect to Nest’s servers/databases, but to your thermostat’s account to read current data and log it in your database. With that in mind, it only captures data from the point that it was installed/configured, not from anything prior. I’m sure someone could add provisioning into the Github project for capturing the data from 10 days prior, but I don’t believe it’s been done yet. I hope this helps!

      • Thanks Jessica, I didn’t realize at the time it wasn’t connecting to Nest’s servers, but only my device. Everything’s working great right now. My only issue is that it doesn’t seem to apply my timezone, but that may be because of my PHP version.

        Thanks for your write up!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.