Openhab2 Nest binding - 2.2.0.SNAPSHOT An Updated 2.0 Binding that works!

Where is your thermostat mounted? What if it was in a different room? Your system would still work, right? This is the same concept, it allows you to “move” the position of the thermostat during the day.

Not every room gets exactly same amount of heat/AC. Sometimes rooms are hotter or colder than others. Think about a bedroom that has several windows and gets a lot of sun versus a well-insulated basement living room. During the summer, the bedroom should be warmer than the basement. But you’re not in the bedroom during the day, so why make your system work extra hard to cool the bedroom? Just have the system use the temperature in the basement instead to determine when it shuts off.

At any rate, remote temperature sensors are available on several major smart thermostats and it’s a proven concept. Take a look at the Ecobee binding as well. It would be great to have the same functionality for Nest, once it’s in their API. Ecobee remote temperature sensors in fact have motion sensors built-in to automatically prioritize rooms based on occupancy, but Nest sensors do not. OH integration would allow this though by using any linked motion sensor.

My nest is in my living room, which is just fine. I was just trying to point out that I don’t have smart valves which would make much more sense. If I move my thermostat around it would just give me a very hot living room.

This is what would help, but what I don’t have:

This product makes much more sense in large homes with multiple floors that are covered by a single thermostat.

I have two nest thermostats, one in the master bedroom and one in the living room. However, I have a basement theater room that is covered by the same thermostat as the living room and they vary by +/-5 degrees. I want the basement to be prioritized when we are down there and to be ignored when we are not. Who cares if the living room gets too hot or cold as a result, I want it to be comfortable where I am.

Additionally, I have placed remote sensors in the guest bedrooms so that I can make sure guests are comfortable rather than relying on the thermostat’s temperature reading in the master bedroom on the other side of the house.

You are right it all depends on how big your home is. Mine happens to be big. So temperature on/off is not going to cut it to make sure all rooms are at the right temperature. But thanks for bringing this product to our attention.

I’ve been doing something like this with temperature sensors around the house that feedback to turn the nest on or off depending on time of the day. It works pretty well.

Great job in the new binding btw, everything is working perfectly.

I know that a huge amount of time & effort has been expended on this binding. Very much appreciated!

I am a few weeks into deploying openHAB. I started my OH life under 2.2.0-1 Release Build so no baggage from old bindings to clean up.

When I created the Nest API project, I selected all devices and gave myself these permissions:

  • Thermostat read/write v6
  • Energy read v2
  • Away read/write v2
  • ETA read v1
  • ETA write v2
  • Structure read/write v1
  • Postal code read v2

My home only has one Nest thermostat (and two new remote temperature sensors - no Nest API support yet!)

I installed the Nest binding (2.2.0) and provided the requisite product ID, secret, and token. Through auto discovery, I have three Nest Things: Account, Home, Thermostat.

I created items based on the binding documentation. I understand that some items do not apply (e.g., I run in Heat-Cool so mine are the Min/Max setpoint targets, my temperature scale is F so the C items are not applicable, I only have a thermostat so Protect and Camera items are not applicable).

The issues I’m having:

  1. Not all documented channels are available
  2. For some channels, when I try to link the Thing’s channel to my defined Item (e.g., time to temp), my item does not show up in the selection list
  3. I’ve defined my items with the ‘F’ channels but the values being returned are the C temps

The community’s insights are much appreciated!

Mike

P.S. The absolute top, #1 with a vengeance, reason I took the leap to deploying my own automation hub was to automate Home/Away based on our travel location. Of course, I realize that I’m going to gain a great deal more possibilities, but the past six weeks have been expended researching and selecting openHAB as the solution of choice, getting MQTT, SSL, OwnTracks, & Nest all configured and operating successfully… in order to attempt to create my very first rule! So, please, please, please tell me I’m going to shortly be able to succeed.

@wborn

By default there is no support for Fahrenheit in the Nest Binding that comes with 2.2.0.

With 2.2.0 you can use Fahrenheit by adding the JAR from this comment to your /addons directory. Before adding it you should uninstall the existing binding from Paper UI .

The 2.3.0 Nest binding supports Fahrenheit and Celsius on the same channel using the new units of measurement feature of Eclipse SmartHome.

Some of these issues may be due to using the documentation of the OH1 Nest Binding or the 2.3.0-SNAPSHOT version (which shows by default). There’s a dropdown in the top right corner where you can pick the v2.2 documentation instead of latest version:

That’s also the #1 automation I’ve been using the binding for. :slight_smile:

@wborn Wouter,

When I retrieve the new JAR, do I leave the new JAR name as is or rename it to match the existing JAR?
Do I need to worry about the jar.sha1 file?

Do I need to configure something somewhere for these units of measure to be set in order for the Nest binding to make use of them? I do not recall seeing these parameters in any of the settings. Are these implied from the locale?

Mike

P.S.

Indeed, I am using the “latest” documentation. I was not aware of this selection early on in my setup travails… and in fact it was my struggles with setting up the Nest binding that turned me on tho the fact that this documentation version selections exists. Early, early in my openHAB deployment (a whole month ago!), I had Googled “openHAB Nest binding” and the link it returned happened to be the OH1 doc link. I did not know the difference and got really frustrated because I could not get the binding to work properly. I even blew away my entire instance and started over with a clean openHABian flashed image! Well, as soon as I found the “latest” doc, bingo, following those instructions got the Nest binding working in no time flat. So, now I realize that in some instances the “latest” is truly that, the latest as associated with a newer SNAPSHOT rather than the “Release”. One more bit of knowledge to tuck away :wink:

I decided to proceed with a test… I renamed the new JAR to match the original JAR… and temperatures are in F. Still missing some of the channels even using the 2.2 doc… but they are not of consequence to what I’m wnating to automate.

Thanks

That’s good news @meingraham! :slight_smile: The name of the JAR does not really matter.
What might help to get missing channels back is to remove and add the thermostat Thing again.

Sorry in advance, I am new to openhab and must be missing something simple and could really use the help. I have the latest openhabian version installed on a rasp pi and have been able to successfully install a version 1 binding for my garage door and also the phone network presence through the paper UI network binding. Both I can see well in the android app and the basic UI. I then moved on to the Nest binding, through paper UI I have loaded the binding and now have the channels linked and I can adjust my thermostat and see the channel’s values through the control panel in Paper UI, so it works. My issue is I am trying to get the Nest channels to work in the android app/basic UI.

To test my ability to do so, I tried to add just the humidifier value by adding it into my items file by the following:
Number:Dimensionless Therm_UP_Hum “Humidity [%.1f %unit%]” { channel=“nest:thermostat:703015b1:-mq40LgwUjWvXUweq-yQLyQOVHNvWqeU:humidity” }

Having copied the channel from the paper UI and named it Therm_UP_Hum because the thermostat is upstairs

Then my sitemap:
Text item=Therm_UP_Hum label=“Humidity”

Then in my android app and basic UI I lose the icons from my garage door and network presence and they stop working. I also see my thermostat humidity name but no icon and no value. Any help is greatly appreciate.

Welcome
First could you use the code fences when post code, please?

The loss of icons is perplexing but not breaking anything so we’ll tackle that later
If you define the label in your item definition, you don’t need a label parameter in the sitemap, it will override it.
So your sitemap can be:

Text item=Therm_UP_Hum

Simple as that. You should see the value now

The humidity reported by the nest channel is a whole number rounded to the nearest 5% so your item could be:

Number:Dimensionless Therm_UP_Hum “Humidity [%d %%]” { channel=“nest:thermostat:703015b1:-mq40LgwUjWvXUweq-yQLyQOVHNvWqeU:humidity” }

I appreciate your help, but I am still having troubles. When I delete the Nest humidity item and the sitemap humidity item, my icons and functionality return to my garage and presence. Just when I add that third thing to the sitemap, my icons disappear and the functionality of the other two stop working. The Nest humidity item does appear, but again the wrong icon and no value. I’ve combed through the tutorials about sitemap and items but can’t find my mistake.

My items file is small so I’ll post it:

//This is the Items File

//Garage Items File
Switch GarageDoorSwitch "Garage Door Open" <garagedoor> {myq="0"}
Contact GarageDoorContact "Garage Door [%s]" <garagedoor> {myq="0"}
String GarageDoorString "Garage Door [%s]" <garagedoor> {myq="0"}
Rollershutter GarageDoorShutter "Garage Door Open" <garagedoor> {myq="0"}
String GarageDoorCustomerName "Garage Door Name [%s]" <garagedoor> {myq="0#customerName"}
String GarageDoorDesc "Garage Door Desc [%s]" <garagedoor> {myq="0#desc"}
String GarageDoorOnline "Garage Door Online [%s]" <garagedoor> {myq="0#online"}
String GarageDoorDeviceId "Garage Door Device Id [%s]" <garagedoor> {myq="0#MyQDeviceId"}
String GarageDoorDeviceType "Garage Door DeviceType [%s]" <garagedoor> {myq="0#MyQDeviceTypeName"}
String GarageDoorSerialNumber "Garage Door SerialNumber [%s]" <garagedoor> {myq="0#SerialNumber"}

//Presence Items File
Switch Presence_Ian_Mobile "Ian's Mobile" <network> { channel="network:pingdevice:192_168_7_24:online" }
Switch Presence_Jessica_Mobile "Jessica's Mobile" <network> { channel="network:pingdevice:192_168_7_92:online" }

//Nest Items File
Number:Dimensionless Therm_UP_Hum “Humidity [%d %%]” { channel=“nest:thermostat:703015b1:-mq40LgwUjWvXUweq-yQLyQOVHNvWqeU:humidity” }

My sitemap file is:

sitemap home label="Kendrick Home"
{
       Frame label="Garage Door"
       {
        Text item=GarageDoorString label="Status"
        Switch item=GarageDoorShutter label="Open/Close"
        Text item=GarageDoorOnline label="Connected"
       }

        Frame label="Presence"
        {
        Text item=Presence_Ian_Mobile label="Ian's Phone"
        Text item=Presence_Jessica_Mobile label="Jessica's Phone"
        }

        Frame label="Nest"
        {
        Text item=Therm_UP_Hum
        }
}

Again, any direction or input is greatly appreciated.

Have you tried removing the :Dimensionless parameter?

I just tried but have the same result

Number Therm_UP_Hum “Humidity [%d %%]” { channel=“nest:thermostat:703015b1:-mq40LgwUjWvXUweq-yQLyQOVHNvWqeU:humidity” }

I finally have it working. I don’t know what exactly I did, but after uninstalling the binding, reinstalling and resetting my raspberry pi it just started working as it should. I appreciate all of your help. It seems like this is the one solution I have been looking for.
Out of curiosity, in regards to the state format in the items definition, the Nest binding example for humidity had [%.1f %unit%] but what ultimately worked was [%d %%] How would I know what to use? I read the state presentation tutorial but it really only had 4 examples.

The setpoint channel is not accepting value
I change the value (via UI or REST) and the value gets reverted back to original value
The other channels work. ambient temperature, humidity and state and read correctly
Only the channel I try to set doesn’t work anymore:

Item:

Number House_NestTargetTemperature           "Target Temperature [%.1f °C]"  <temperature> (Thermostats)                                                                                  { channel="nest:thermostat:bca14bfe:dCd2AOytHIiKRTYPM00jxva1Q3Ryl-jm:set_point", mqtt=">[mybroker:House/Nest/TargetTemperature:state:*:default]" }

DEBUG LOG:

==> /var/log/openhab2/openhab.log <==
2018-05-28 08:54:34.847 [DEBUG] [nternal.rest.NestStreamingRestClient] - Check: Receiving streaming events, millisSinceLastEvent=22132
2018-05-28 08:54:35.180 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received 'keep-alive' event, data: null
2018-05-28 08:54:35.183 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received message to keep connection alive
==> /var/log/openhab2/events.log <==
2018-05-28 08:54:52.038 [ome.event.ItemCommandEvent] - Item 'House_NestTargetTemperature' received command 20.0
2018-05-28 08:54:52.047 [vent.ItemStateChangedEvent] - House_NestTargetTemperature changed from 19.0 to 20.0
==> /var/log/openhab2/openhab.log <==
2018-05-28 08:55:04.852 [DEBUG] [nternal.rest.NestStreamingRestClient] - Check: Receiving streaming events, millisSinceLastEvent=29671
2018-05-28 08:55:05.180 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received 'keep-alive' event, data: null
2018-05-28 08:55:05.182 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received message to keep connection alive
2018-05-28 08:55:09.849 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received 'put' event, data: {"path":"/","data":{"devices":{"thermostats":{"dCd2AOytHIiKRTYPM00jxva1Q3Ryl-jm":{"humidity":60,"locale":"en-GB","temperature_scale":"C","is_using_emergency_heat":false,"has_fan":false,"software_version":"5.8-8","has_leaf":false,"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpaq0liBNnq9g","device_id":"dCd2AOytHIiKRTYPM00jxva1Q3Ryl-jm","name":"Living Room","can_heat":true,"can_cool":false,"target_temperature_c":19.0,"target_temperature_f":66,"target_temperature_high_c":24.0,"target_temperature_high_f":75,"target_temperature_low_c":20.0,"target_temperature_low_f":68,"ambient_temperature_c":24.0,"ambient_temperature_f":75,"away_temperature_high_c":24.0,"away_temperature_high_f":76,"away_temperature_low_c":9.0,"away_temperature_low_f":49,"eco_temperature_high_c":24.0,"eco_temperature_high_f":76,"eco_temperature_low_c":9.0,"eco_temperature_low_f":49,"is_locked":false,"locked_temp_min_c":20.0,"locked_temp_min_f":68,"locked_temp_max_c":22.0,"locked_temp_max_f":72,"sunlight_correction_active":false,"sunlight_correction_enabled":true,"structure_id":"NxiaUvbKLKt2NX6gsTigy_OsUdVfTl8bOKdE10NMPwDYX0z0xKzYdg","fan_timer_active":false,"fan_timer_timeout":"1970-01-01T00:00:00.000Z","fan_timer_duration":15,"previous_hvac_mode":"","hvac_mode":"heat","time_to_target":"~0","time_to_target_training":"ready","where_name":"Living Room","label":"","name_long":"Living Room Thermostat","is_online":true,"last_connection":"2018-05-28T07:55:09.776Z","hvac_state":"off"}}},"structures":{"NxiaUvbKLKt2NX6gsTigy_OsUdVfTl8bOKdE10NMPwDYX0z0xKzYdg":{"name":"Home","country_code":"GB","postal_code":"WD196LN","time_zone":"Europe/London","away":"home","thermostats":["dCd2AOytHIiKRTYPM00jxva1Q3Ryl-jm"],"structure_id":"NxiaUvbKLKt2NX6gsTigy_OsUdVfTl8bOKdE10NMPwDYX0z0xKzYdg","rhr_enrollment":false,"wheres":{"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqyyPytIpKObA":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqyyPytIpKObA","name":"Attic"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqF6OZ3U9y_Vw":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqF6OZ3U9y_Vw","name":"Back Door"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVp21yiZBwnv6A":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVp21yiZBwnv6A","name":"Backyard"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqE6ZjpgK-ouA":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqE6ZjpgK-ouA","name":"Basement"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrUOY8FmAr4Dw":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrUOY8FmAr4Dw","name":"Bathroom"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqYV04nrr1L4g":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqYV04nrr1L4g","name":"Bedroom"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrpQgbCZqug9A":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrpQgbCZqug9A","name":"Deck"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVoVWMzfPgKfVQ":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVoVWMzfPgKfVQ","name":"Den"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrKE9ovA1oW6w":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrKE9ovA1oW6w","name":"Dining Room"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrdek3gu8JzZA":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrdek3gu8JzZA","name":"Downstairs"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqau6IrRFEo7w":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqau6IrRFEo7w","name":"Driveway"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpGWzL16gJfPg":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpGWzL16gJfPg","name":"Entryway"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVo5ZswC_-mayw":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVo5ZswC_-mayw","name":"Family Room"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqUqdVFIhP-BA":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqUqdVFIhP-BA","name":"Front Door"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrfy95Lcc-x3Q":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrfy95Lcc-x3Q","name":"Front Yard"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpfweMsEZ9jLQ":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpfweMsEZ9jLQ","name":"Garage"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqcsskuSx1DUA":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqcsskuSx1DUA","name":"Guest House"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrnWJZN__EsYw":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrnWJZN__EsYw","name":"Guest Room"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrce28EAaYhnQ":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrce28EAaYhnQ","name":"Hallway"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpLk9BzS0Qj4w":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpLk9BzS0Qj4w","name":"Kids Room"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrNDKrCoY4QXg":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrNDKrCoY4QXg","name":"Kitchen"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpaq0liBNnq9g":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpaq0liBNnq9g","name":"Living Room"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVos7zv75BepEw":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVos7zv75BepEw","name":"Master Bedroom"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqEgVZ-vrB9Tw":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVqEgVZ-vrB9Tw","name":"Office"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpOB2RJfvgLLQ":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpOB2RJfvgLLQ","name":"Outside"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrZK3irkX9oIg":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVrZK3irkX9oIg","name":"Patio"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpIi1hRSNuTLA":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVpIi1hRSNuTLA","name":"Shed"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVr0y79WtZNPtg":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVr0y79WtZNPtg","name":"Side Door"},"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVq5DD5Gnhivgg":{"where_id":"0T8uhkAiAtsYrX8xnytAEQcYc--J0UNOtlzUavZJJVq5DD5Gnhivgg","name":"Upstairs"}}}},"metadata":{"access_token":"c.IFHNa7DOeNZFLxNbXn1g2vd5A3yWCAtjpwNk0keTauH6INme07Ci30Sy61UBrr0vuaIsCtp3fgKZlGX6PeaK5LXCIfsXDG4tgwjrgzmmCIgPaxnROg98KifcCGI0iQaGiwDbU9EbM7dKYPj4","client_version":2,"user_id":"z.1.1.sStdZQtWC0/Tm0qrj/HpjNpcsxje4UH8sBtPpVefsLM="}}}
2018-05-28 08:55:09.851 [DEBUG] [nternal.rest.NestStreamingRestClient] - Data has changed (or initial data sent)
2018-05-28 08:55:09.853 [DEBUG] [ernal.discovery.NestDiscoveryService] - thingDiscovered called for thermostat
2018-05-28 08:55:09.855 [DEBUG] [g.nest.handler.NestThermostatHandler] - Updating thermostat dCd2AOytHIiKRTYPM00jxva1Q3Ryl-jm
==> /var/log/openhab2/events.log <==
2018-05-28 08:55:09.875 [vent.ItemStateChangedEvent] - House_NestTargetTemperature changed from 20.0 to 19.0
==> /var/log/openhab2/openhab.log <==
2018-05-28 08:55:09.881 [DEBUG] [ernal.discovery.NestDiscoveryService] - thingDiscovered called for structure
2018-05-28 08:55:09.884 [DEBUG] [ng.nest.handler.NestStructureHandler] - Updating structure NxiaUvbKLKt2NX6gsTigy_OsUdVfTl8bOKdE10NMPwDYX0z0xKzYdg
2018-05-28 08:55:34.854 [DEBUG] [nternal.rest.NestStreamingRestClient] - Check: Receiving streaming events, millisSinceLastEvent=25005
2018-05-28 08:55:35.181 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received 'keep-alive' event, data: null
2018-05-28 08:55:35.182 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received message to keep connection alive
2018-05-28 08:56:04.855 [DEBUG] [nternal.rest.NestStreamingRestClient] - Check: Receiving streaming events, millisSinceLastEvent=29674
2018-05-28 08:56:05.181 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received 'keep-alive' event, data: null
2018-05-28 08:56:05.182 [DEBUG] [nternal.rest.NestStreamingRestClient] - Received message to keep connection alive

If you’re using openHAB 2.3.0 that is most likely because your item has no unit (Number and not a Number:Temperature, see items example).

Also make sure that the set_point channel in Paper UI has the Temperature unit:

Selection_022
If it’s showing “Number” you should delete and re-add your thermostat Thing to get the channels updated. That’s because ESH does not yet update Things when their ThingType definitions change (issue #2555).

Then you should be able to send commands (see ESH UoM blog post), e.g.

sendCommand(myTemperature, 20.0|°C)

I thought it was something like that
My item is a Number:Temperature item
I don’t have a rule setting this temperature because the nest actually does a pretty good job at doing it itself (Which incidentaly is the purpose of a “smart” thermostat) I need to overide it something from the UI for example when the wife is feeling cold.

Just to confirm, it works with a rule:

House_NestTargetTemperature.sendCommand(19.0|°C)

It also work from the Classic UI
My issue from HABpanel. That doesn’t work
At least we narrowed it down

I’ll open a new thread under habpanel