DeCONZ, ZHA and Zigbee components and compatible hardware

Yes. Sorry, was just reading along and with so much talk about ha guess I forgot where I was. Thanks.

Do you have a beginners section so I won’t ask noob questions and annoy everyone? I get the feeling I do that a lot here lol.

There is nothing wrong with seeking out help. We’ve all been in the same spot
I’d recommend searching a bit in the forums or create a new post

To add My IKEA-remote that usb-stick should I buy? I run my HA om a Raspberry pi 3.

If you want to use deCONZ, then you can buy the Conbee.

I have the Z-Wave Aeon Labs Z-Stick Gen5 in one of the USB-ports and the
ConBee in another.
How do I find the appropriate USB port for the ConBee USB-dongle, for the config.json file, ["/dev/ttyUSB0:/dev/ttyAMA0:rwm"]?

Running SSH and ‘hassio host hardware’ the result is:
“/dev/ttyUSB0”,
“/dev/ttyAMA0”,
“/dev/ttyACM0”

I am a little bit afraid to mess up some hardware if I just try all combination.

The first attempt:
13:57:27:284 COM: /dev/ttyACM0 :
13:57:27:286 auto connect com /dev/ttyAMA0
13:57:27:311 Serial com disconnected, reason: 4
13:57:28:081 COM: /dev/ttyAMA0 :
13:57:28:082 dev /dev/ttyAMA0
13:57:28:082 COM: /dev/ttyUSB0 :
13:57:28:082 COM: /dev/ttyACM0 :
13:57:28:277 COM: /dev/ttyAMA0 :
13:57:28:277 dev /dev/ttyAMA0
13:57:28:277 COM: /dev/ttyUSB0 :
13:57:28:277 COM: /dev/ttyACM0 :

Updating this as I go, for other n00bs.
Changed it to ["/dev/ttyUSB1:/dev/ttyAMA0:rwm"]…could not help myself…

And I think I am good to go. At least no “Serial com disconnected, reason: 4”

4:04:29:304 sql exec SELECT * FROM rules
14:04:29:304 sql exec SELECT * FROM schedules
14:04:29:304 sql exec SELECT * FROM sensors
14:04:29:305 sql exec SELECT * FROM gateways
14:04:29:305 don’t close database yet, keep open for 900 seconds
14:04:29:305 ~ResourceItem() attr/name – str 0xd3ce80

This resulting in Philips Hue popping up. Which I can’t get rid of, due to it has no hidden-attributes?

I’ve got the same two usb sticks and the default values works for me. ttyUSB0 and ttyAMA0 is the Conbee. ttyACM0 is the Aeon Labs Z-Stick.

Hey,

had the same issue once I plugged in an additional USB device. This messed up the device order after a reboot so that the conbee stick was not ttyUSB0 but ttyUSB1 all of a sudden.

I can recommend you to look into this post: https://www.raspberrypi.org/forums/viewtopic.php?t=90265

It describes how you can create a rule so that certain devices are recognized by their serial number and then given a dedicated name. Since then I had not trouble with device names anymore.

My ConBee is now ttyUSBconbee in addition to the randomly assigned ttyUSBx device name, my ZWave stick ttyACMzwave and my Pilight Nano ttyUSBpilight.

.Cheers
Jochen

1 Like

Thanks for sharing.

Will this work for Hassio/ResinOs?
-Have to ask before I mess up my SPI3.

1 Like

Can’t say since I don’t use Hassio.
Since these new names are only in addition to the old ones you should be fine as long as you have the ability to edit these udev rules. This could be a problem because afaik you don’t have access to the OS underneath of hassio, right?

Pushed a small PR to help out with renaming sensors of multi-sensor devices. You will now be able to use an entity ID to specify sensor when using the deconz-configuration service.

https://github.com/home-assistant/home-assistant/pull/11862

I have a RaspBee premium, but I do not understand how I can install it on ResinOS/Hassio and how I can use it with Home Assistant 0.61.1.
Thanks for your help

Follow this comment, there are also useful features in some of the comments above it.

thank you for support.
After a reboot (between step 5-6), it works!

2 Likes

I have associated a Tradfri motion sensor and using rest api i have:

http://ip:80/api/homeassistant/sensors/

{“1”:{“config”:{“alert”:“none”,“battery”:0,“duration”:5,“on”:true,“reachable”:false},“ep”:1,“etag”:“b34941c40d93ca348646a4f85cecac59”,“manufacturername”:“IKEA of Sweden”,“modelid”:“TRADFRI motion sensor”,“name”:"TRADFRI motion sensor ",“state”:{“lastupdated”:“1969-12-31T23:00:00”,“presence”:false},“swversion”:“1.2.214”,“type”:“ZHAPresence”,“uniqueid”:“00:0b:57:ff:fe:93:6a:86-01-1000”}}

but Presence tag is false always. I dont’ undertand why

Reachable is also false.

Might be the reason.

Also, read this: Hue motion sensor · Issue #355 · dresden-elektronik/deconz-rest-plugin · GitHub

Hey!

First of all, thanks for getting this module into hass, overall it seems to work very nice! I am running around 40 devices connect to a Raspbee. I also have homebridge hooked up (solely via homebridge-homeassistant).

However, I ran into a specific issue, in that I couldn’t set the color of a TRADFRI bulb E27 CWS opal 600lm (color bulb) through Homekit. Directly from hass worked fine however. So I did some digging and turns out homekit/homebridge is sending xy colors instead of rgb, and those are not implemented yet in lights/deconz.py.

So I took a stab at it:

--- a/homeassistant/components/light/deconz.py
+++ b/homeassistant/components/light/deconz.py
@@ -9,7 +9,7 @@ import asyncio
from homeassistant.components.deconz import DOMAIN as DECONZ_DATA
from homeassistant.components.light import (
    ATTR_BRIGHTNESS, ATTR_COLOR_TEMP, ATTR_EFFECT, ATTR_FLASH, ATTR_RGB_COLOR,
-    ATTR_TRANSITION, EFFECT_COLORLOOP, FLASH_LONG, FLASH_SHORT,
+    ATTR_TRANSITION, ATTR_XY_COLOR, EFFECT_COLORLOOP, FLASH_LONG, FLASH_SHORT,
    SUPPORT_BRIGHTNESS, SUPPORT_COLOR_TEMP, SUPPORT_EFFECT, SUPPORT_FLASH,
    SUPPORT_RGB_COLOR, SUPPORT_TRANSITION, SUPPORT_XY_COLOR, Light)
from homeassistant.core import callback
@@ -134,6 +134,9 @@ class DeconzLight(Light):
            data['xy'] = xyb[0], xyb[1]
            data['bri'] = xyb[2]

+        if ATTR_XY_COLOR in kwargs:
+            data['xy'] = kwargs[ATTR_XY_COLOR]
+
        if ATTR_BRIGHTNESS in kwargs:
            data['bri'] = kwargs[ATTR_BRIGHTNESS]

Seems to work for me so far, however I’m not limited by any knowledge of python nor zigbee lighting details :slight_smile:

Let me know if you want me to create a pull request for this so we can get it into the product.

Thanks!

1 Like

Excellent! Thanks for contributing. Yes, please do a PR.

Done: https://github.com/home-assistant/home-assistant/pull/12106

I did some more testing (setup a local HA dev env), and it seems to work as expected.

1 Like

Hi, thanks for developing the deconz component!

Unfortunatly i can’t get it to work…

Im running HA 0.62 in docker on a synology and deconz 2.04.99 on a separet RPi.

All my devices gets the value “unavailable”

When i make a request to “raspberryIP/api/api-key/sensors” i get a nice response:

{
"12": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_1",
    "state": {
        "lastupdated": "2018-02-01T09:57:16",
        "temperature": 2236
    },
    "type": "ZHATemperature",
    "uniqueid": "00:15:8d:00:01:b9:45:fb-01-0402"
},
"13": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_1",
    "state": {
        "humidity": 2880,
        "lastupdated": "2018-02-01T09:57:16"
    },
    "type": "ZHAHumidity",
    "uniqueid": "00:15:8d:00:01:b9:45:fb-01-0405"
},
"14": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_1",
    "state": {
        "lastupdated": "2018-02-01T09:57:16",
        "pressure": 984
    },
    "type": "ZHAPressure",
    "uniqueid": "00:15:8d:00:01:b9:45:fb-01-0403"
},
"15": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_2",
    "state": {
        "lastupdated": "2018-02-01T09:26:02",
        "temperature": 2243
    },
    "type": "ZHATemperature",
    "uniqueid": "00:15:8d:00:01:b9:46:39-01-0402"
},
"16": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_2",
    "state": {
        "humidity": 2864,
        "lastupdated": "2018-02-01T09:26:02"
    },
    "type": "ZHAHumidity",
    "uniqueid": "00:15:8d:00:01:b9:46:39-01-0405"
},
"17": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_2",
    "state": {
        "lastupdated": "2018-02-01T09:26:02",
        "pressure": 983
    },
    "type": "ZHAPressure",
    "uniqueid": "00:15:8d:00:01:b9:46:39-01-0403"
},
"18": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_3",
    "state": {
        "lastupdated": "2018-02-01T09:37:44",
        "temperature": 2266
    },
    "type": "ZHATemperature",
    "uniqueid": "00:15:8d:00:01:b9:46:27-01-0402"
},
"19": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_3",
    "state": {
        "humidity": 2815,
        "lastupdated": "2018-02-01T09:31:13"
    },
    "type": "ZHAHumidity",
    "uniqueid": "00:15:8d:00:01:b9:46:27-01-0405"
},
"20": {
    "config": {
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.weather",
    "name": "xiaomi_temp_3",
    "state": {
        "lastupdated": "2018-02-01T09:31:13",
        "pressure": 983
    },
    "type": "ZHAPressure",
    "uniqueid": "00:15:8d:00:01:b9:46:27-01-0403"
},
"21": {
    "config": {
        "on": true,
        "reachable": false,
        "tholddark": 12000,
        "tholdoffset": 7000
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.sensor_motion.aq2",
    "name": "xiaomi_motion_1",
    "state": {
        "dark": false,
        "daylight": false,
        "lastupdated": "2018-02-01T10:02:18",
        "lightlevel": 13223,
        "lux": 21
    },
    "type": "ZHALightLevel",
    "uniqueid": "00:15:8d:00:01:b1:d2:ce-01-0400"
},
"22": {
    "config": {
        "duration": 60,
        "on": true,
        "reachable": false
    },
    "ep": 1,
    "etag": "7310b05586a23287b8fc8179f6146851",
    "manufacturername": "LUMI",
    "modelid": "lumi.sensor_motion.aq2",
    "name": "xiaomi_motion_1",
    "state": {
        "lastupdated": "2018-02-01T10:02:18",
        "presence": true
    },
    "type": "ZHAPresence",
    "uniqueid": "00:15:8d:00:01:b1:d2:ce-01-0406"
    }
}

Dose anybody know how to move forward an find whats wrong with my setup?

Thanks in advance

//Tim

I get the following log entries regarding pydeconz:

2018-02-01 12:03:33 DEBUG (MainThread) [homeassistant.components.deconz] deCONZ config {'api_key': '375B79E38E', 'host': '192.168.1.203', 'port': 80}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.utils] Sending {} to http://192.168.1.203:80/api/375B79E38E
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.utils] HTTP request response: {'config': {'UTC': '2018-02-01T12:03:33', 'apiversion': '1.0.4', 'backup': {'errorcode': 0, 'status': 'idle'}, 'bridgeid': '0000000000000000', 'datastoreversion': '60', 'dhcp': True, 'factorynew': False, 'gateway': '192.168.1.1', 'internetservices': {'remoteaccess': 'disconnected'}, 'ipaddress': '192.168.1.203', 'linkbutton': False, 'localtime': '2018-02-01T13:03:33', 'mac': 'b8:27:eb:79:04:83', 'modelid': 'deCONZ', 'name': 'deCONZ-GW', 'netmask': '255.255.255.0', 'networkopenduration': 60, 'panid': 0, 'portalconnection': 'disconnected', 'portalservices': False, 'portalstate': {'communication': 'disconnected', 'incoming': False, 'outgoing': False, 'signedon': False}, 'proxyaddress': 'none', 'proxyport': 0, 'replacesbridgeid': None, 'starterkitid': '', 'swupdate': {'checkforupdate': False, 'devicetypes': {'bridge': False, 'lights': [], 'sensors': []}, 'notify': False, 'text': '', 'updatestate': 0, 'url': ''}, 'swupdate2': {'autoinstall': {'on': False, 'updatetime': ''}, 'bridge': {'lastinstall': '', 'state': 'allreadytoinstall'}, 'checkforupdate': False, 'install': False, 'lastchange': '', 'lastinstall': '', 'state': 'allreadytoinstall'}, 'swversion': '2.4.99', 'timeformat': '24h', 'timezone': 'Etc/GMT-1', 'uuid': '83ac250f-775f-4599-831f-e421c73d674d', 'websocketnotifyall': True, 'websocketport': 443, 'whitelist': {'018A4CA3D7': {'create date': '2018-02-01T04:00:53', 'last use date': '2018-02-01T04:00:55', 'name': 'Phoscon#B1680x949'}, '24E923A06D': {'create date': '2018-01-31T21:27:09', 'last use date': '2018-02-01T04:00:57', 'name': 'Phoscon#B1366x852'}, '375B79E38E': {'create date': '2018-01-31T19:12:03', 'last use date': '2018-02-01T12:03:33', 'name': 'pydeconz'}, '57867F89A9': {'create date': '2018-01-31T19:02:55', 'last use date': '2018-02-01T11:01:37', 'name': 'deCONZ WebApp'}, 'A90B8047A5': {'create date': '2018-01-31T15:37:29', 'last use date': '2018-02-01T03:57:36', 'name': 'deCONZ WebApp'}, 'B9DADE9334': {'create date': '2018-01-31T20:48:11', 'last use date': '2018-02-01T11:03:03', 'name': 'Phoscon#B1366x852'}}, 'zigbeechannel': 0}, 'groups': {}, 'lights': {}, 'rules': {}, 'schedules': {}, 'sensors': {'12': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_1', 'state': {'lastupdated': '2018-02-01T09:57:16', 'temperature': 2236}, 'type': 'ZHATemperature', 'uniqueid': '00:15:8d:00:01:b9:45:fb-01-0402'}, '13': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_1', 'state': {'humidity': 2880, 'lastupdated': '2018-02-01T09:57:16'}, 'type': 'ZHAHumidity', 'uniqueid': '00:15:8d:00:01:b9:45:fb-01-0405'}, '14': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_1', 'state': {'lastupdated': '2018-02-01T09:57:16', 'pressure': 984}, 'type': 'ZHAPressure', 'uniqueid': '00:15:8d:00:01:b9:45:fb-01-0403'}, '15': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_2', 'state': {'lastupdated': '2018-02-01T09:26:02', 'temperature': 2243}, 'type': 'ZHATemperature', 'uniqueid': '00:15:8d:00:01:b9:46:39-01-0402'}, '16': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_2', 'state': {'humidity': 2864, 'lastupdated': '2018-02-01T09:26:02'}, 'type': 'ZHAHumidity', 'uniqueid': '00:15:8d:00:01:b9:46:39-01-0405'}, '17': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_2', 'state': {'lastupdated': '2018-02-01T09:26:02', 'pressure': 983}, 'type': 'ZHAPressure', 'uniqueid': '00:15:8d:00:01:b9:46:39-01-0403'}, '18': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_3', 'state': {'lastupdated': '2018-02-01T09:37:44', 'temperature': 2266}, 'type': 'ZHATemperature', 'uniqueid': '00:15:8d:00:01:b9:46:27-01-0402'}, '19': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_3', 'state': {'humidity': 2815, 'lastupdated': '2018-02-01T09:31:13'}, 'type': 'ZHAHumidity', 'uniqueid': '00:15:8d:00:01:b9:46:27-01-0405'}, '20': {'config': {'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.weather', 'name': 'xiaomi_temp_3', 'state': {'lastupdated': '2018-02-01T09:31:13', 'pressure': 983}, 'type': 'ZHAPressure', 'uniqueid': '00:15:8d:00:01:b9:46:27-01-0403'}, '21': {'config': {'on': True, 'reachable': False, 'tholddark': 12000, 'tholdoffset': 7000}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.sensor_motion.aq2', 'name': 'xiaomi_motion_1', 'state': {'dark': False, 'daylight': False, 'lastupdated': '2018-02-01T10:02:18', 'lightlevel': 13223, 'lux': 21}, 'type': 'ZHALightLevel', 'uniqueid': '00:15:8d:00:01:b1:d2:ce-01-0400'}, '22': {'config': {'duration': 60, 'on': True, 'reachable': False}, 'ep': 1, 'etag': '7310b05586a23287b8fc8179f6146851', 'manufacturername': 'LUMI', 'modelid': 'lumi.sensor_motion.aq2', 'name': 'xiaomi_motion_1', 'state': {'lastupdated': '2018-02-01T10:02:18', 'presence': True}, 'type': 'ZHAPresence', 'uniqueid': '00:15:8d:00:01:b1:d2:ce-01-0406'}}}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.config] Deconz config loaded {'_apiversion': '1.0.4', '_ipaddress': '192.168.1.203', '_linkbutton': False, '_modelid': 'deCONZ', '_name': 'deCONZ-GW', '_networkopenduration': 60, '_panid': 0, '_swversion': '2.4.99', '_uuid': '83ac250f-775f-4599-831f-e421c73d674d', '_websocketport': 443, '_zigbeechannel': 0}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_1 created as {'_temperature': 2236, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_1', '_swversion': None, '_type': 'ZHATemperature', '_uniqueid': '00:15:8d:00:01:b9:45:fb-01-0402', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_1 created as {'_humidity': 2880, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_1', '_swversion': None, '_type': 'ZHAHumidity', '_uniqueid': '00:15:8d:00:01:b9:45:fb-01-0405', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_1 created as {'_pressure': 984, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_1', '_swversion': None, '_type': 'ZHAPressure', '_uniqueid': '00:15:8d:00:01:b9:45:fb-01-0403', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_2 created as {'_temperature': 2243, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_2', '_swversion': None, '_type': 'ZHATemperature', '_uniqueid': '00:15:8d:00:01:b9:46:39-01-0402', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_2 created as {'_humidity': 2864, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_2', '_swversion': None, '_type': 'ZHAHumidity', '_uniqueid': '00:15:8d:00:01:b9:46:39-01-0405', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_2 created as {'_pressure': 983, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_2', '_swversion': None, '_type': 'ZHAPressure', '_uniqueid': '00:15:8d:00:01:b9:46:39-01-0403', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_3 created as {'_temperature': 2266, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_3', '_swversion': None, '_type': 'ZHATemperature', '_uniqueid': '00:15:8d:00:01:b9:46:27-01-0402', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_3 created as {'_humidity': 2815, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_3', '_swversion': None, '_type': 'ZHAHumidity', '_uniqueid': '00:15:8d:00:01:b9:46:27-01-0405', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_temp_3 created as {'_pressure': 983, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.weather', '_name': 'xiaomi_temp_3', '_swversion': None, '_type': 'ZHAPressure', '_uniqueid': '00:15:8d:00:01:b9:46:27-01-0403', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_motion_1 created as {'_lightlevel': 13223, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.sensor_motion.aq2', '_name': 'xiaomi_motion_1', '_swversion': None, '_type': 'ZHALightLevel', '_uniqueid': '00:15:8d:00:01:b1:d2:ce-01-0400', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.deconzdevice] xiaomi_motion_1 created as {'_dark': None, '_presence': True, '_battery': None, '_ep': 1, '_on': True, '_reachable': False, '_sensor_class': None, '_sensor_icon': None, '_sensor_unit': None, '_etag': '7310b05586a23287b8fc8179f6146851', '_manufacturername': 'LUMI', '_modelid': 'lumi.sensor_motion.aq2', '_name': 'xiaomi_motion_1', '_swversion': None, '_type': 'ZHAPresence', '_uniqueid': '00:15:8d:00:01:b1:d2:ce-01-0406', '_async_callback': []}
2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.websocket] Websocket handshake: GET / HTTP/1.1
Host: 192.168.1.203:443
User-Agent: Python/3.5 websockets/3.4
Upgrade: Websocket
Connection: Upgrade
Sec-WebSocket-Key: QFq3gspETHE7IJfy8yAK0A==
Sec-WebSocket-Version: 13


2018-02-01 12:03:33 DEBUG (MainThread) [pydeconz.websocket] Websocket handshake: HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept: q+T4k+F88tjZGbSAOps6ihNs4vE=
Server: deconz
Access-Control-Allow-Credentials: false
Access-Control-Allow-Methods: GET
Access-Control-Allow-Headers: content-type
Access-Control-Allow-Origin: *
Date: Thu, 01 Feb 2018 12:03:33 GMT