bon, chatgpt est ton ami…
solution :
esphome:
name: esp32-robot-piscine
friendly_name: ESP32-robot-piscine
# Démarrer le script lors du démarrage de l'ESP
on_boot:
priority: 600
then:
- script.execute: demarre_sequence
esp32:
board: esp32dev
framework:
type: arduino
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "xxxxxxxxxxxx"
ota:
- platform: esphome
password: "xxxxxxxxxxxxxx"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Esp32-Robot-Piscine"
password: "xxxxxxxxxxxxxx"
captive_portal:
# Enable Web server.
web_server:
port: 80
switch:
# LED verte
- platform: gpio
name: "LED"
id: led
pin: 2
globals:
- id: global_random_delay1
type: int
restore_value: no
initial_value: '0'
- id: global_random_delay2
type: int
restore_value: no
initial_value: '0'
script:
- id: demarre_sequence
mode: single
then:
- switch.turn_on: led
- delay: 1s
#- delay: !lambda "return rand() % 1000 +5000;"
- switch.turn_off: led
- delay: 1s
- switch.turn_on: led
#- delay: !lambda "return rand() % 1000 +5000;"
- script.execute: sequence_nettoyage
- id: sequence_nettoyage
mode: restart
then:
- switch.turn_on: led
- lambda: |-
int random_delay1 = 10000 + rand() % 10000; // Générer un délai entre 10 000 ms (10s) et 20 000 ms (20s)
id(global_random_delay1) = (random_delay1);
- logger.log:
format: "Délai aléatoire: %.1f secondes"
args: ['id(global_random_delay1) / 1000.0']
- delay: !lambda "return id(global_random_delay1);"
- switch.turn_off: led
- lambda: |-
int random_delay2 = 10000 + rand() % 10000; // Générer un délai entre 10 000 ms (10s) et 20 000 ms (20s)
id(global_random_delay2) = (random_delay2);
- logger.log:
format: "Délai aléatoire: %.1f secondes"
args: ['id(global_random_delay2) / 1000.0']
- delay: !lambda "return id(global_random_delay2);"
- script.execute: sequence_nettoyage