NestBinding error 172

Hi

I’ve recently setup a new ObenHAB server on a Raspberry Pi - all is working well apart from the binding for my Nest devices.

I’ve turned on logging and I can see the request is sent off, I then receive a reply that appears to be all the devices and data as I would expect to see it (names and values tie up with real world). However, after that I get a warning… I’m assuming that the binding is able to deal with something in the data that has been returned by the nest API.

Can anyone assist with how I would debug/resolve this?

For information… I’ve two separate Nest home/locations setup, one has two thermostats and the other has one thermostat and two smoke detectors, all devices have unique names. At the moment I’m just trying to setup a simple read of one thermostat however I’m not getting that far as the data doesn’t seem to be parsed correctly when returned from Nest.

openHAB version is 1.8.3 (latest main release)
The nest binding is 1.8.3 (latest version)
OS is Raspbian Jessie 4.4 (current version)

2016-09-11 21:16:44.786 TRACE o.o.b.n.i.m.AbstractRequest[:131]- About to execute 'https://developer-api.nest. …Blah Blah

2016-09-11 21:16:46.188 TRACE o.o.b.n.i.m.AbstractRequest[:172]- {“devices”:{“thermostats”:{"112 …Blah Blah

2016-09-11 21:16:46.259 WARN o.o.b.n.internal.NestBinding[:172]- Exception reading from Nest.
org.openhab.binding.nest.internal.NestException: Could not get data model.
at org.openhab.binding.nest.internal.messages.AbstractRequest.newException(AbstractRequest.java:91)
at org.openhab.binding.nest.internal.messages.DataModelRequest.execute(DataModelRequest.java:66)
at org.openhab.binding.nest.internal.NestBinding.readNest(NestBinding.java:189)
at org.openhab.binding.nest.internal.NestBinding.execute(NestBinding.java:168)
at org.openhab.core.binding.AbstractActiveBinding$BindingActiveService.execute(AbstractActiveBinding.java:156)
at org.openhab.core.service.AbstractActiveService$RefreshThread.run(AbstractActiveService.java:173)
Caused by: java.lang.NullPointerException: null
at org.openhab.binding.nest.internal.messages.Structure.sync(Structure.java:304)
at org.openhab.binding.nest.internal.messages.DataModel.sync(DataModel.java:478)
at org.openhab.binding.nest.internal.messages.DataModelRequest.execute(DataModelRequest.java:62)
at org.openhab.binding.nest.internal.NestBinding.readNest(NestBinding.java:189)
at org.openhab.binding.nest.internal.NestBinding.execute(NestBinding.java:168)
at org.openhab.core.binding.AbstractActiveBinding$BindingActiveService.execute(AbstractActiveBinding.java:156)

Any assistance appreciated.
Regards, David

Hi David,

I’ve opened the following issue with your report - please feel free to comment on the issue or here with any more information. I will have a look at the code and report back as soon as possible.

Thank you for your assistance, very much appreciated.

To summarise the fix… it was a permissions error… but with a twist.

I’d setup permissions some time ago however since then (a) the version of the API had been updated but the product I’d setup a while back was an “old version” (I think it was V2)… and (b) I’d added more products to my Nest environment.

To resolve I just needed to delete and re-create the product within the Nest Developer section… I guess I should have tried that first!

Thanks for your assistance and I’m loving OpenHAB!

Regards, David

1 Like