I made a crappy Nest Thermostat integration that will work as a stopgap until alternatives come out

It works perfect, thanks you.

The “oficial version” does not show my camera.

Any way to get when anyone press the button on Hello Nest?

Same here. I had to reset the cookie from the oauth2/iframerpc call (only one). Mine started with NID=, but I’m sure it may vary for others.

I think I got this working now but I dont see anything showing up under the developer tools in home assistant.

My Nest thermostat worked as expected until this morning when de Badnest integration error appeared. Checked again the issue_token and cookie values and apparently my cookie had changed. Once replaced with the new cookie value it worked like a charm.

I’ve got no errors, but I’ve got no entities for my nest thermostat.

Conflig:

badnest:
  issue_token: "https://accounts.google.com/o/oauth2/iframerpc......"
  cookie: "OCAK=......."
  region: us
climate:
  - platform: badnest
    scan_interval: 10

Hi Mark

I had exactly the same issues. In the end I gave up.

My Nest Thermostat E with Google Account does not want to show up or make any entities.
Tried everything mentioned here.

I have now a working solution until Google/Nest gives us the API back again.

I am using HOOBS installed on the same Docker Instance where HA lives.
Within HOOBS I installed the Nest plugin with the same credentials.

Installed it this way in a shell on the host (Not in a Docker Container):
docker run -d -p 8080:8080 --name hoobs --restart always -v /var/run/docker.sock:/var/run/docker.sock -v hoobs_data:/data hoobs/hoobs

After a reboot of HA the HOOBS was seen and I filled in the Apple HomeKit ID and then HA created for me the needed entities. Btw it’s shows up as Homebridge xxxxx.

I can work with my Nest Thermostat E now. No more messing around with this Integration.
I also added in configuration.yaml file the discovery: one for good luck messures :slight_smile:.

BTW: I also installed it succesfully on my brother’s HA and he shows all his Nest Protects and Thermostat E. All European models.

3 Likes

Wow dude, this worked! I can use my Nest again, thank you for this. If anyone needs help with this, let me know, just set it up!

I cant get my thermostat to show up. I can get nest protect smoke alarms. Why is that. What im a doing wrong.

The protect status is ok because it did not detect anything.
Its a Google status thing.

So you are lucky no smoke in the house :slight_smile:

Not sure why I’m not getting notifications for this thread. :slightly_frowning_face:

Sadly, it turns out that this isn’t fully working for me. I get maybe an hour or so of it working and then the stream dies. :pensive:

Here’s some of the latest log shows:

2020-04-12 06:35:33 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
2020-04-12 06:35:33 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for badnest which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you experience issues with Home Assistant.
2020-04-12 06:35:48 WARNING (MainThread) [homeassistant.setup] Setup of badnest is taking over 10 seconds.
2020-04-12 06:35:50 WARNING (MainThread) [homeassistant.setup] Setup of default_config is taking over 10 seconds.
2020-04-12 07:45:25 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:49:02 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:52:08 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:52:39 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:53:10 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:53:41 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:54:12 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:54:43 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:55:14 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:55:45 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:56:16 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:56:47 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:57:18 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:57:49 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:58:20 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:58:51 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:59:22 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 07:59:53 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 08:00:24 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 08:00:55 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2020-04-12 08:01:26 ERROR (MainThread) [homeassistant.helpers.entity] Update for camera.front_door fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 279, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 476, in async_device_update
    await self.hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/badnest/camera.py", line 91, in update
    self._device.update_camera(self._uuid)
  File "/config/custom_components/badnest/api.py", line 187, in update_camera
    sensor_data = r.json()[0]
  File "/usr/local/lib/python3.7/site-packages/requests/models.py", line 890, in json
    self.content.decode(encoding), **kwargs
  File "/usr/local/lib/python3.7/site-packages/simplejson/__init__.py", line 525, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 370, in decode
    obj, end = self.raw_decode(s)
  File "/usr/local/lib/python3.7/site-packages/simplejson/decoder.py", line 400, in raw_decode
    return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

I’m going to uninstall, remove the HACS integration and try manually installing the updated custom component, to see if that sorts it. From the little I can guess at, I think it’s spamming Nest with requests so it’s then blocking HA pulling it.

Ive had badnest for about a week and its worked great, except I cant seem to get my nest doorbell camera to show up. Ive seen others with similar problems but I have not found a solution.

Has anyone figured out how to get the doorbell camera working in HA?
Sorry if there was a solution that I missed and thanks in advanced

Thanks for all your hard work on this!! I am able to see one thermostat but the second isn’t showing. Any suggestions?

Hey! Did you have to modify the config file to get the other thermostats to show?

I install the pull resquest version and it work with my Nest Hello:

I have 2 “Nest 3rd gen” and recently added “Nest Thermostat E” - I’ve been using the old Nest account with integration since last 2 years. But when I recently added the new Nest thermostat E - it shows up on the online Nest portal as well as Nest app (I have not yet moved to google account - don’t want to break existing integration!)
But my newly added Nest Thermostat E doesn’t show up on HASS hence i gave badnest custom component a try and have imported the token/userid and it works for the 2 Nest 3d gens but the Thermostat E still doesn’t show up on HASS.

I’m in the US - so the restriction for EU shouldn’t be an issue (I think)??

Is there anything else I could try - maybe move the Thermostat E to another account (that is tied to google v/s legacy Nest account?)
Anyone has had success with Thermostat E using the either Nest or google accounts and can provide some insight.

This is what is seen on the app -


(3 thermostats shown)

and on HASS (0.108 - latest running on Python 3.8 venv)


only two 3rd gen thermostats show up…

UPDATE - Even tried over the weekend to use a Google account login with Nest for the Nest Thermostat E and same result. Doesn’t seem to show up - so seems that Nest API (or the API badnest is using) don’t seem to work with Nest Therm E - no errors seen in logs, etc just that it’s absent…

I have been pulling my hair out trying to get my second thermostat to show in Hassio. Did you have to edit the config file to get your two to show or did they populate out of the box with no changes other than adding your token and cookie? I have two 3rd gen. One shows just fine and works great. The other, nothing. Any tips would be greatly appreciated!

1 Like

I am not using Hassio but HASS running on Raspibian under Python venv. But irrespective once i added badnest as a custom component from the git repo and config my tokens/userid as per the instruction and added climate block with platform badnest after reboot i was able to see the 2 Nest 3rd gen thermostats and all the params along with it (and also control them thru HASS). only problem is Nest therm E - so i am returning it and instead replacing it with another nest 3rd gen… hopefully it will work (as existing 2 are)…

not sure if there’s any other way to debug by sending rest commands thru a test script using the API via postman/curl or we could try it out and see what the Nest /google side is sending back and validate accordingly… @USA-RedDragon any way to exercise this API using curl/postman so we can try to debug and see why only some thermostats show up and not the rest of them…

Thanks for the reply! This is way over my head but I sincerely appreciate the help.

1 Like

Just wanted to say that I set up your integration and it worked straight away. Finally able to see my nest protects in HA. I have a nest developer account, and nest has been working fine for years, but never was able to get my protects working through nest api. Thanks for your work!

I’ve just had this issue now too. Copying in the new ‘Cookie’ fixes it.

Thanks for this help.

1 Like