FilipDem / Domoticz-NEST-plugin

NEST Plugin for Domoticz using the Google credentials.
13 stars 4 forks source link

Donation

It took me quite some effort to get the plugin available. Small contributions are welcome...

Use your Mobile Banking App and scan the QR Code

The QR codes comply the EPC069-12 European Standard for SEPA Credit Transfers (SCT). The amount of the donation can possibly be modified in your Mobile Banking App. 5 EUR 10 EUR

Use PayPal

Domoticz-NEST-plugin

Nest plugin for Domoticz using the Google account credentials.

This is a workaround solution for Nest thermostats and Nest Protect devices in Domoticz. It does not use any official API because of non-existance. Nest/Google announced them only to be available by end of 2020. Nest Thermostat E (UK/EU version) is not supported.

The plugin creates the following devices:

Installation (linux)

Follow this procedure to install the plugin.

Adding Nest to Domoticz

In the Setup - Hardware,

Configuration

For the plugin you need to enter two values in the Domoticz hardware plugin settings: issue_token and cookies. The values of issue_token and cookies are specific to your Google Account. To get them, follow these steps (only needs to be done once, as long as you stay logged into your Google Account):

Remark: after the procedure above, you can close the browser, however you cannot logoff/logout from your nest account! Otherwise the credentials will no longer be valid.

If you have problems, it is recommended to test with the nest.py plugin outside Domoticz. It is developed in python3 (substitute the proper values for xxx):

export NEST_ISSUE_TOKEN='xxx'
export NEST_COOKIE='xxx'
python3 nest.py

Possible connection problems

When there are connection problems due to wrong issue_toke and/or cookie, a Domoticz error will be generated on regular basis. However the error won't get away (and devices will not be updated) as long as the plugin is not restarted (use the update button in the Hardware tab).

Similar behavor happens when the generated Google access tokens (based on issue_token and cookie) are no longer valid. This could happen when you logged out the session that was used to recuperate the issue_token and cookie.

Typical errors that will be generated are:

Device creation

After the start of the plugin the devices will be automatically created for:

(*) This device is by default set as "not used". Go to the Setup - Devices to make the device visible.

The names of the devices are created automatically based on the location settings of your Nest devices with name_of_the_hardware - location type_of_switch. The weather device has a dedicated name based on the city (name_of_the_hardware - city type_of_switch). As the away status is independent of the devices (and is in fact a combination of all the devices), the name is automatically created as name_of_the_hardware - Away.

For each created device a remark is added to the description, like 'Do not remove: [Family Room Heating]'. The part in square brackets (inclusive) is needed to make this plugin work. It allows you changing the name of devices (but do not change the tag in the description).

Migration

Check the description of the "Away"-device by Switches - Edit.

If the description still contains the location, remove the location part. As an example, 'Do not remove: [Family Room Away]' should be modified to 'Do not remove: [Away]'.

Alternatively (if not done), a new "Away'-device will be created automatically (and you can remove the old one).

Success!

Don't forget a small gift by using the donation button...