-
Notifications
You must be signed in to change notification settings - Fork 210
Expand file tree
/
Copy pathESP32-NodeMcu-32s_CC1101.yaml
More file actions
217 lines (178 loc) · 4.56 KB
/
Copy pathESP32-NodeMcu-32s_CC1101.yaml
File metadata and controls
217 lines (178 loc) · 4.56 KB
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
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
substitutions:
name: "wmbus-reader"
friendlyname: "wmbus reader"
id: "wmbus-reader"
esphome:
name: ${name}
friendly_name: ${friendlyname}
name_add_mac_suffix: false
esp32:
board: nodemcu-32s
framework:
type: esp-idf
external_components:
- source: github://SzczepanLeon/esphome-components@main
components: [wmbus_radio, wmbus_common, wmbus_meter]
refresh: 0s
mdns:
disabled: false
time:
- platform: homeassistant
logger:
level: DEBUG
logs:
packet: INFO # Mute "Have data from radio (... bytes)"
wmbusmeters: INFO # Mute "raw packet", "trimming frame", "checkWMBUSFrame"
main: INFO # Mute raw "Frame received"
CC1101: ERROR # Mute warnings "RX timeout after 0 bytes"
api:
encryption:
key: !secret api_key
ota:
- platform: esphome
password: !secret ota_password
#web_server:
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
output_power: 8.5dB
reboot_timeout: 5min
ap:
ssid: $id
password: !secret failover_password
power_save_mode: none
captive_portal:
web_server:
port: 80
version: 3
# SPI Configuration for CC1101
spi:
mosi_pin: GPIO32
clk_pin: GPIO33
miso_pin: GPIO19
# CC1101 Radio Configuration
# Note: CC1101 has no hardware reset pin - do not configure reset_pin
wmbus_radio:
radio_type: CC1101
irq_pin: GPIO22
cs_pin: GPIO23
frequency: 868.950MHz
sync_mode: NORMAL
on_frame:
- then:
- logger.log:
format: "Frame received: RSSI=%ddBm, Mode=%s, Data=%s"
args: [ 'frame->rssi()', 'toString(frame->link_mode())', 'frame->as_hex().c_str()' ]
# Uncomment and list only the drivers you need to save flash space
wmbus_common:
drivers:
- apator162
# Define your water meter
wmbus_meter:
- id: water_meter
meter_id: 0x12345678
type: apator162
key: "00000000000000000000000000000000"
# mode:
# - C1
on_telegram:
- logger.log:
format: "Telegram received from water meter"
sensor:
- platform: wifi_signal
name: ${friendlyname} WiFi Signal
id: wifi_signal_db
update_interval: 120s
entity_category: diagnostic
unit_of_measurement: "dBm"
device_class: signal_strength
state_class: measurement
accuracy_decimals: 0
- platform: copy # Reports the WiFi signal strength in %
source_id: wifi_signal_db
name: "WiFi Signal Percent"
filters:
- lambda: return min(max(2 * (x + 100.0), 0.0), 100.0);
unit_of_measurement: "%"
entity_category: "diagnostic"
- platform: uptime
name: ${friendlyname} Uptime
filters:
- lambda: return x / 3600;
unit_of_measurement: "h"
entity_category: diagnostic
# RSSI
- platform: wmbus_meter
parent_id: water_meter
field: rssi_dbm
name: "RSSI APATOR"
unit_of_measurement: "dBm"
device_class: signal_strength
state_class: measurement
entity_category: diagnostic
accuracy_decimals: 0
icon: "mdi:signal"
# Water meter total consumption
- platform: wmbus_meter
parent_id: water_meter
field: total_m3
name: "Zimna woda"
unit_of_measurement: "m³"
device_class: water
state_class: total_increasing
accuracy_decimals: 3
icon: "mdi:water"
# Target/Last month reading
- platform: wmbus_meter
parent_id: water_meter
field: target_m3
name: "Water Target"
unit_of_measurement: "m³"
accuracy_decimals: 3
icon: "mdi:counter"
# Flow temperature
- platform: wmbus_meter
parent_id: water_meter
field: flow_temperature_c
name: "Water Temperature"
unit_of_measurement: "°C"
device_class: temperature
accuracy_decimals: 1
# External/Ambient temperature
- platform: wmbus_meter
parent_id: water_meter
field: external_temperature_c
name: "Meter Ambient Temperature"
unit_of_measurement: "°C"
device_class: temperature
accuracy_decimals: 1
text_sensor:
- platform: version
name: ${friendlyname} Version
entity_category: diagnostic
- platform: wifi_info
ip_address:
name: ip
ssid:
name: ssid
bssid:
name: bssid
- platform: wmbus_meter
parent_id: water_meter
field: current_alarms
name: "Water Meter Alarms"
- platform: wmbus_meter
parent_id: water_meter
field: status
name: "Water Meter Status"
binary_sensor:
- platform: status
name: ${friendlyname} Status
entity_category: diagnostic
button:
- platform: safe_mode
name: "${friendlyname} Restart (Safe Mode)"
entity_category: diagnostic
- platform: restart
name: "${friendlyname} Restart"
entity_category: diagnostic