ha bah merci pour cette card
je n’avais jamais pensé a regarder les cartes lovelace miflora
Pour résumer mon intégration de mon capteur Xiaomi MiFlora, voici ce que j’ai fait :
Configuration de la passerelle Bluetooth (BLE) - WiFi
Je suis parti d’un ESP32 NodeMCU que j’ai flashé via ESPHome en suivant ce tuto Installer ESPHome sur Home Assistant et créer votre première configuration et j’ai flashé l’ESP32 avec ce code :
esphome:
name: ble_gateway
platform: ESP32
board: nodemcu-32s
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_pass
# Optional manual IP
manual_ip:
static_ip: !secret ip_ble_gateway
gateway: !secret ip_gateway
subnet: !secret ip_subnet
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Ble Gateway Fallback Hotspot"
password: !secret ap_pass
captive_portal:
# Enable logging
logger:
baud_rate: 0
# Enable Home Assistant API
api:
password: !secret ota_pass
ota:
password: !secret ota_pass
esp32_ble_tracker:
sensor:
- platform: xiaomi_hhccjcy01
mac_address: !secret mac_addr_miflora1
temperature:
name: "Xiaomi MiFlora Temperature"
moisture:
name: "Xiaomi MiFlora Moisture"
illuminance:
name: "Xiaomi MiFlora Illuminance"
conductivity:
name: "Xiaomi MiFlora Soil Conductivity"
N’oubliez pas de modifier vos secrets dans ESPHome via Secrets Editor accessible dans le menu en haut à droite.
J’ai mis en place le capteur à distance raisonnable de la passerelle BLE-WiFi (env. 5m avec un mur).
Ajout des dépendances pour la carte
dans le répertoire config/www/
, j’ai :
- copié le fichier
card-tools.js
accessible ici : card-tools.js - créé un répertoire
lovelace-flower-card
où j’y ai :- copié le fichier
flower-card.js
accessible ici : flower-card.js - créé un sous répertoire
data
où j’y ai :- copié le fichier
data.js
accessible ici : data.js - créé un répertoire
Images
où j’y ai :- copié le fichier
fragaria x ananassa.jpg
accessible ici : fragaria x ananassa.jpg
Si vous avez besoin d’autres images, vous pouvez les récupérer sur le repository MiFloraDB
- copié le fichier
- copié le fichier
- copié le fichier
Ajout du composant plant
Comme vous pouvez le voir sur ma configuration, je suis un malade de la séparation des fichiers YAML .
Je ne laisserais dans les explications que ce qui est nécessaire à l’utilisation de la carte.
Je commence donc par mon fichier configuration.yaml
(point d’entrée de HA) :
homeassistant:
...
packages: !include_dir_named integrations
...
Tous les fichiers YAML contenus dans le répertoire integrations
seront chargés, ce qui inclus mon fichier plants.yaml
qui utilisera le composant Plant :
#
# https://www.home-assistant.io/integrations/plant
#
plant:
fragaria_ananassa:
sensors:
moisture: sensor.xiaomi_miflora_moisture
temperature: sensor.xiaomi_miflora_temperature
conductivity: sensor.xiaomi_miflora_soil_conductivity
brightness: sensor.xiaomi_miflora_illuminance
Pour les noms des différents sensors, vous pourrez les retrouver dans le menu latéral Configuration
puis Intégrations
, dans la carte ESPHome
, cliquez sur ble_gateway
puis 4 entities
.
Normalement, les noms des sensors devraient être ce que vous avez mis comme name
sous chaque sensor dans le code de votre ESP32 en passant ce nom en minuscule et en remplaçant les espaces par des _
.
Ajout de la carte
Voici le fichier lovelace/dashboards.yaml
qui charge mon dashboard par défaut :
#
# Liste tous les dashboards avec leurs fichiers respectifs
#
# https://www.home-assistant.io/lovelace/dashboards-and-views/#dashboards
#
default-yaml:
mode: yaml
title: Maison (manuel)
icon: mdi:view-dashboard
show_in_sidebar: true
filename: lovelace/default/dashboard.yaml
Il utilisera le fichier lovelace/defaut/dashboard.yaml
qui charge les différents « onglets » du dashboard grâce aux !include
:
#
# Liste les views pour le dashboard
#
...
views:
...
- !include views/plants.yaml
Dans mon cas l’onglet lovelace/defaut/views/plants.yaml
qui définira son chemin d’accès path:
, les personnes autorisées à voir cet onglet via visibility:
, son mode d’affichage via panel:
, etc… :
#
# Définition de la vue Plants avec les accès autorisés
#
path: plants
panel: false
icon: 'mdi:flower'
visible: !include_dir_list ../visibility
badges: []
cards:
- !include ../cards/plant-fragaria_ananassa.yaml
Mais surtout l’ensemble des cartes affichées sur cet onglet via cards:
et la directive !include
qui inclura la carte de mes fraisiers.
La carte pour afficher mes fraisiers est définie dans le fichier lovelace/defaut/cards/plant-fragaria_ananassa.yaml
:
#
# https://github.com/remkolems/lovelace-flower-card
#
type: 'custom:flower-card'
entity: plant.fragaria_ananassa
species: fragaria x ananassa
L’entity
devra correspondre au nom que vous avez donnez sous le composant plant
(voir Ajout du composant plant).
Et voilà ce que cela donne :
Pas de remarque sur l’état de mes fraisiers, j’habite en Normandie alors, c’est pas le temps idéal pour la culture )
Voilà, je vous avez prévenu que j’étais un peu taré de la séparation des fichiers et j’espère que je ne vous ai pas trop perdu
Bon ajout de vos sondes Xiaomi
Un grand MERCI à @Gogo pour son aide sur l’intégration de la carte, étant sur Win10, je n’arrivai pas à convertir le fichier
data.js
.
Voilà vous pouvez aussi voir ma configuration complète sur mon Github Config HA de Sylvain_G
Superbe je pense que tout cela va bien me servir, je suis à la recherche d’un moyen de surveiller une butte potagère, j’ai déjà bricolé une électrovanne et un sonoff basic dans une boite de dérivation, il me manque plus que des capteurs de sol.
Pour les ondes Xiaomi je pense que je vais leur faire une coque en water gel
vous avez un lien pour l’achat de ces sondes ?
Moi je les ai prises sur Ali.
Peut être que tu trouveras moins cher chez un autre vendeur, mais moi à l’époque j’avais pris celles ci :
@Gogo et @Axel_Duviella , je viens de créer une team sous EasyEDA pour partager les montages et PCB, si ça vous dit que je vous ajoute ?
Vous devez avoir un compte sous EasyEDA pour y avoir accès. Sinon je peux aussi partager vos montages si vous le souhaitez.
Le message qui en parle : La team HACF sous EasyEDA
Merci pour la découverte de la flower-card.
Au passage, voilà ce que je m’étais fais pour mes capteurs Mi flora. Si ça peut donner des idées
Partage ton code
Ah trop cool… il faut que je m’y mets aussi!
Question? Sa va aussi pour un aquarium ou il y a un autre capteur que je peut intégrer sur ESP…?
Et il faut acheter quel version: HHCC, Xiaomi flora, international…???
Voilà voilà
type: vertical-stack
cards:
- type: picture-entity
image: 'https://zupimages.net/up/21/13/sbqp.jpg'
entity: sensor.ble_conductivity_capteur_syngonium
show_name: true
show_state: false
name: Syngonium Albo Variegata
- type: grid
cards:
- type: 'custom:mini-graph-card'
name: Température
entities:
- entity: sensor.ble_temperature_capteur_syngonium
name: Température
color: '#A62F03'
hours_to_show: 72
- type: 'custom:mini-graph-card'
name: Humidité
entities:
- entity: sensor.ble_moisture_capteur_syngonium
name: Humidité
color: '#44B0E7'
hours_to_show: 72
- type: 'custom:mini-graph-card'
name: Luminosité
entities:
- entity: sensor.ble_illuminance_capteur_syngonium
name: Luminosité
color: '#FFBF00'
hours_to_show: 72
square: true
- type: 'custom:mini-graph-card'
name: Fertilité
entities:
- entity: sensor.ble_conductivity_capteur_syngonium
name: Fertilité
color: '#088A68'
hours_to_show: 72
@Shadow perso j’ai des HHCC. Mais je crois qu’ils sont tous pareils
Ça va pas pour un aquarium par contre
Pour repondre a certaines questions.
La batterie dur plus d’un an cela fait 2-3 ans que je l’ai ai et un seul changement de batterie.
Pas d’oxydation pour ma part très bon produit.
Pour récupérer l’adresse mac il suffit de scanner avec un smartphone ou un rpi les périphériques BLE autour de sois
Salut,
j’ai enfin pu mettre en place mes capteur xiaomi pour des plantes, il y en a encore beaucoup plus mais…
Sa fonctionne bien, par contre je ne peut pas voir les images sur ma tablette, je pense qu’il ne les trouve pas. Pourtent sa devrait rien y changer non?
Salut,
Sur ta tablette et ton PC tu y accèdes par IP ou nom de domaine ?
par IP normalement, voila le lien: http://192.168.1.155:8123/api/hassio_ingress/kxaYEY1EGFB8NQKeDVYJCxXkbDSKmg-pLVlcr4_--tM/api/file?filename=/config/Pics/kentiam.jpg
Pour finir j’ai fais l’acquisition d’un Xiaomi Miflora, bien plus pratique.
Merci pour les conseils, j’ai réussi à faire remonter les données avec une passerelle esp32, plus qu’as vous copier pour la jolie carte :).
merci pour ce gros descriptif.
J’ai bien mes capteurs qui remontent dans HA mais je galère a créer cette carte.
Pour commencer je ne trouve pas le fichier CSV de l’app
en suivant ls liens ici je ne trouve que les photos …
là MiFloraDB/PlantDB_5335_U0.csv at master · khronimo/MiFloraDB · GitHub
Sinon, tu peux passer par celle-ci, les données sont reprise d’une base en ligne
juste en flashant l’esp ca m’a remonté mes sensors (merci @Sylvain_G ):
j’utilisais déjà des cartes miflower et plant card et mini graph , ca aide
bon j’ai réadapté les cartes mais une fois les sensors remontés c’était tranquillou billou meme les capteurs de température BT Xiaomi rond sont apparut en rajoutant le code du site esphome
l’esp bl-gateway m’a aussi détecter l’Amazfit GTR (ma montre) je kifferai de voir une integration de ce genre en bluetooth :
résultat final :
petit soucis apres plusieurs semaines d’utilisation, j’ai des coupures très, trop souvent de l’esp :
voici le code utilisé qui est aussi le meme que @Sylvain_G et à jour avec les updates d’esphome :
Code
esphome:
name: ble-gateway
esp32:
board: esp32dev
framework:
type: arduino
# Enable logging
logger:
# Enable Home Assistant API
api:
ota:
password: "988ebf35avdvcsfbfdbfvfv225fb4273fcd1"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
# Optional manual IP
manual_ip:
static_ip: 192.xxxxxxxx
gateway: 192.xxxxxxxxx
subnet: 255.255.xxxxxxxxx
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Ble-Gateway Fallback Hotspot"
password: "Tgdsfsdvsdvvffdhbfvfbhnbgbvngbbdfbd"
captive_portal:
esp32_ble_tracker:
sensor:
- platform: xiaomi_hhccjcy01
mac_address: '80:xx:CA:xx:xx:A4'
temperature:
name: "Ficus Temperature"
moisture:
name: "Ficus Moisture"
illuminance:
name: "Ficus Illuminance"
conductivity:
name: "Ficus Soil Conductivity"
- platform: xiaomi_lywsdcgq
mac_address: "58:2D:xx:30:xx:xx"
temperature:
name: "mitemp_bt Temperature"
humidity:
name: "mitemp_bt Humidity"
# battery_level:
# name: "mitemp_bt Battery Level"
switch:
- platform: restart
name: "ble-gateway restart"
binary_sensor:
- platform: status
name: "ble-gateway status"
et l’apercu de l’historique de l’esp :
Quand je ping -t l’ip de l’esp je n’ai pas de perte.
voila voila, si quelqu’un as une idée je suis preneur
Bizarre, je n’ai pas ajouter de binary_sensor.ble_gateway_status dans mon code donc je ne peux pas te montrer l’historique de ce sensor mais je peux te montrer celui de device_tracker :
J’ai ajouter le binary_sensor dans le code que je vais uploader.
@jybi89 , je te tiens au courant des résultats demain après quelques heures de fonctionnement.