Baldu
Mai 15, 2023, 7:50
1
Bonjour,
je suis en train de flasher un ESP8266 en suivant ce tuto : Vos premiers pas avec ESPHome
Tout a bien fonctionné jusqu’au chapitre 5. J’ai édité et collé le code mais lorsque je vérifie si le code est correct, je me trouve avec ce logs :
`INFO Reading configuration /config/esphome/porte-poules.yaml…
ERROR Error while reading config: Invalid YAML syntax:
while parsing a block mapping
in « /config/esphome/porte-poules.yaml », line 1, column 1:
esphome:
^
expected , but found ‹ ›
in « /config/esphome/porte-poules.yaml », line 33, column 5:
sensor:
^`
N’étant pas encore habitué avec ce langage, j’aurais bien besoin d’une petite aide.
SAlut
Publie integralement ton code, ça ressemble un un probleme d’identation
Attention n’oublie pas de le mettre entre les balises qui vont bien afin d’assurer une lisibilité et identifier le probleme
1 « J'aime »
Baldu
Mai 15, 2023, 8:37
3
esphome:
name: porte-poules
friendly_name: Porte poules
esp8266:
board: esp01_1m
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "xxxxxxxxxxxxxxxxxxxx/k8="
ota:
password: "xxxxxxxxxxxxxxxxxxxx"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Porte-Poules Fallback Hotspot"
password: "xxxxxxxxxxxxxxxxxxx"
binary_sensor:
# statut
- platform: status
name: "Statut"
sensor:
# Qualité du signal
- platform: wifi_signal
name: "Signal Wifi"
update_interval: 60s
# Temps de fonctionnement
- platform: uptime
name: "Allumé depuis (s)"
id: uptime_sec
switch:
# Bouton de redémarrage
- platform: restart
name: "Redémarrage"
# Transformation des secondes en jours
text_sensor:
- platform: template
name: "Allumé depuis (j)"
lambda: |-
int seconds = (id(uptime_sec).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 { (String(days) +"d " + String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };
icon: mdi:clock-start
update_interval: 60s
Salut
Evite de mettre tes mots de passe
Un @Moderateur pour corriger ?
1 « J'aime »
Ton indentation n’est pas correcte à partir de binary_sensor.
Essaie ça:
binary_sensor:
# statut
- platform: status
name: "Statut"
sensor:
# Qualité du signal
- platform: wifi_signal
name: "Signal Wifi"
update_interval: 60s
# Temps de fonctionnement
- platform: uptime
name: "Allumé depuis (s)"
id: uptime_sec
switch:
# Bouton de redémarrage
- platform: restart
name: "Redémarrage"
# Transformation des secondes en jours
text_sensor:
- platform: template
name: "Allumé depuis (j)"
lambda: |-
int seconds = (id(uptime_sec).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 { (String(days) +"d " + String(hours) +"h " + String(minutes) +"m "+ String(seconds) +"s").c_str() };
icon: mdi:clock-start
update_interval: 60s
1 « J'aime »
@jrvrcd avais raison, problème d’indexion
Petit truc avec l’interface ESPHOME
généralement la ou ça décorne se sera souligné en rouge si tu mets ton pointeur sur la partie soulignée tu devrais avoir un message relativement explicite permettant d’identifier ton erreur.
suis au bureau donc pas accès a mon instance HA
je donnerais un exemple ce soir
Baldu
Mai 15, 2023, 10:04
9
Ca fonctionne. Merci beaucoup.
Du coup, pour bien comprendre, la seule différence que je vois, c’est l’espacement avant le tiret ?
D’ailleurs, si vous avez un didacticiel/tuto pour apprendre et comprendre ce langage… ça évitera de vous embêter trop souvent
Encore merci à tous.
Salut
Bonjour,
Voilà 6 mois, j’ai découvert ESPHome, comme j’ai un peu galérer à comprendre son fonctionnement, j’ai créé des vidéos et je les ai mis en ligne sur youtube :
https://www.youtube.com/channel/UCAWSjZ0UfLcxO4EEKC6Tsqg
Pour l’instant, il y a 5 chapitres :
#1 | Installation interface de programmation sur Home Assistant
#2 | Construire et uploader votre firmware via USB et OTA
#3 | web_server - bouton - led
#4 | Automatisations en YAML
#5 | Les templates (button, switch, sensor, etc…
sinon decortiquer les differents trucs qui existent
par exemple
Voila un exemple
il faut pas hésiter a regarder dans tout le code s’il n’y a pas de surlignage en rouge
Baldu
Mai 15, 2023, 4:05
12
Merci. Je vais regarder ça rapidement.