Skip to content

bastienboutonnet/py-nest-thermostat

Repository files navigation

Version: v0.0.8

py-nest-thermostat

Python CLI Nest Controller and Reporting Tool.

Build it with me on Twitch: https://www.twitch.tv/datafrittata

Disclaimer: This project is very much work in progress while in version 0 anything can change, anything can break and some parts of the code are probably very ugly. Feel free to test it, contribute (see CONTRIBUTING.md), report bugs

Get device stats:

py nest stats

Set Device Temperature:

py nest set temp

Features:

  • print device stats
  • set target temperature

Future Features:

  • capture device statistics into a database
  • plot device statistics over time
  • some ML?

Installation

The tool is intallable from PyPI via pip or pipx. But you must first set up access via Google's Developer console (which currently costs a one time $5 fee and is a bit of a pain).

Set Up Google and Authorization

This part of the process is a real pain, especially if you've never set up Authorization via Google. Luckily Wouter Nieuwerth made a really nice guide with pictures that I encourage you to check out

Google Documentation Links

Google has some pretty extensive documentation:

Once setup, you will be able to access your nest devicesc, and manage your authorizations in the following places:

If you have issues, and neither the step by step guide from Wouter nor the links above help you feel free to open an issue and if I have time I'll try and help out.

Install py-nest-thermostat

If you want to be able to access the tool from anywhere I recomment setting it up via pipx. Pipx will give you access to py-nest globally while keeping it in an isolated python virtual environment. The best of both worlds really!

You can install with pipx like so:

pipx install py-nest-thermostat

Create your credentials file

nest expects your credentials and other handy authentication parameters to be in an file named config.yaml and it should be placed at this location ~/.py-nest-thermostat/. We might implement the possibility to pass a custom location later. If you're too impatient feel free to help out! :)

You can find an example of this file here

If you prefer to use regular pip, follow those steps:

  1. create a python3 virtual environment (with venv or virtualenv --up to you)
  2. activate the virtual environment (source /path/to/virtual/environment)
  3. pip install py-nest-thermostat

Usage

Until I write some more extensive docs, once you have installed the tool use use the CLI --help command

nest --help

About

Python CLI Nest Controller and Reporting Tool.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages