From c5d43e0397fef6daa6b4f215e953bc909aa4337c Mon Sep 17 00:00:00 2001 From: mhendriks Date: Thu, 22 Feb 2024 21:48:28 +0100 Subject: [PATCH] config voor de nieuwe P1 Dongle Pro H2O+ v2 --- p1-dongle-pro-h2o-v2.yaml | 250 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 250 insertions(+) create mode 100644 p1-dongle-pro-h2o-v2.yaml diff --git a/p1-dongle-pro-h2o-v2.yaml b/p1-dongle-pro-h2o-v2.yaml new file mode 100644 index 0000000..aca109c --- /dev/null +++ b/p1-dongle-pro-h2o-v2.yaml @@ -0,0 +1,250 @@ +substitutions: + device_name: p1-dongle-pro-h2o + device_description: "P1 Dongle Pro + H2O v2" + friendly_name: P1 Dongle Pro H2O + prj_version: "2024.02.01" + +esphome: + name: ${device_name} + comment: "${device_description}" + name_add_mac_suffix: false + project: + name: "smartstuff.p1_dongle_pro_h2o_v2" + version: ${prj_version} + platformio_options: + upload_speed: 1500000 + +esp32: + board: esp32-c3-devkitm-1 + +improv_serial: + next_url: http://{{ip_address}} + +api: + services: + - service: p1_dongle_reboot + then: + - button.press: + id: reboot + - service: set_water_total + variables: + set_value: int + then: + - globals.set: + id: totalWaterUsage + value: !lambda 'return set_value;' + +globals: + - id: totalWaterUsage + type: int + restore_value: true # aanpassen naar no indien de nieuwe waarde onder de oude ligt + initial_value: '0' + +ota: +captive_portal: +web_server: +wifi: +# Enable fallback hotspot (captive portal) in case wifi connection fails + ap: + ssid: ${device_name} + ap_timeout: 15s + +dashboard_import: + package_import_url: github://mhendriks/esphome-p1/p1-dongle-pro-h2o-v2.yaml@main + +# Enable logging +logger: + level: ERROR + +dsmr: +uart: + rx_pin: + number: 4 + inverted: true + baud_rate: 115200 + rx_buffer_size: 1700 + +status_led: + pin: + number: 7 + inverted: true + id: led + +button: + - platform: restart + name: "_Restart device" + id: reboot + - platform: factory_reset + name: "_Restart with Factory Default Settings" + +binary_sensor: + - platform: gpio + pin: + number: 9 + inverted: true + mode: + input: true + pullup: true + name: _PushButton + on_press: + then: + - button.press: reboot + +sensor: + - platform: pulse_meter + name: "Watermeter pulse" + pin: + number: 3 + mode: + input: true + pullup: true + id: h2o_pulse + state_class: measurement + unit_of_measurement: 'L' + device_class: water + internal_filter: 13us + internal_filter_mode: EDGE + icon: mdi:flash-outline + accuracy_decimals: 0 + # total: + # name: "Water Total" + # id: h2o_total + # state_class: total_increasing + # icon: mdi:water + # unit_of_measurement: L + # accuracy_decimals: 0 + - platform: template + name: "Watermeter total" + state_class: "total_increasing" + device_class: "water" + icon: mdi:water + update_interval: 1s + unit_of_measurement: L + accuracy_decimals: 0 + lambda: |- + if (id(h2o_pulse).state > 0) id(totalWaterUsage) += 1; + return id(totalWaterUsage); + + - platform: dsmr +# energy_delivered_lux: +# name: "Energy Consumed Luxembourg" +# state_class: total_increasing + energy_delivered_tariff1: + name: "Energy Consumed Tariff 1" + state_class: total_increasing + energy_delivered_tariff2: + name: "Energy Consumed Tariff 2" + state_class: total_increasing +# energy_returned_lux: +# name: "Energy Produced Luxembourg" +# state_class: total_increasing + energy_returned_tariff1: + name: "Energy Produced Tariff 1" + state_class: total_increasing + energy_returned_tariff2: + name: "Energy Produced Tariff 2" + state_class: total_increasing + power_delivered: + name: "Power Consumed" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + power_returned: + name: "Power Produced" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + electricity_failures: + name: "Electricity Failures" + icon: mdi:alert + electricity_long_failures: + name: "Long Electricity Failures" + icon: mdi:alert + voltage_l1: + name: "Voltage Phase 1" + voltage_l2: + name: "Voltage Phase 2" + voltage_l3: + name: "Voltage Phase 3" + current_l1: + name: "Current Phase 1" + current_l2: + name: "Current Phase 2" + current_l3: + name: "Current Phase 3" + power_delivered_l1: + name: "Power Consumed Phase 1" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + power_delivered_l2: + name: "Power Consumed Phase 2" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + power_delivered_l3: + name: "Power Consumed Phase 3" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + power_returned_l1: + name: "Power Produced Phase 1" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + power_returned_l2: + name: "Power Produced Phase 2" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + power_returned_l3: + name: "Power Produced Phase 3" + unit_of_measurement: "W" + state_class: "measurement" + accuracy_decimals: 0 + filters: + - multiply: 1000 + gas_delivered: + name: "Gas Consumed" + state_class: total_increasing + gas_delivered_be: + name: "Gas Consumed Belgium" + state_class: total_increasing + - platform: uptime + name: "_Uptime" + - platform: wifi_signal + name: "_Wi-Fi Signal" + update_interval: 60s + +text_sensor: + - platform: dsmr + identification: + name: "DSMR Identification" + p1_version: + name: "DSMR Version" + p1_version_be: + name: "DSMR Version Belgium" + - platform: wifi_info + ip_address: + name: "_IP Address" + ssid: + name: "_Wi-Fi SSID" + bssid: + name: "_Wi-Fi BSSID" + - platform: version + name: "_ESPHome Version" + hide_timestamp: true \ No newline at end of file