mirror of
https://github.com/CeeWeasel/fresh-home.git
synced 2026-08-09 10:30:14 -04:00
188 lines
4.2 KiB
YAML
188 lines
4.2 KiB
YAML
# 3v3 en svp sun 34 35 32 33 25 26 27 14 12 gnd 13 sd2 sd3 gnd 5v
|
|
substitutions:
|
|
devicename: furnace-room-multisensor
|
|
entity_name: furnace_room_multisensor
|
|
friendly_name: Furnace Room MultiSensor
|
|
comment: Clever MultiSensor
|
|
board: nodemcuv2
|
|
static_ip: !secret furnace-room-multisensor-ip
|
|
|
|
moisture: D1
|
|
door: D2
|
|
one_wire: D5
|
|
ultrasonic_trigger: D6
|
|
ultrasonic_echo: D7
|
|
|
|
packages:
|
|
network: !include common/wifi.yaml
|
|
device_base: !include common/device_base.yaml
|
|
web_server: !include common/web_server.yaml
|
|
|
|
esphome:
|
|
name: ${devicename}
|
|
friendly_name: ${friendly_name}
|
|
name_add_mac_suffix: false
|
|
|
|
esp8266:
|
|
board: ${board}
|
|
|
|
# Enable logging
|
|
logger:
|
|
|
|
api: # Using settings from common/device_base.yaml
|
|
|
|
ota: # Using settings from common/device_base.yaml
|
|
|
|
one_wire:
|
|
- platform: gpio
|
|
pin: ${one_wire}
|
|
|
|
sensor:
|
|
- platform: ultrasonic
|
|
trigger_pin: ${ultrasonic_trigger}
|
|
echo_pin: ${ultrasonic_echo}
|
|
id: ultrasonic_source
|
|
update_interval: 60s
|
|
internal: True
|
|
filters:
|
|
- sliding_window_moving_average:
|
|
window_size: 5
|
|
send_every: 5
|
|
send_first_at: 1
|
|
- lambda: 'return round( x * 10.0) / 10.0;'
|
|
- clamp:
|
|
min_value: 0.0
|
|
max_value: 150.0
|
|
|
|
- platform: copy
|
|
source_id: ultrasonic_source
|
|
unit_of_measurement: "cm"
|
|
state_class: measurement
|
|
id: distance_from_bottom
|
|
name: "Salt Level in CM"
|
|
icon: mdi:arrow-collapse-up
|
|
disabled_by_default: true
|
|
#update_interval: 5s
|
|
filters:
|
|
- lambda: 'return (0.94 - x) * 100;'
|
|
- clamp:
|
|
min_value: 0.0
|
|
max_value: 150.0
|
|
|
|
- platform: copy
|
|
source_id: ultrasonic_source
|
|
unit_of_measurement: "cm"
|
|
state_class: measurement
|
|
id: distance_from_top
|
|
name: "Salt Level From Top in CM"
|
|
icon: mdi:arrow-collapse-down
|
|
disabled_by_default: true
|
|
#update_interval: 5s
|
|
filters:
|
|
- lambda: 'return x * 100;'
|
|
- round: 1
|
|
- clamp:
|
|
min_value: 0.0
|
|
max_value: 150.0
|
|
|
|
- platform: copy
|
|
source_id: distance_from_bottom
|
|
unit_of_measurement: "bags"
|
|
state_class: measurement
|
|
id: level_in_bags
|
|
name: "Salt Level in Bags"
|
|
icon: mdi:counter
|
|
disabled_by_default: true
|
|
#update_interval: 5s
|
|
filters:
|
|
- lambda: 'return x / 17.5;'
|
|
- round: 1
|
|
- clamp:
|
|
min_value: 0.0
|
|
max_value: 10.0
|
|
|
|
- platform: dallas_temp
|
|
address: 0x5a3c01d6078a2e28
|
|
name: "Probe 1"
|
|
id: probe1
|
|
device_class: "temperature"
|
|
update_interval: 5s
|
|
filters:
|
|
- lambda: return x * (9.0/5.0) + 32.0;
|
|
- clamp:
|
|
min_value: 0.0
|
|
max_value: 150.0
|
|
- round: 2
|
|
- or:
|
|
- throttle: 60s
|
|
- delta: 1.0
|
|
unit_of_measurement: "°F"
|
|
state_class: measurement
|
|
|
|
- platform: dallas_temp
|
|
address: 0x6b3c01d6077bbb28
|
|
name: "Probe 2"
|
|
id: probe2
|
|
device_class: "temperature"
|
|
update_interval: 5s
|
|
filters:
|
|
- clamp:
|
|
min_value: 0.0
|
|
max_value: 150.0
|
|
- or:
|
|
- throttle: 60s
|
|
- delta: 1.0
|
|
- lambda: return round( (x * (9.0/5.0) + 32.0) * 100.0) / 100.0;
|
|
unit_of_measurement: "°F"
|
|
state_class: measurement
|
|
|
|
- platform: dallas_temp
|
|
address: 0x2a3c01d6073e0728
|
|
name: "Probe 3"
|
|
id: probe3
|
|
device_class: "temperature"
|
|
update_interval: 5s
|
|
filters:
|
|
- lambda: return round( (x * (9.0/5.0) + 32.0) * 100.0) / 100.0;
|
|
- clamp:
|
|
min_value: 0.0
|
|
max_value: 150.0
|
|
- or:
|
|
- throttle: 60s
|
|
- delta: 1.0
|
|
accuracy_decimals: 2
|
|
unit_of_measurement: "°F"
|
|
state_class: measurement
|
|
|
|
- platform: template
|
|
name: "Delta"
|
|
id: hvac_delta
|
|
icon: mdi:thermometer-lines
|
|
lambda: |-
|
|
return id(probe1).state - id(probe2).state;
|
|
update_interval: 10s
|
|
unit_of_measurement: "°F"
|
|
state_class: measurement
|
|
device_class: ""
|
|
accuracy_decimals: 2
|
|
filters:
|
|
- or:
|
|
- throttle: 60s
|
|
- delta: 1.0
|
|
|
|
binary_sensor:
|
|
- platform: gpio
|
|
name: "Door"
|
|
device_class: door
|
|
pin:
|
|
number: ${door}
|
|
mode: INPUT_PULLUP
|
|
|
|
- platform: gpio
|
|
name: "Leak"
|
|
device_class: moisture
|
|
pin:
|
|
number: ${moisture}
|
|
mode: INPUT_PULLUP
|
|
inverted: true
|