projets:home-assistant:esphome:noeud-basique-mesures-environnementales:tsl2561
Ceci est une ancienne révision du document !
Table des matières
ESPhome / tsl2561 (luminosité)
Montage
Attention à la polarité ! (+/-)
Schéma placeholder!
page en cours d'écriture, seul le code est bon!
Suivre le schéma de montage en respectant les conventions de couleur pour les fils.
Documentation technique
La documentation technique complète est disponible :
- en ligne : Kit BME280
- en téléchargement (PDF) : fiche_kit_bme280.pdf
Toute cette documentation est diffusée sous licence Creative Commons CC BY 4.0 Deed pour en faciliter la réutilisation.
Code
Code basique
- tsl2561simple.yaml
esphome: name: "station4" # le nom de l'objet connecté esp32: board: nodemcu-32s # ajuster selon la platforme, ok pour nos kits framework: type: arduino logger: # Enable Home Assistant API api: encryption: key: "JhwNLgVDiZLAtKsukQRb2//wYz/olZdI/mBx22uX9WA=" # voir https://esphome.io/components/api.html#configuration-variables # il y a sur la page un générateur de clé aléatoire # changez et mettez une autre valeur pour votre noeud ota: password: "secret_ota_password" # changer pour une valeur de votre choix wifi: ssid: "wifi_ssid" # nom du réseau wifi password: "wifi_password" # mot de passe du réseau wifi ## on définit les GPIO du bus I2C i2c: sda: GPIO21 # à changer si carte différente scl: GPIO22 # à changer si carte différente scan: True id: bus_a sensor: - platform: tsl2561 #capteur de luminosité tsl2561 # documentation : https://esphome.io/components/sensor/tsl2561 name: "luminosité (station4)" address: 0x39 update_interval: 5s
Code avancé
- tsl2561adv.yaml
substitutions: devicename: station4 # nom de l'objet connecté, changer ici uniquement esphome: name: ${devicename} # la valeur définie plus haut sera placée ici esp32: board: nodemcu-32s # ajuster selon la platforme, ok pour nos kits framework: type: arduino logger: # Enable Home Assistant API api: encryption: key: "JhwNLgVDiZLAtKsukQRb2//wYz/olZdI/mBx22uX9WA=" # voir https://esphome.io/components/api.html#configuration-variables # il y a sur la page un générateur de clé aléatoire # changez et mettez une autre valeur pour votre noeud ota: # le mot de passe OTA sera récupéré dans sectets.yaml password: !secret ota_password # décommenter la ligne ci après pour définir le mot de passe ici # password: "wifi_password" # mot de passe du réseau wifi wifi: # le ssid et le password wifi seront récupérés dans sectets.yaml ssid: !secret wifi_ssid password: !secret wifi_password #décommenter pour définir le wifi dans ce fichier, supprimer au dessus # ssid: "wifi_ssid" # nom du réseau wifi # password: "wifi_password" # mot de passe du réseau wifi ## on définit les GPIO du bus I2C i2c: sda: GPIO21 # à changer si carte différente scl: GPIO22 # à changer si carte différente scan: True id: bus_a sensor: - platform: tsl2561 #capteur de luminosité tsl2561 # documentation : https://esphome.io/components/sensor/tsl2561 name: "luminosité (${devicename})" address: 0x39 update_interval: 5s # mesure la force du signal wifi reçu en dB # documentation : https://esphome.io/components/sensor/wifi_signal - platform: wifi_signal name: "signal WiFi (${devicename})" update_interval: 10s # donne l'utpime (depuis combien de temps l'objet connecté est il allumé) # documentation : https://esphome.io/components/sensor/uptime # ici on ajoute des calculs pour avoir un format lisible (j:h:m:s) - 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: # on présente l'adresse IP du noeud # documentation https://esphome.io/components/text_sensor/wifi_info.html - platform: wifi_info ip_address: name: "adresse IP (${devicename})" id: ${devicename}_ip_address - platform: template # on présente l'uptime sous forme texte, voir plus haut name: "Uptime (${devicename})" id: ${devicename}_uptime_human icon: mdi:clock-start # version de espHome utilisée # https://esphome.io/components/text_sensor/version - platform: version name: "Version d'ESPHome installée" id: ${devicename}_ESPHome_Version
projets/home-assistant/esphome/noeud-basique-mesures-environnementales/tsl2561.1698374023.txt.gz · Dernière modification : 04/04/2024 15:35 (modification externe)