Skip to content

Commit 2afddb4

Browse files
authored
Merge pull request #64 from claudegel/TH1134ZB
Add support for TH1134ZB-HC
2 parents ca48ff7 + 52776ac commit 2afddb4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+751
-57
lines changed

README.md

Lines changed: 116 additions & 51 deletions
Large diffs are not rendered by default.
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
blueprint:
2+
name: Update second display to show outdoor temperature in farenheight.
3+
description: Send outdoor temperature to thermostat second display. You need a sensor from Openweathermap, environment canada or any good local temperature source. Temperature is updated each time the sensor is updated.
4+
domain: automation
5+
source_url: https://github.com/claudegel/sinope-zha/tree/master/automation/blueprints/send_oudoor_temperature.yaml
6+
input:
7+
weather_entity:
8+
name: Your City Weather source.
9+
description: Entity ID of the outdoor temperature sensor.
10+
selector:
11+
entity:
12+
domain: sensor
13+
climate_target:
14+
name: Thermostat_ieee
15+
description: Target thermostat entity. Can put more then one.
16+
selector:
17+
target:
18+
entity:
19+
domain: climate
20+
21+
# If outdoor temperature change we update the thermostat display.
22+
mode: single
23+
24+
triggers:
25+
- trigger: state
26+
entity_id: !input weather_entity
27+
28+
variables:
29+
thermostats:
30+
- !input climate_target
31+
32+
actions:
33+
- repeat:
34+
count: "{{thermostats|length}}"
35+
sequence:
36+
- action: zha.set_zigbee_cluster_attribute
37+
data:
38+
cluster_type: in
39+
ieee: "{{ thermostats[repeat.index-1] }}"
40+
endpoint_id: 1
41+
cluster_id: 0xff01
42+
attribute: 0x0010
43+
value: "{{ ((trigger.to_state.state - 32) * 5/9) | float * 100) | int }}"
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
blueprint:
2+
name: Update second display to show outdoor temperature.
3+
description: Send outdoor temperature to thermostat second display. You need a sensor from Openweathermap, environment canada or any good local temperature source. Temperature is updated each time the sensor is updated.
4+
domain: automation
5+
source_url: https://github.com/claudegel/sinope-zha/tree/master/automation/blueprints/send_oudoor_temperature.yaml
6+
input:
7+
weather_entity:
8+
name: Your City Weather source.
9+
description: Entity ID of the outdoor temperature sensor.
10+
selector:
11+
entity:
12+
domain: sensor
13+
climate_target:
14+
name: Thermostat_ieee
15+
description: Target thermostat entity. Can put more then one.
16+
selector:
17+
target:
18+
entity:
19+
domain: climate
20+
21+
# If outdoor temperature change we update the thermostat display.
22+
mode: single
23+
24+
triggers:
25+
- trigger: state
26+
entity_id: !input weather_entity
27+
28+
variables:
29+
thermostats:
30+
- !input climate_target
31+
32+
actions:
33+
- repeat:
34+
count: "{{thermostats|length}}"
35+
sequence:
36+
- action: zha.set_zigbee_cluster_attribute
37+
data:
38+
cluster_type: in
39+
ieee: "{{ thermostats[repeat.index-1] }}"
40+
endpoint_id: 1
41+
cluster_id: 0xff01
42+
attribute: 0x0010
43+
value: "{{ ( trigger.to_state.state|float * 100 ) |int }}"
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
blueprint:
2+
name: Send time to thermostats once a day.
3+
description: Send time to thermostat at 1:00 AM as a timestamp.
4+
domain: automation
5+
source_url: https://github.com/claudegel/sinope-zha/tree/master/automation/blueprints/send_time_to_thermostats.yaml
6+
input:
7+
climate_target:
8+
name: Thermostat_ieee
9+
description: Target thermostat entity. Can put more then one.
10+
selector:
11+
target:
12+
entity:
13+
domain: climate
14+
15+
# Once a day send time to thermostats to keep them accurate.
16+
mode: single
17+
18+
triggers:
19+
- trigger: time
20+
at: "01:00:00"
21+
22+
variables:
23+
thermostats:
24+
- !input climate_target
25+
26+
condition: []
27+
28+
action:
29+
- repeat:
30+
count: "{{thermostats|length}}"
31+
sequence:
32+
- action: zha.set_zigbee_cluster_attribute
33+
data:
34+
cluster_type: in
35+
ieee: "{{ thermostats[repeat.index-1] }}"
36+
endpoint_id: 1
37+
cluster_id: 0xff01
38+
attribute: 0x0020
39+
value: "{{ (as_timestamp(utcnow()) - as_timestamp('2000-01-01'))| int }}"
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
blueprint:
2+
name: Show Eco logo on thermostat display.
3+
description: Send code to thermostat to have the ECO logo blinking.
4+
domain: automation
5+
source_url: https://github.com/claudegel/sinope-zha/tree/master/automation/blueprints/show_dr_logo.yaml
6+
input:
7+
condition_target:
8+
name: The hydro_QC bynary sensor for upcomming peak period.
9+
description: Entity ID of the bynary_sensor from hydro_QC integration.
10+
selector:
11+
entity:
12+
domain: bynary_sensor
13+
climate_target:
14+
name: Thermostat_ieee
15+
description: Target thermostat entity. Can put more then one.
16+
selector:
17+
target:
18+
entity:
19+
domain: climate
20+
21+
# if peak period is active we show ECO logo on the thermostat screen.
22+
mode: single
23+
24+
triggers:
25+
- trigger: time
26+
at:
27+
- "05:00:00"
28+
- "15:00:00"
29+
30+
variables:
31+
thermostats:
32+
- !input climate_target
33+
34+
condition:
35+
condition: state
36+
entity_id: !input condition_target
37+
state: 'on'
38+
39+
actions:
40+
- repeat:
41+
count: "{{thermostats|length}}"
42+
sequence:
43+
- action: zha.set_zigbee_cluster_attribute
44+
data:
45+
cluster_type: in
46+
ieee: "{{ thermostats[repeat.index-1] }}"
47+
endpoint_id: 1
48+
cluster_id: 0xff01
49+
attribute: 0x0071
50+
value: 0
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
blueprint:
2+
name: Stop Eco logo on thermostat display.
3+
description: Send code to thermostat to remove the ECO logo blinking.
4+
domain: automation
5+
source_url: https://github.com/claudegel/sinope-zha/tree/master/automation/blueprints/stop_dr_logo.yaml
6+
input:
7+
climate_target:
8+
name: Thermostat_ieee
9+
description: Target thermostat entity. Can put more then one.
10+
selector:
11+
target:
12+
entity:
13+
domain: climate
14+
15+
# We remove the ECO logo from the thermostat screen after the peak period.
16+
mode: single
17+
18+
triggers:
19+
- trigger: time
20+
at:
21+
- "09:10:00"
22+
- "20:10:00"
23+
24+
variables:
25+
thermostats:
26+
- !input climate_target
27+
28+
actions:
29+
- repeat:
30+
count: "{{thermostats|length}}"
31+
sequence:
32+
- action: zha.set_zigbee_cluster_attribute
33+
data:
34+
cluster_type: in
35+
ieee: "{{ thermostats[repeat.index-1] }}"
36+
endpoint_id: 1
37+
cluster_id: 0xff01
38+
attribute: 0x0071
39+
value: -128
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
blueprint:
2+
name: thermostat icon update via Environement Canada weather conditions codes.
3+
description: Change thermostat icon when weather condition code changes. Your Environment Canada icon code source should be set to your_city_icon_code.
4+
domain: automation
5+
source_url: https://github.com/claudegel/sinope-zha/tree/master/automation/blueprints/update_icon_env_canada.yaml
6+
input:
7+
weather_entity:
8+
name: Your City Weather Icon Code source
9+
description: Entity ID of the weather icon code sensor
10+
selector:
11+
entity:
12+
domain: sensor
13+
climate_target:
14+
name: Thermostat_ieee
15+
description: Target thermostat entity
16+
selector:
17+
target:
18+
entity:
19+
domain: climate
20+
21+
# If weather code change we update the thermostat,
22+
mode: single
23+
24+
triggers:
25+
- trigger: state
26+
entity_id: !input weather_entity
27+
28+
variables:
29+
weather_change:
30+
"00": Sun
31+
"01": Sun2
32+
"02": Cloudsun
33+
"03": Cloudsun2
34+
"06": Cloudrainsun
35+
"07": Cloudlightning2
36+
"08": Cloudsnow2
37+
"10": Cloud2
38+
"11": Cloudrain2
39+
"12": Cloudrain3
40+
"13": Cloudrain
41+
"14": Cloudsnow
42+
"15": Cloudsnow
43+
"16": Cloudsnow4
44+
"17": Cloudsnow3
45+
"18": Cloudsnow3
46+
"19": Cloudlightning
47+
"23": Cloudfog
48+
"24": Cloudfog
49+
"25": Cloudsnow5
50+
"26": Cloudsnow3
51+
"27": Cloud
52+
"28": Cloud3
53+
"30": Moonstar
54+
"31": Cloudmoon
55+
"32": Cloudmoon2
56+
"33": Cloudmoon3
57+
"36": Cloudrainmoon
58+
"37": Cloudrainmoon3
59+
"38": Cloudsnow6
60+
"39": Cloudrainmoon2
61+
"40": Cloudsnow5
62+
"41": Cloudfog
63+
"42": Cloudfog
64+
"44": Cloudfog
65+
"45": Cloudfog
66+
"46": Cloudlightning
67+
"47": Cloudlightning
68+
"48": Cloudrain
69+
70+
thermostats:
71+
- !input climate_target
72+
73+
actions:
74+
- repeat:
75+
count: "{{thermostats|length}}"
76+
sequence:
77+
- action: zha.set_zigbee_cluster_attribute
78+
data:
79+
cluster_type: in
80+
ieee: "{{ thermostats[repeat.index-1] }}"
81+
endpoint_id: 1
82+
cluster_id: 0xff01
83+
attribute: 0x0013
84+
value: "{{ weather_change.get(states(!input weather_entity), 'Hide') }}"
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
blueprint:
2+
name: thermostat icon update via Openweathermap weather conditions codes, day time period.
3+
description: Change thermostat icon when weather condition code changes. Your Openweathermap icon code source should be set correctly for your location. You need one automation for day time and one for night time. You also need to install integration sun.
4+
domain: automation
5+
source_url: https://github.com/claudegel/sinope-zha/tree/master/automation/blueprints/update_icon_openweathermap_day.yaml
6+
input:
7+
weather_entity:
8+
name: Your City Weather Icon Code source
9+
description: Entity ID of the weather icon code sensor
10+
selector:
11+
entity:
12+
domain: sensor
13+
condition_entity:
14+
name: sun
15+
selector:
16+
entity: sun
17+
domain: sun
18+
climate_target:
19+
name: Thermostat_ieee
20+
description: Target thermostat entity
21+
selector:
22+
target:
23+
entity:
24+
domain: climate
25+
26+
# If weather code change we update the thermostat,
27+
mode: single
28+
29+
triggers:
30+
- trigger: state
31+
entity_id: !input weather_entity
32+
- trigger: sun
33+
event: sunrise
34+
offset: "00:30:00"
35+
36+
variables:
37+
weather_change:
38+
"200": Cloudrainsun2
39+
"201": Cloudlightning
40+
"202": Cloudlightning
41+
"211": Cloudrainsun2
42+
"212": Cloudrainsun2
43+
"300": Cloud3
44+
"301": Cloud3
45+
"311": Cloud3
46+
"500": Cloudrainsun
47+
"501": Cloudrainsun3
48+
"502": Cloudrainsun4
49+
"504": Cloudrain3
50+
"511": Cloudlightning2
51+
"520": Cloudrain
52+
"521": Cloudrain2
53+
"522": Cloudrain3
54+
"600": Cloudsnow2
55+
"601": Cloudsnow4
56+
"602": Cloudsnow3
57+
"613": Cloud
58+
"615": Cloud
59+
"616": Cloud
60+
"621": Cloudsnow3
61+
"622": Cloudsnow5
62+
"701": Cloudfog
63+
"711": Cloudfog
64+
"721": Cloudfog
65+
"731": Cloudfog
66+
"741": Cloudfog
67+
"751": Cloudfog
68+
"761": Cloudfog
69+
"800": Sun
70+
"801": Sun2
71+
"802": Cloudsun
72+
"803": Cloudsun2
73+
"804": Cloud2
74+
75+
thermostats:
76+
- !input climate_target
77+
78+
conditions:
79+
- condition: state
80+
entity_id: !input condition_entity
81+
state: "above_horizon"
82+
83+
actions:
84+
- repeat:
85+
count: "{{thermostats|length}}"
86+
sequence:
87+
- action: zha.set_zigbee_cluster_attribute
88+
data:
89+
cluster_type: in
90+
ieee: "{{ thermostats[repeat.index-1] }}"
91+
endpoint_id: 1
92+
cluster_id: 0xff01
93+
attribute: 0x0013
94+
value: "{{ weather_change.get(states(!input weather_entity), 'Hide') }}"

0 commit comments

Comments
 (0)