initial commit for zigbee2mqtt ansible deployment

This commit is contained in:
Dirk Alders 2023-10-08 10:02:40 +02:00
parent f132134c77
commit e972258e83
7 changed files with 226 additions and 0 deletions

3
.gitignore vendored
View File

@ -1,3 +1,6 @@
# Zigbee2MQTT repo rule
config/configuration.yaml
# ---> Linux
*~

47
bin/c2r.py Normal file
View File

@ -0,0 +1,47 @@
#!/bin/python3
#
import re
import sys
s = """homeassistant: false
permit_join: false
mqtt:
base_topic: zigbee/gfw
server: mqtt://mqtt
user: smarthome
password: Tc1IsZENNnSldRu8CGA6
serial:
port: /dev/ttyACM0
advanced:
ikea_ota_use_test_url: true
legacy_api: false
log_level: debug
channel: 15
homeassistant_legacy_entity_attributes: false
legacy_availability_payload: false
"""
try:
src_file = sys.argv[1]
dst_file = sys.argv[2]
except IndexError:
print(sys.argv[0], "<src> <dst>")
sys.exit(17)
try:
with open(src_file, 'r') as fh:
s = fh.read()
except (PermissionError, FileNotFoundError) as e:
print("Unable to open", '"' + src_file + '"')
sys.exit(18)
n = re.sub('^.*server: .*', ' server: <mqtt_smarthome_hostname>', s, flags=re.MULTILINE)
n = re.sub('^.*user: .*', ' user: <mqtt_smarthome_username>', n, flags=re.MULTILINE)
n = re.sub('^.*password: .*', ' password: <mqtt_smarthome_password>', n, flags=re.MULTILINE)
n = re.sub('^.*auth_token: .*', ' auth_token: <zigbee_auth_token>', n, flags=re.MULTILINE)
try:
with open(dst_file, 'w') as fh:
fh.write(n)
except PermissionError:
print("Unable to write", '"' + dst_file + '"')
sys.exit(19)

View File

@ -0,0 +1,46 @@
{
"metadata": {
"format": "zigpy/open-coordinator-backup",
"version": 1,
"source": "zigbee-herdsman@0.16.0",
"internal": {
"date": "2023-10-07T17:24:28.826Z",
"ezspVersion": 8
}
},
"stack_specific": {
"ezsp": {
"hashed_tclk": "3efc7b979ea73a945f94929a94c0b116"
}
},
"coordinator_ieee": "e0798dfffe718d5d",
"pan_id": "1a62",
"extended_pan_id": "dddddddddddddddd",
"nwk_update_id": 0,
"security_level": 5,
"channel": 15,
"channel_mask": [
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26
],
"network_key": {
"key": "0c9cdb83d43567de1ce0dc36a08f07e7",
"sequence_number": 0,
"frame_counter": 12830023
},
"devices": []
}

9
config/database.db Normal file
View File

@ -0,0 +1,9 @@
{"id":1,"type":"Coordinator","ieeeAddr":"0xe0798dfffe718d5d","nwkAddr":0,"manufId":0,"epList":[1,242],"endpoints":{"1":{"profId":260,"epId":1,"devId":48879,"inClusterList":[0,3,6,10,25,26,768],"outClusterList":[0,3,4,5,6,8,32,768,1024,1026,1029,1030,1280,2817,2819,2820,1794,4096,64513,64514],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}},"242":{"profId":41440,"epId":242,"devId":97,"inClusterList":[],"outClusterList":[33],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"interviewCompleted":true,"meta":{},"lastSeen":1690531391508,"defaultSendRequestWhen":"immediate"}
{"id":2,"type":"Router","ieeeAddr":"0x003c84fffe42092a","nwkAddr":34671,"manufId":4476,"manufName":"IKEA of Sweden","powerSource":"Mains (single phase)","modelId":"TRADFRI bulb E14 WS globe 470lm","epList":[1,242],"endpoints":{"1":{"profId":260,"epId":1,"devId":268,"inClusterList":[0,3,4,5,6,8,768,4096,64599],"outClusterList":[25],"clusters":{"genBasic":{"attributes":{"modelId":"TRADFRI bulb E14 WS globe 470lm","manufacturerName":"IKEA of Sweden","powerSource":1,"zclVersion":8,"appVersion":17,"stackVersion":106,"hwVersion":1,"dateCode":"20211201","swBuildId":"1.1.003"}},"lightingColorCtrl":{"attributes":{"colorCapabilities":16,"colorTempPhysicalMin":250,"colorTempPhysicalMax":454}}},"binds":[],"configuredReportings":[],"meta":{}},"242":{"profId":41440,"epId":242,"devId":97,"inClusterList":[33],"outClusterList":[33],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":17,"stackVersion":106,"hwVersion":1,"dateCode":"20211201","swBuildId":"1.1.003","zclVersion":8,"interviewCompleted":true,"meta":{"configured":88764544},"lastSeen":1696410662038,"defaultSendRequestWhen":"immediate"}
{"id":3,"type":"EndDevice","ieeeAddr":"0x000b57fffec5c877","nwkAddr":53251,"manufId":4476,"manufName":"IKEA of Sweden","powerSource":"Battery","modelId":"TRADFRI remote control","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":2080,"inClusterList":[0,1,3,32,4096,64636],"outClusterList":[3,4,5,6,8,25,4096],"clusters":{"genPollCtrl":{"attributes":{"checkinInterval":172800}},"genPowerCfg":{"attributes":{"batteryPercentageRemaining":60}}},"binds":[{"cluster":32,"type":"endpoint","deviceIeeeAddress":"0xe0798dfffe718d5d","endpointID":1},{"cluster":6,"type":"endpoint","deviceIeeeAddress":"0xe0798dfffe718d5d","endpointID":1},{"cluster":1,"type":"endpoint","deviceIeeeAddress":"0xe0798dfffe718d5d","endpointID":1}],"configuredReportings":[{"cluster":1,"attrId":33,"minRepIntval":3600,"maxRepIntval":62000,"repChange":0}],"meta":{}}},"appVersion":33,"stackVersion":98,"hwVersion":1,"dateCode":"20210727","swBuildId":"2.3.080","zclVersion":3,"interviewCompleted":true,"meta":{"configured":2040954255},"lastSeen":1696745953351,"defaultSendRequestWhen":"active","checkinInterval":43200}
{"id":4,"type":"EndDevice","ieeeAddr":"0x84ba20fffe82ed8c","nwkAddr":35866,"manufId":4098,"manufName":"_TZE200_hhrtiq0x","powerSource":"Battery","modelId":"TS0601","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":81,"inClusterList":[0,4,5,61184],"outClusterList":[25,10],"clusters":{"genBasic":{"attributes":{"65503":"B\n<>,\u0011<31>\n<>,\u0011","65506":31,"65508":0,"modelId":"TS0601","manufacturerName":"_TZE200_hhrtiq0x","powerSource":3,"zclVersion":3,"appVersion":85,"stackVersion":0,"hwVersion":1,"dateCode":""}}},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":85,"stackVersion":0,"hwVersion":1,"dateCode":"","zclVersion":3,"interviewCompleted":true,"meta":{},"lastSeen":1696745702404,"defaultSendRequestWhen":"immediate"}
{"id":5,"type":"Router","ieeeAddr":"0x000b57fffeb2332c","nwkAddr":8884,"manufId":4476,"manufName":"IKEA of Sweden","powerSource":"Mains (single phase)","modelId":"FLOALT panel WS 30x30","epList":[1],"endpoints":{"1":{"profId":49246,"epId":1,"devId":544,"inClusterList":[0,3,4,5,6,8,768,2821,4096],"outClusterList":[5,25,32,4096],"clusters":{"genBasic":{"attributes":{"modelId":"FLOALT panel WS 30x30","manufacturerName":"IKEA of Sweden","powerSource":1,"zclVersion":1,"appVersion":18,"stackVersion":87,"hwVersion":1,"dateCode":"20200107","swBuildId":"1.2.224"}},"lightingColorCtrl":{"attributes":{"colorCapabilities":16,"colorTempPhysicalMin":250,"colorTempPhysicalMax":454}}},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":18,"stackVersion":87,"hwVersion":1,"dateCode":"20200107","swBuildId":"1.2.224","zclVersion":1,"interviewCompleted":true,"meta":{"configured":88764544},"lastSeen":1696531443856,"defaultSendRequestWhen":"immediate"}
{"id":6,"type":"EndDevice","ieeeAddr":"0x84ba20fffe82ea89","nwkAddr":45098,"manufId":4098,"manufName":"_TZE200_hhrtiq0x","powerSource":"Battery","modelId":"TS0601","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":81,"inClusterList":[0,4,5,61184],"outClusterList":[25,10],"clusters":{"genBasic":{"attributes":{"65503":"w\n<>,\u0011<31>\n<>,\u0011","65506":31,"65508":0,"modelId":"TS0601","manufacturerName":"_TZE200_hhrtiq0x","powerSource":3,"zclVersion":3,"appVersion":85,"stackVersion":0,"hwVersion":1,"dateCode":""}}},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":85,"stackVersion":0,"hwVersion":1,"dateCode":"","zclVersion":3,"interviewCompleted":true,"meta":{},"lastSeen":1696746106229,"defaultSendRequestWhen":"immediate"}
{"id":7,"type":"EndDevice","ieeeAddr":"0xcc86ecfffea41814","nwkAddr":50175,"manufId":4619,"manufName":"_TZ1800_fcdjzz3s","powerSource":"Battery","modelId":"TY0202","epList":[1],"endpoints":{"1":{"profId":260,"epId":1,"devId":1026,"inClusterList":[0,1,3,1280,2821],"outClusterList":[25],"clusters":{"genBasic":{"attributes":{"modelId":"TY0202","manufacturerName":"_TZ1800_fcdjzz3s","powerSource":3,"zclVersion":1,"appVersion":67,"stackVersion":2,"hwVersion":1,"dateCode":"2021.1.5"}},"ssIasZone":{"attributes":{"iasCieAddr":"0xe0798dfffe718d5d","zoneState":1}},"genPowerCfg":{"attributes":{"batteryPercentageRemaining":190,"batteryVoltage":29}}},"binds":[{"cluster":1,"type":"endpoint","deviceIeeeAddress":"0xe0798dfffe718d5d","endpointID":1}],"configuredReportings":[{"cluster":1,"attrId":32,"minRepIntval":3600,"maxRepIntval":62000,"repChange":0},{"cluster":1,"attrId":33,"minRepIntval":3600,"maxRepIntval":62000,"repChange":0}],"meta":{}}},"appVersion":67,"stackVersion":2,"hwVersion":1,"dateCode":"2021.1.5","zclVersion":1,"interviewCompleted":true,"meta":{"configured":172811876},"lastSeen":1696744975177,"defaultSendRequestWhen":"immediate"}
{"id":8,"type":"Router","ieeeAddr":"0xb4e3f9fffe08e0e9","nwkAddr":24345,"manufId":4098,"manufName":"_TZ3210_p9ao60da","powerSource":"Mains (single phase)","modelId":"TS0505B","epList":[1,242],"endpoints":{"1":{"profId":260,"epId":1,"devId":269,"inClusterList":[0,3,4,5,6,4096,8,768,61184],"outClusterList":[25,10],"clusters":{"genBasic":{"attributes":{"modelId":"TS0505B","manufacturerName":"_TZ3210_p9ao60da","powerSource":1,"zclVersion":3,"appVersion":64,"stackVersion":0,"hwVersion":1,"dateCode":""}},"lightingColorCtrl":{"attributes":{"colorCapabilities":29}},"genOnOff":{"attributes":{"onOff":1}}},"binds":[],"configuredReportings":[],"meta":{}},"242":{"profId":41440,"epId":242,"devId":97,"inClusterList":[],"outClusterList":[33],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":64,"stackVersion":0,"hwVersion":1,"dateCode":"","zclVersion":3,"interviewCompleted":true,"meta":{"configured":1842547789},"lastSeen":1696702355547,"defaultSendRequestWhen":"immediate"}
{"id":9,"type":"Router","ieeeAddr":"0x540f57fffe9411c5","nwkAddr":11732,"manufId":4098,"manufName":"_TZ3210_p9ao60da","powerSource":"Mains (single phase)","modelId":"TS0505B","epList":[1,242],"endpoints":{"1":{"profId":260,"epId":1,"devId":269,"inClusterList":[0,3,4,5,6,4096,8,768,61184],"outClusterList":[25,10],"clusters":{"genBasic":{"attributes":{"modelId":"TS0505B","manufacturerName":"_TZ3210_p9ao60da","powerSource":1,"zclVersion":3,"appVersion":64,"stackVersion":0,"hwVersion":1,"dateCode":""}},"lightingColorCtrl":{"attributes":{"colorCapabilities":29}},"genOnOff":{"attributes":{"onOff":1}}},"binds":[],"configuredReportings":[],"meta":{}},"242":{"profId":41440,"epId":242,"devId":97,"inClusterList":[],"outClusterList":[33],"clusters":{},"binds":[],"configuredReportings":[],"meta":{}}},"appVersion":64,"stackVersion":0,"hwVersion":1,"dateCode":"","zclVersion":3,"interviewCompleted":true,"meta":{"configured":1842547789},"lastSeen":1696702355600,"defaultSendRequestWhen":"immediate"}

79
config/state.json Normal file
View File

@ -0,0 +1,79 @@
{
"0x003c84fffe42092a": {
"color_mode": "color_temp",
"update": {
"state": "idle"
},
"brightness": 178,
"state": "ON",
"color_temp": 413,
"linkquality": 248
},
"0x84ba20fffe82ed8c": {
"battery": 5,
"local_temperature": 25.1,
"linkquality": 216,
"window_detection": "ON",
"current_heating_setpoint": 25,
"preset": "manual",
"away_mode": "OFF",
"system_mode": "heat",
"valve_detection": "ON",
"child_lock": "UNLOCK"
},
"0x000b57fffeb2332c": {
"color_mode": "color_temp",
"update": {
"state": "idle",
"installed_version": 304235891,
"latest_version": 304235891
},
"linkquality": 240,
"brightness": 107,
"state": "ON",
"color_temp": 413
},
"0xcc86ecfffea41814": {
"battery": 95,
"voltage": 2900,
"occupancy": false,
"tamper": false,
"battery_low": false,
"linkquality": 156
},
"0x84ba20fffe82ea89": {
"battery": 5,
"linkquality": 168,
"local_temperature": 22.8,
"window_detection": "ON",
"current_heating_setpoint": 23,
"preset": "manual",
"away_mode": "OFF",
"system_mode": "heat",
"valve_detection": "ON",
"child_lock": "UNLOCK"
},
"0x540f57fffe9411c5": {
"brightness": 19,
"state": "ON",
"color_mode": "color_temp",
"color_temp": 413,
"linkquality": 116
},
"0xb4e3f9fffe08e0e9": {
"brightness": 19,
"state": "ON",
"color_mode": "color_temp",
"color_temp": 413,
"linkquality": 60
},
"0x000b57fffec5c877": {
"battery": 60,
"linkquality": 196,
"update": {
"state": "idle",
"installed_version": 587728433,
"latest_version": 587286065
}
}
}

0
config_example/.gitkeep Normal file
View File

View File

@ -0,0 +1,42 @@
homeassistant: false
permit_join: false
mqtt:
base_topic: zigbee/gfw
server: <mqtt_smarthome_hostname>
user: <mqtt_smarthome_username>
password: <mqtt_smarthome_password>
serial:
port: /dev/ttyACM0
advanced:
ikea_ota_use_test_url: true
legacy_api: false
log_level: debug
channel: 15
homeassistant_legacy_entity_attributes: false
legacy_availability_payload: false
frontend:
port: 8038
host: 0.0.0.0
auth_token: <zigbee_auth_token>
url: http://localhost
devices:
'0x84ba20fffe82ed8c':
friendly_name: dirk/heating_valve
'0xcc86ecfffea41814':
friendly_name: stairway/motion_sensor_gf
'0x60a423fffe07bc02':
friendly_name: marion/desk_light
'0x003c84fffe42092a':
friendly_name: dirk/desk_light
'0x84ba20fffe82ea89':
friendly_name: marion/heating_valve
'0xb4e3f9fffe08e0e9':
friendly_name: floor/main_light_1
'0x540f57fffe9411c5':
friendly_name: floor/main_light_2
'0xb4e3f9fffe7813eb':
friendly_name: sunroom/router
'0x000b57fffeb2332c':
friendly_name: dirk/main_light
'0x000b57fffec5c877':
friendly_name: dirk/input_device