1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
| substitutions:
name: pelletkachel
fullname: "Pelletkachel"
comment: Pelletkachel IR emulator
platform: ESP8266
board: nodemcuv2
<<: !include .common.yaml
switch:
- platform: restart
name: $fullname Reboot
- platform: template
name: ${fullname} reset
id: ${name}_reset
optimistic: true
on_turn_on:
switch.toggle: pelletkachel
- platform: template
id: ${name}
name: ${fullname}
optimistic: true
#restore_state: false
restore_mode: "DISABLED"
on_turn_on:
if:
condition:
switch.is_off: ${name}_reset
then:
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
repeat:
times: 30
wait_time: 50ms
code: [6700, -2450, 3400, -1650, 900, -800, 900, -1650, 1750, -800, 900, -1650, 900, -800, 900, -1650, 1750, -800, 1750, -1650, 1750]
else:
- delay: 1s
- switch.turn_off: ${name}_reset
on_turn_off:
if:
condition:
switch.is_off: ${name}_reset
then:
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
repeat:
times: 30
wait_time: 50ms
code: [6700, -2450, 3400, -1650, 900, -800, 900, -1650, 1750, -800, 900, -1650, 900, -800, 900, -1650, 1750, -800, 1750, -1650, 1750]
else:
- delay: 1s
- switch.turn_off: ${name}_reset
- platform: template
name: ${fullname} Program Plus 1
optimistic: true
turn_on_action:
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
repeat:
times: 2
wait_time: 500ms
code: [6750, -2450, 3400, -1650, 900, -800, 900, -1650, 4250, -800, 900, -800, 900, -1650, 3400, -800, 900, -850, 1750]
- platform: template
name: ${fullname} Program Min 1
optimistic: true
turn_on_action:
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
repeat:
times: 2
wait_time: 500ms
code: [6700, -2450, 3400, -1650, 900, -800, 900, -1650, 2550, -800, 900, -800, 900, -800, 900, -1650, 2550, -1650, 900, -800, 1750]
- platform: template
name: ${fullname} Temperature Plus
turn_on_action:
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
repeat:
times: 2
wait_time: 500ms
code: [6700, -2500, 3400, -1650, 900, -800, 900, -1650, 1750, -800, 1750, -800, 900, -800, 900, -1650, 1750, -800, 900, -800, 900, -800, 1750]
- platform: template
name: ${fullname} Temperature Min
turn_on_action:
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
repeat:
times: 2
wait_time: 500ms
code: [6700, -2500, 3350, -1700, 850, -850, 900, -1650, 3350, -1650, 900, -850, 850, -1650, 4200, -1700, 1700]
text_sensor:
- platform: template
name: ${fullname} uptime sensor
id: ${name}_uptime_human
icon: mdi:clock-start
sensor:
- platform: uptime
name: ${fullname} uptime seconds
id: ${name}_uptime_sensor
update_interval: 60s
on_raw_value:
then:
- text_sensor.template.publish:
id: ${name}_uptime_human
state: !lambda |-
int seconds = round(id(${name}_uptime_sensor).raw_state);
int days = seconds / (24 * 3600);
seconds = seconds % (24 * 3600);
int hours = seconds / 3600;
seconds = seconds % 3600;
int minutes = seconds / 60;
seconds = seconds % 60;
return (
(days ? String(days) + "d " : "") +
(hours ? String(hours) + "h " : "") +
(minutes ? String(minutes) + "m " : "") +
(String(seconds) + "s")
).c_str();
- platform: wifi_signal
name: ${fullname} WiFi Signal
update_interval: 60s
- platform: dallas
id: ${name}_rookkanaal
address: 0x310213139044AA28
name: ${fullname} rookkanaal
icon: "mdi:thermometer"
resolution: 12
accuracy_decimals: 2
filters:
- filter_out: nan
dallas:
- pin: 4
#update_interval: 10s
remote_transmitter:
pin: 14
carrier_duty_percent: 50% |