Wiki Le BIK'LAB

Le Bik'Lab avec le réseau des FabLabs de la région académique Guadeloupe

Outils pour utilisateurs

Outils du site


projets:home-assistant:aquaponie:sat-composteur

Sat composteur

Objectif

surveiller la température du compost.

🌡️ Plages de température typiques dans un composteur

Phase Température Description
💤 Phase mésophile 10 °C à 40 °C Début de la décomposition, activité modérée.
🔥 Phase thermophile 40 °C à 70 °C Période très active : dégradation rapide, stérilisation naturelle.
🔻 Refroidissement < 40 °C Fin de l’activité intense, maturation du compost.
🧊 Trop froid < 10 °C Compost “endormi”, activité microbienne quasi nulle.
🧨 Trop chaud > 70 °C Risque de tuer les micro-organismes bénéfiques ; pas souhaitable.

Hardware

Yaml ESPHome

composteur.yaml

substitutions:
  devicename: composteur
  friendly_devicename: Composteur

esphome:
  name: ${devicename}
  friendly_name: ${friendly_devicename}

esp32:
  variant: ESP32C3
  board: seeed_xiao_esp32c3
  framework:
    type: arduino
 
# Enable logging
logger:
  # level: VERY_VERBOSE
 
# Enable Home Assistant API
api:
  encryption:
    key: "0987PÉUIÈ!VDLJ
 
ota:
  - platform: esphome
    password: "09rstceiupdl09876543ldvop"
 
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
 
  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "${devicename} Fallback Hotspot"
    password: "09PO09546XYP"
 
captive_portal:
 
one_wire:
  # D6
  - platform: gpio
    pin: GPIO21
    id: bus_ds18b20_1
 
  # D7
  - platform: gpio
    pin: GPIO20
    id: bus_ds18b20_2
 
sensor:
  - platform: dallas_temp
    one_wire_id: bus_ds18b20_1
    name: "Température 1 (${devicename})"
    resolution: 12
    update_interval: 60s
 
  - platform: dallas_temp
    one_wire_id: bus_ds18b20_2
    name: "Température 2 (${devicename})"
    resolution: 12
    update_interval: 60s
 
  - platform: wifi_signal
    name: "signal WiFi (${devicename})"
    update_interval: 60s
 
  - platform: uptime
    name: "${devicename} Uptime Sensor"
    id: ${devicename}_uptime_sensor
    update_interval: 60s
    on_raw_value:
      then:
        - text_sensor.template.publish:
            id: ${devicename}_uptime_human
            state: !lambda |-
              int seconds = round(id(${devicename}_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) + "j " : "") +
                (hours ? String(hours) + "h " : "") +
                (minutes ? String(minutes) + "m " : "") +
                (String(seconds) + "s")
              ).c_str();
 
text_sensor:
  - platform: wifi_info
    ip_address:
      name: "adresse IP (${devicename})"
      id: ${devicename}_ip_address
 
  - platform: template
    name: "Uptime (${devicename})"
    id: ${devicename}_uptime_human
    icon: mdi:clock-start
 
  - platform: version
    name: "Version d'ESPHome installée"
    id: ${devicename}_ESPHome_Version
    

Intégration Home Assistant

Panneau de contrôle

Code pour jauge température

jauge.yaml
type: gauge
entity: sensor.composteur_temp_rature_1_composteur
min: 5
max: 80
severity:
  green: 10
  yellow: 40
  red: 65
needle: true
name: Compartiment 1

Code pour courbes de températures

courbes.yaml
chart_type: line
period: 5minute
type: statistics-graph
entities:
  - sensor.composteur_temp_rature_1_composteur
  - sensor.composteur_temp_rature_2_composteur
stat_types:
  - mean
  - min
  - max
projets/home-assistant/aquaponie/sat-composteur.txt · Dernière modification : 24/05/2025 23:07 de Oliver Watté