Skip to main content

Gas Sensor

Hardware
was brauche ich dafür alles?

NodeMCU (ESP8266 CP2102 NodeMcu)
Netzteil
Crimp Set (oder fragt einen Bekannten)
Anschlussplan
welches Kabel ihr wo anschließt ist hier tatsächlich egal
ESP Code

Bitte am Anfang noch 

esp8266:                       # diese Line sollte schon vorhanden sein
  board: esp01_1m              # diese ebenso
  restore_from_flash: true

preferences:
  flash_write_interval: 5min
  
  
  
api:
  services:
    - service: update_counter_pulses
      variables:
        counter_pulses: int
      then:
        - globals.set:
            id: pulses_sum
            value: !lambda 'return counter_pulses;'

diesen Code an die Standart Config anfügen:

globals:
  - id: pulses_sum
    type: int
    restore_value: yes
    initial_value: '8504'  # hier kann der Gaszählerstand initialisiert werden - letze Stelle weglassen

binary_sensor:
  - platform: gpio
    id: internal_pulse_counter
    pin:
      number: GPIO5
      mode: INPUT_PULLUP
    name: "Live-Impuls"
    filters:
      - delayed_on: 10ms
    on_press:
      then:
        - lambda: id(pulses_sum) += 1;

sensor:
  - platform: template
    name: "Gasverbrauch_ESP"
    device_class: gas
    unit_of_measurement: "m³"
    state_class: "total_increasing"
    icon: "mdi:fire"
    accuracy_decimals: 2
    lambda: |-
      return id(pulses_sum) * 0.01;
Sensor.yaml
# Gaszähler, kommend von ESPHome, aufbereiten für Energy
- platform: template
  sensors:
    gasverbrauch:
      value_template:  >
          {% if states('sensor.gasverbrauch_esp') | float == 0 %}
            {{ states('sensor.gasverbrauch') }}
          {% else %}
            {{ states('sensor.gasverbrauch_esp') | float }}
          {% endif %}
      unit_of_measurement: m³
      device_class: gas
      attribute_templates:
        state_class: total_increasing