{"id":10829,"date":"2026-03-01T11:59:53","date_gmt":"2026-03-01T09:59:53","guid":{"rendered":"https:\/\/www.sigalou-domotique.fr\/?p=10829"},"modified":"2026-03-10T23:03:39","modified_gmt":"2026-03-10T21:03:39","slug":"je-surveille-mon-reseau-zigbee-linkquality-last_seen","status":"publish","type":"post","link":"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen","title":{"rendered":"Ich \u00fcberwache mein Zigbee-Netzwerk visuell (Linkquality &amp; Last_seen)"},"content":{"rendered":"<p><strong>Ziel:<\/strong> zwei wichtige Informationen f\u00fcr jedes Zigbee-Ger\u00e4t sichtbar (und verwertbar) zu machen:<\/p>\n<ul>\n<li><strong>linkquality<\/strong> (Radio-Gesundheit) und<\/li>\n<li><strong>last_seen<\/strong> (letzte Mitteilung)<\/li>\n<\/ul>\n<p>Dies, um sofort eine \u201everlorene\u201c Sirene oder HS-Batterie zu erkennen, ohne darauf zu warten, dass sie zuf\u00e4llig entdeckt wird.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10857\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202311.png\" alt=\"\" width=\"328\" height=\"187\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202311.png 328w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202311-300x171.png 300w\" sizes=\"auto, (max-width: 328px) 100vw, 328px\" \/><\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_88 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<label for=\"ez-toc-cssicon-toggle-item-6aafb35d6bdd9\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewbox=\"0 0 24 24\" version=\"1.2\" baseprofile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-6aafb35d6bdd9\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%A7%AD_Pourquoi_jai_mis_ca_en_place\" >\ud83e\udded Warum habe ich das eingerichtet?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%E2%9A%A0%EF%B8%8F_Piege_1_il_y_a_deux_%E2%80%9Cconfigurationyaml%E2%80%9D\" >\u26a0gest\u00fctzte Fallen #1 : Es gibt zwei \u201aconfiguration.yaml\u2018<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%A7%B9_Piege_2_lUI_de_ladd-on_Zigbee2MQTT_peut_%E2%80%9Cnettoyer%E2%80%9D_des_options\" >\ud83e\uddf9 Falle #2 : Zigbee2MQTT-Add-on-UI kann Optionen \u201es\u00e4ubern\u201c<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%95%92_Activer_last_seen_dans_Zigbee2MQTT_obligatoire\" >\ud83d\udd52 Aktivieren Sie last_seen in Zigbee2MQTT (erforderlich)<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Formats_utiles_pour_choisir\" >N\u00fctzliche Formate (zur Auswahl)<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%A7%A9_Activer_last_seen_et_linkquality_%E2%80%9Cpar_defaut%E2%80%9D_dans_Home_Assistant_facultatif\" >\ud83e\udde9 Aktivieren von last_seen und linkquality \u201astandardm\u00e4\u00dfig\u2018 im Home Assistant (optional)<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Important_impact_sur_les_appareils_deja_installes\" >Wichtig: Auswirkungen auf bereits installierte Ger\u00e4te<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%97%84%EF%B8%8F_Base_de_donnees_garder_linfo_visible_sans_%E2%80%9Cpolluer%E2%80%9D_lhistorique\" >\ud83d\uddc4gest\u00fctzte Datenbank: Info sichtbar halten, ohne die Historie zu \u201everschmutzen\u201c<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Ce_que_je_mets_dans_configrecordersyaml\" >Was ich in \/config\/recorders.yaml setze<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%97%BA%EF%B8%8F_Supervision_visuelle_un_plan_%E2%80%9Cradio_fraicheur%E2%80%9D\" >\ud83d\uddfa\uf0b7 Visuelle \u00dcberwachung: ein \u201eRadio + Frische\u201c-Plan<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%A7%B0_La_carte_%E2%80%9Cdecluttering%E2%80%9D_reutilisable\" >\ud83e\uddf0 Die Karte \u201edecluttering\u201c (wiederverwendbar)<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Exemple_page_Dashboard_tres_simple\" >Beispiel: Sehr einfache Dashboard-Seite<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Le_template_linkquality_le_%E2%80%9Cgros_morceau%E2%80%9D\" >Das Template linkquality (das \u201egro\u00dfe St\u00fcck\u201c)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Simplement_que_fait_ce_code\" >Was macht dieser Code eigentlich?<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%A7%A0_Ajouts_utiles_infos_%E2%80%9Csante%E2%80%9D_globales_Zigbee2MQTT\" >\ud83e\udde0 N\u00fctzliche Erg\u00e4nzungen: Globale Gesundheitsinformationen Zigbee2MQTT<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Voici_le_code_de_cette_carte\" >Hier ist der Code dieser Karte<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Jai_ajoute_un_capteur_pour_calculer_la_moyenne_de_Linkquality\" >Ich habe einen Sensor hinzugef\u00fcgt, um den Mittelwert von Linkquality zu berechnen.<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Jai_ajoute_un_capteur_pour_calculer_le_nombre_de_capteurs\" >Ich habe einen Sensor hinzugef\u00fcgt, um die Anzahl der Sensoren zu berechnen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Jai_ajoute_un_capteur_pour_calculer_le_nombre_dappareils_en_erreur\" >Ich habe einen Sensor hinzugef\u00fcgt, um die Anzahl der fehlerhaften Ger\u00e4te zu berechnen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Jai_ajoute_un_indicateur_sur_le_dasboard_principal_pour_signaler_le_nombre_en_erreur\" >Ich habe einen Indikator auf dem Haupt-Dasboard hinzugef\u00fcgt, um die falsche Zahl anzuzeigen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Pour_savoir_qui_est_en_erreur\" >Um herauszufinden, wer falsch liegt<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%E2%9C%85_Recapitulatif_simple_les_3_blocs_indispensables\" >\u2705 Einfache Zusammenfassung (die 3 unentbehrlichen Bl\u00f6cke)<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#1_Zigbee2MQTT_activer_last_seen\" >1. Zigbee2MQTT: last_seen aktivieren<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#2_Zigbee2MQTT_activer_par_defaut_dans_HA_optionnel_mais_pratique\" >2. Zigbee2MQTT: Standardeinstellung in HA aktivieren (optional, aber praktisch)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#3_Home_Assistant_ne_pas_enregistrer_ces_entites_dans_la_DB\" >3. Home Assistent: diese Entit\u00e4ten nicht in der DB registrieren<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#%F0%9F%8E%AF_Ce_que_ca_change_au_quotidien\" >\ud83c\udfaf Was sich im Alltag \u00e4ndert<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/www.sigalou-domotique.fr\/de\/je-surveille-mon-reseau-zigbee-linkquality-last_seen\/#Besoin_de_precisions_des_questions\" >Brauchen Sie weitere Informationen? - Fragen?<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%A7%AD_Pourquoi_jai_mis_ca_en_place\"><\/span>\ud83e\udded Warum habe ich das eingerichtet?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Mit <strong>69 Zigbee-Ger\u00e4te<\/strong>, hatte ich keine einfache Sichtbarkeit, um zwei grundlegende Fragen zu beantworten: <strong>Nimmt das Ger\u00e4t korrekt auf?<\/strong> und <strong>Hat er k\u00fcrzlich mitgeteilt?<\/strong><br \/>\nAuf einer <strong>Meerjungfrau<\/strong>, Es ist nicht akzeptabel, dies \u201azuf\u00e4llig\u2018 zu entdecken: Ich m\u00f6chte sofort sehen, ob sie stumm, netzunabh\u00e4ngig oder in Funkschwierigkeiten ist.<\/p>\n<p>Daher habe ich beschlossen, \u00fcberall zu zeigen:<\/p>\n<ul>\n<li><strong>linkquality<\/strong> : Qualit\u00e4tsindikator f\u00fcr Funkverbindungen (LQI). (Dies ist ein n\u00fctzliches \u201eFoto\u201c, um schwache Bereiche zu erkennen.)<\/li>\n<li><strong>last_seen<\/strong> : Datum\/Uhrzeit der letzten Mitteilung (oder relative Zeit: 12s, 4m, 2h\u2026).<\/li>\n<\/ul>\n<p><a href=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937.png\" target=\"_blank\" rel=\"noopener\"><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-10839 size-large\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-1024x588.png\" alt=\"\" width=\"1024\" height=\"588\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-1024x588.png 1024w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-300x172.png 300w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-768x441.png 768w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-1536x882.png 1536w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-600x345.png 600w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937.png 1541w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><br \/>\n<\/a><\/p>\n<h2><span class=\"ez-toc-section\" id=\"%E2%9A%A0%EF%B8%8F_Piege_1_il_y_a_deux_%E2%80%9Cconfigurationyaml%E2%80%9D\"><\/span>\u26a0gest\u00fctzte Fallen #1 : Es gibt zwei \u201aconfiguration.yaml\u2018<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Am Anfang habe ich mich wie folgt verhalten: In Home Assistant gibt es zwei verschiedene Dateien.<\/p>\n<ul>\n<li>Die Hauptdatei von Home Assistant: <strong>\/config\/configuration.yaml<\/strong><\/li>\n<li>Die Datei von Zigbee2MQTT: <strong>\/config\/zigbee2mqtt\/configuration.yaml<\/strong><\/li>\n<\/ul>\n<p><strong>Wichtig:<\/strong> f\u00fcr <code>last_seen<\/code> und (in der Praxis) die Standardbelichtung\/-aktivierung, alles ist seitlich konfigurierbar <strong>Zigbee2MQTT<\/strong>, also in <code>\/config\/zigbee2mqtt\/configuration.yaml<\/code>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10859\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/config.png\" alt=\"\" width=\"456\" height=\"262\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/config.png 456w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/config-300x172.png 300w\" sizes=\"auto, (max-width: 456px) 100vw, 456px\" \/><\/p>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%A7%B9_Piege_2_lUI_de_ladd-on_Zigbee2MQTT_peut_%E2%80%9Cnettoyer%E2%80%9D_des_options\"><\/span>\ud83e\uddf9 Falle #2 : Zigbee2MQTT-Add-on-UI kann Optionen \u201es\u00e4ubern\u201c<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10858\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202550.png\" alt=\"\" width=\"1064\" height=\"183\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202550.png 1064w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202550-300x52.png 300w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202550-1024x176.png 1024w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202550-768x132.png 768w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202550-600x103.png 600w\" sizes=\"auto, (max-width: 1064px) 100vw, 1064px\" \/><\/p>\n<p>Ich habe mich sehr peinlich verhalten: Ich f\u00fcgte erweiterte Optionen hinzu, speicherte \u2026, und dann schien die Schnittstelle des Add-Ons die Datei zu \u201evereinfachen\u201c, indem sie Dinge l\u00f6schte, die sie nicht verstand.<\/p>\n<p><strong>Zuverl\u00e4ssige Methode (bei mir):<\/strong><\/p>\n<ul>\n<li>Ich ver\u00f6ffentliche direkt <code>\/config\/zigbee2mqtt\/configuration.yaml<\/code> (File Editor oder SSH)<\/li>\n<li>Ich speichere<\/li>\n<li>Ich starte Zigbee2MQTT neu<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%95%92_Activer_last_seen_dans_Zigbee2MQTT_obligatoire\"><\/span>\ud83d\udd52 Aktivieren <code>last_seen<\/code> in Zigbee2MQTT (erforderlich)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Standardm\u00e4\u00dfig ver\u00f6ffentlicht Zigbee2MQTT m\u00f6glicherweise nicht <code>last_seen<\/code> (\u201adisable\u2018-Wert).<br \/>\nUm es zu aktivieren, f\u00fcge ich dies im Abschnitt <code>advanced<\/code> von <code>\/config\/zigbee2mqtt\/configuration.yaml<\/code> :<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">advanced: # F\u00fcgt \"last_seen\" in MQTT-Nachrichten hinzu # M\u00f6gliche Werte: disable, ISO_8601, ISO_8601_local, epoch last_seen: ISO_8601_local<\/pre>\n<p>Diese Einstellung weist Zigbee2MQTT an, das Attribut <code>last_seen<\/code> MQTT-Nachrichten in einem Format, das in lokaler Zeit lesbar ist.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Formats_utiles_pour_choisir\"><\/span>N\u00fctzliche Formate (zur Auswahl)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><strong>ISO_8601_local<\/strong> : lesbar + lokale Zeitzone (am bequemsten im Alltag).<\/li>\n<li><strong>ISO_8601<\/strong> : lesbar, aber in UTC (n\u00fctzlich, um alles in UTC zu zentralisieren).<\/li>\n<li><strong>Epoch<\/strong> : timestamp Unix (Praxis f\u00fcr Skripte\/Verarbeitungen).<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%A7%A9_Activer_last_seen_et_linkquality_%E2%80%9Cpar_defaut%E2%80%9D_dans_Home_Assistant_facultatif\"><\/span>\ud83e\udde9 Aktivieren <code>last_seen<\/code> und <code>linkquality<\/code> \u201eStandard\u201c im Home Assistant (optional)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10857\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202311.png\" alt=\"\" width=\"328\" height=\"187\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202311.png 328w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-202311-300x171.png 300w\" sizes=\"auto, (max-width: 328px) 100vw, 328px\" \/><\/p>\n<p>Einmal <code>last_seen<\/code> Bei aktiviertem Zigbee2MQTT gibt es noch einen Punkt: In Home Assistant werden diese Entit\u00e4ten h\u00e4ufig als \u201eDiagnose\u201c eingestuft, sodass sie erstellt werden k\u00f6nnen, aber <strong>deaktiviert<\/strong> automatisch.<\/p>\n<p>Damit jedes neu hinzugef\u00fcgte Zigbee-Ger\u00e4t direkt \u201ezur \u00dcberwachung bereit\u201c ist, f\u00fcge ich Folgendes hinzu: <code>\/config\/zigbee2mqtt\/configuration.yaml<\/code> :<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">device_options: HomeAssistent: last_seen: enabled_by_default: true linkquality: enabled_by_default: true<\/pre>\n<p>Dann starte ich Zigbee2MQTT neu.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Important_impact_sur_les_appareils_deja_installes\"><\/span>Wichtig: Auswirkungen auf bereits installierte Ger\u00e4te<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Diese Einstellung hilft vor allem den <strong>neue Ger\u00e4te<\/strong> (oder wiederentdeckte Ger\u00e4te).<br \/>\nF\u00fcr bereits vorhandene Ger\u00e4te m\u00fcssen die entsprechenden Entit\u00e4ten im Home Assistant oft manuell aktiviert werden.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%97%84%EF%B8%8F_Base_de_donnees_garder_linfo_visible_sans_%E2%80%9Cpolluer%E2%80%9D_lhistorique\"><\/span>\ud83d\uddc4gest\u00fctzte Datenbank: Info sichtbar halten, ohne die Historie zu \u201everschmutzen\u201c<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Das \u201eRisiko\u201c ist nicht so sehr Zigbee2MQTT (es f\u00fcgt nur ein Timestamp-Feld in Nachrichten hinzu), sondern eher Home Assistant, wenn jedes Update von <code>last_seen<\/code> in der Basis: Dies kann zu vielen Schreibvorg\u00e4ngen mit vielen Sensoren f\u00fchren.<\/p>\n<p>Meine Wahl: Ich will <strong>siehe<\/strong> Diese Werte sind \u00fcberall vorhanden, aber ich brauche keine Graphen pro Minute. Ich schlie\u00dfe diese Einheiten daher vom Recorder aus.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Ce_que_je_mets_dans_configrecordersyaml\"><\/span>Was ich in <code>\/config\/recorders.yaml<\/code><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">Recorder: ausgenommen: entity_globs: - sensor.*_last_seen - sensor.*_linkquality<\/pre>\n<p>Danach starte ich Home Assistant neu: Die Werte bleiben in Echtzeit sichtbar, aber ich schr\u00e4nke die Erstellung unn\u00f6tiger Historie stark ein.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%97%BA%EF%B8%8F_Supervision_visuelle_un_plan_%E2%80%9Cradio_fraicheur%E2%80%9D\"><\/span>\ud83d\uddfa\uf0b7 Visuelle \u00dcberwachung: ein \u201eRadio + Frische\u201c-Plan<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Ich wollte keine \u201ain einer Liste verlorene Einrichtung\u2018: Ich wollte <strong>Visuelle \u00dcberwachung<\/strong>, sofort lesbar.<\/p>\n<p>Grundsatz:<\/p>\n<ul>\n<li>Jedes Zigbee-Ger\u00e4t erscheint als kleines Rechteck auf einer Ebene.<\/li>\n<li>Die angezeigte Zahl im Gro\u00dfen und Ganzen = <strong>Linkquality<\/strong>.<\/li>\n<li>Die Zeit unten rechts = <strong>Last_seen<\/strong> relativ (s \/ m \/ h \/ d).<\/li>\n<li>Schwarzer Rahmen = Router (variabel) <strong>Router: 1<\/strong>), um Router schnell zu erkennen.<\/li>\n<\/ul>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10840\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-184703.png\" alt=\"\" width=\"282\" height=\"236\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"%F0%9F%A7%B0_La_carte_%E2%80%9Cdecluttering%E2%80%9D_reutilisable\"><\/span>\ud83e\uddf0 Die Karte \u201edecluttering\u201c (wiederverwendbar)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Ich nutze die Magie der Karte decluttering_templates, die ich vor 3 Jahren auf dieser Seite beschrieben habe:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.sigalou-domotique.fr\/de\/utilisation-de-la-carte-decluttering-card\/\" target=\"_blank\" rel=\"noopener\">Verwendung der Decluttering Card<\/a><\/li>\n<\/ul>\n<p>Auf diese Weise <code>decluttering_templates<\/code> + <code>custom:decluttering-card<\/code> Sie k\u00f6nnen dieselbe Komponente \u00fcberall wiederverwenden, indem Sie nur 4 Variablen \u00e4ndern.<\/p>\n<p>Ich definiere einfach 4 Elemente, die f\u00fcr jedes Ger\u00e4t unterschiedlich sind:<\/p>\n<ul>\n<li>Gebiet: Es ist der Sensor, der verarbeitet wird<\/li>\n<li>top: Seine Position von oben<\/li>\n<li>left: Seine Position von links<\/li>\n<li>Router: 1 wenn es sich um einen Router handelt, ansonsten 0<\/li>\n<\/ul>\n<h4><span class=\"ez-toc-section\" id=\"Exemple_page_Dashboard_tres_simple\"><\/span>Beispiel: Sehr einfache Dashboard-Seite<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">Typ: picture-elements image: \/local\/home\/1920x1000\/off_0800.png elements: - Typ: custom:decluttering-card template: linkquality Variablen: - Gebiet: sensor.lume_chambre_parents - top: 20% - left: 35% - Router: 1 - Typ: custom:decluttering-card template: linkquality Variablen: - Gebiet: sensor.fenetre_de_la_chambre_des_parents - top: 15% - left: 37% - Router: 0<\/pre>\n<h4><span class=\"ez-toc-section\" id=\"Le_template_linkquality_le_%E2%80%9Cgros_morceau%E2%80%9D\"><\/span>Das Template <code>linkquality<\/code> (\u201agro\u00dfes St\u00fcck\u2018)<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">decluttering_templates: linkquality: default: - top: 5% - left: 95% - Router: 0 element: Typ: custom:button-card entity: | [[return \u00bf[zone]]_linkquality\u00bf; ]]] show_icon: false name: | [[ return '[[zone]]' .replace(\/^sensor\\.\/i, '') .replace(\/_\/g, ' ') .trim(); ]]] show_state: true show_units: false custom_fields: lastseen: | [[const obj = states[\u00bf[[zone]]_last_seen\u00bf]; if (!obj ||!obj.state || obj.state === 'unavailable') return '!!'; const last = new Date(obj.state); if (isNaN(last.getTime())) return '!!'; const now = new Date(); const seconds = Math.floor((now - last) \/ 1000); if (zweite &lt; 60) return `${seconds}s\u00bf; const minutes = Math.floor(seconds \/ 60); if (Minuten &lt; 60) return `${Minuten}m\u2032; const hours = Math.floor(Minuten \/ 60); if (hours &lt; 24) return `${hours}h\u00bf; const days = Math.floor(hours \/ 24); return `${days}d\u00bf; ]]] Stile: Card: - Border: | [[Return ([Router]] == 1)? '2px solid black': 'none'; ]]] - box-shadow: none - Position: relativ - border-radius: 8px - min-width: 100px - height: 45px - Anzeige: flex - flex-direktion: column - justify-content: center - align-items: center - color: white name: - font-size: 10px - line-height: '1' - padding: 0 - Margin: 0 - text-align: center - color: white - flex: 1 - max-width: 95px - word-wrap: break-word - overflow: hidden - white-space: normal state: - font-size: 15px - font-weight: bold - line-height: '1' - padding: 0 - Margin: 0 - text-align: center - color: white - flex: 1 custom_fields: lastseen: - Position: Absolute - Bottom: 0px - right: 0px - font-size: 10px - color: black - padding: 2px 4px - border-radius: 4px - box-shadow: 0 1px 3px rgba(0,0,0,0.3) - Hintergrund: | [[const obj = states[\u00bf[[zone]]_last_seen\u00bf]; if (!obj ||!obj.state) return 'rgba(128,128,128,0.5)'; const last = new Date(obj.state); const now = new Date(); const seconds = Math.floor((now - last) \/ 1000); if (zweite &lt; 1200) return 'rgba(0,255,0,0.9)'; \/\/ Gr\u00fcn &lt;20min if (zweite &lt; 1800) return 'rgba(255,255,0,0.9)'; \/\/ Gelb 20-30min if (zweite &lt; 7200) return 'rgba(255,165,0,0.9)'; \/\/ Orange &lt;2h return 'rgba(255,0,0,0.9)'; \/\/ Rot &gt;2h ]]] state: - value: unavailable Stile: Card: - Hintergrund: rgba(255,0,0,0.3) - operator: '&gt;' value: 200 Stile: Card: - Hintergrund: rgba(0,180,0,0.3) - operator: '&gt;' value: 150 Stile: Card: - Hintergrund: rgba(34,255,34,0.3) - operator: '&gt;' value: 130 Stile: Card: - Hintergrund: rgba(255,255,0,0.3) - operator: '&gt;=' value: 80 Stile: Card: - Hintergrund: rgba(255,165,0,0.3) - operator: '&lt;' value: 80 Stile: Card: - Hintergrund: rgba(255,107,53,0.3) Stil: top: '[[top]]' left: '[[left]]'<\/pre>\n<h4><span class=\"ez-toc-section\" id=\"Simplement_que_fait_ce_code\"><\/span>Was macht dieser Code eigentlich?<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>Dieses Template definiert eine einzigartige Kartenvorlage, die du f\u00fcr alle deine Zigbee-Ger\u00e4te wiederverwendest, indem du nur die Variable [[zone]] \u00e4nderst.<\/p>\n<p>Die entity-Eigenschaft wird dynamisch in JavaScript ([[[\u2026 ]]]) erstellt, um auf die Entit\u00e4t [[zone]]_linkquality zu verweisen, wodurch die Linkqualit\u00e4t des Ger\u00e4ts automatisch angezeigt wird (LQI-Wert, der von Zigbee2MQTT oder ZHA abgerufen wird).<\/p>\n<p>Auch der Name wird clientseitig generiert: Das Pr\u00e4fix sensor wird entfernt, dann werden die _ durch Leerzeichen ersetzt und ein trim() erstellt, was eine lesbare Beschriftung aus der Entit\u00e4ts-ID ergibt.<\/p>\n<p>Das benutzerdefinierte Feld lastseen liest die Entit\u00e4t [[zone]]_last_seen in states[], konvertiert ihren Wert in das Datumsobjekt und berechnet dann die Differenz zur aktuellen Zeit, um eine relative Zeit (s, m, h, d) anzuzeigen. Wenn der Wert leer, unavailable oder ung\u00fcltig ist, zeigt er !! an, anstatt einen inkonsistenten Wert erscheinen zu lassen.<\/p>\n<p>Der Stil des Lastseen-Badges unten rechts verwendet eine JavaScript-Funktion, die je nach Alter der letzten Kommunikation eine andere RGBA-Farbe zur\u00fcckgibt (grau, wenn kein Wert, dann gr\u00fcn \u2192 gelb \u2192 orange \u2192 rot je nach Anzahl der verstrichenen Sekunden), wodurch die Frische der Daten visuell kodiert wird.<\/p>\n<p>Die Sektion state: Die button-card legt mehrere Schwellenwerte f\u00fcr den LinkQuality-Wert fest: nicht verf\u00fcgbar, dann Scheiben &gt;200, &gt;150, &gt;130, &gt;=80, &lt;80, die jeweils einen kartenspezifischen farbigen Hintergrund anwenden, wodurch ein numerischer Wert in einen sofort lesbaren Radioqualit\u00e4tsindikator umgewandelt wird.<\/p>\n<p>Die Formatierungseigenschaften (flex, min-width, height, border-radius, absolute Badge-Position usw.) sorgen f\u00fcr eine kompakte und gleichm\u00e4\u00dfige Darstellung mit einem optionalen schwarzen Rand, wenn [[router]] == 1 ist, um Zigbee-Router im Vergleich zu einfachen Terminals visuell zu identifizieren.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%A7%A0_Ajouts_utiles_infos_%E2%80%9Csante%E2%80%9D_globales_Zigbee2MQTT\"><\/span>\ud83e\udde0 N\u00fctzliche Erg\u00e4nzungen: Globale Gesundheitsinformationen Zigbee2MQTT<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-11012\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-10-220310.png\" alt=\"\" width=\"516\" height=\"552\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-10-220310.png 516w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-10-220310-280x300.png 280w\" sizes=\"auto, (max-width: 516px) 100vw, 516px\" \/><\/p>\n<h3><span class=\"ez-toc-section\" id=\"Voici_le_code_de_cette_carte\"><\/span>Hier ist der Code dieser Karte<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">Typ: picture-elements image: \/local\/home\/1920x1000\/off_0800.png elements: - Typ: custom:mod-card card: Typ: entities title: Zigbee2MQTT show_header_toggle: false entities: - entity: switch.zigbee2mqtt_bridge_permit_join name: Aufnahme zulassen - entity: button.zigbee2mqtt_bridge_restart name: Neustart - entity: select.zigbee2mqtt_bridge_log_level name: Log-Level - Entity: binary_sensor.zigbee2mqtt_bridge_connection_state name: Verbindungsstatus - Typ: custom:template-entity-row name: Gestartet seit state: &gt; {% set e = states.binary_sensor.zigbee2mqtt_bridge_connection_state %} {% if e is not none and e.state not in ['unavailable', 'unknown'] %} {{ ((now() - e.last_changed).total_seconds() \/ 3600) | round(1) }} h {% else %} Nicht verf\u00fcgbar {% endif %} - entity: sensor.zigbee2mqtt_bridge_coordinator_version name: Koordinierende Version - entity: sensor.zigbee2mqtt_bridge_version name: Version Zigbee2MQTT - entity: sensor.number_de_Sensoren_linkq_en_Fehlername: Unerreichbare Icons: mdi:alert-circle - entity: sensor.number_de_Sensoren_linkq name: Gesamt-Icon: mdi:devices - entity: sensor.zigbee_linkquality_Mittelname: Durchschnittliche LinkQuality Icon: mdi:signal style: top: 35% left: 75% width: 450px<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Jai_ajoute_un_capteur_pour_calculer_la_moyenne_de_Linkquality\"><\/span>Ich habe einen Sensor hinzugef\u00fcgt, um den Mittelwert von Linkquality zu berechnen.<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10845\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192042.png\" alt=\"\" width=\"437\" height=\"48\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192042.png 437w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192042-300x33.png 300w\" sizes=\"auto, (max-width: 437px) 100vw, 437px\" \/><\/p>\n<p>Dieser Sensor wird in die Datei templates.yaml eingef\u00fcgt, hier sein Code:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">- name: \"zigbee_linkquality_mittel\"einzigartig_id: zigbee_linkquality_durchschnittlich unit_of_measurement: \"LQI\" state_class: measurement state: &gt;- {% set linkqualities = states.sensor | selectattr('entity_id', 'search', '_linkquality') | selectattr('state', 'is_number') | map(attribute='state') | map('float') | list %} {% if linkqualities | length &gt; 0 %} {{ (linkqualities | sum \/ linkqualities | length) | round(1) }} {% else %} 0 {% endif %}<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Jai_ajoute_un_capteur_pour_calculer_le_nombre_de_capteurs\"><\/span>Ich habe einen Sensor hinzugef\u00fcgt, um die Anzahl der Sensoren zu berechnen<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10846\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192227.png\" alt=\"\" width=\"445\" height=\"49\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192227.png 445w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192227-300x33.png 300w\" sizes=\"auto, (max-width: 445px) 100vw, 445px\" \/><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">- name: Einzigartige _id \"Anzahl der Linkq-Sensoren\": sensor.number_sensoren_linkq state: &gt;- {% set lq_sensors = states.sensor | selectattr('entity_id', 'search', '_linkquality$') | list %} {{ lq_sensors | count }} icon: mdi:signal-variant unit_of_measurement: \"Sensoren\"<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Jai_ajoute_un_capteur_pour_calculer_le_nombre_dappareils_en_erreur\"><\/span>Ich habe einen Sensor hinzugef\u00fcgt, um die Anzahl der fehlerhaften Ger\u00e4te zu berechnen<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10847\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192328.png\" alt=\"\" width=\"445\" height=\"48\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192328.png 445w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192328-300x32.png 300w\" sizes=\"auto, (max-width: 445px) 100vw, 445px\" \/><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">- name: \"Anzahl der Linkq-Sensoren irrt\u00fcmlich\" einzelne_id: sensor.number_sensoren_linkq_error state: &gt;- {% set lq_sensors = states.sensor | selectattr('entity_id', 'search', '_linkquality$') | selectattr('state', 'in', ['unavailable', 'unknown', 'None']) | list %} {{ lq_sensors | count }} icon: mdi:alert-circle unit_of_measurement: \"Sensoren\"\r\n<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"Jai_ajoute_un_indicateur_sur_le_dasboard_principal_pour_signaler_le_nombre_en_erreur\"><\/span>Ich habe einen Indikator auf dem Haupt-Dasboard hinzugef\u00fcgt, um die falsche Zahl anzuzeigen<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10848\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192533.png\" alt=\"\" width=\"68\" height=\"57\" \/><\/p>\n<p>Zuerst wird dieses Template angezeigt, um xx falsch \/ yy insgesamt anzuzeigen<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">- name: \"zigbee_injonable_synthese\" einzigartig_id: sensor.zigbee_injoignables_synthese state: &gt;- {{ states('sensor.number_de_sensors_linkq_en_error') }}\/{{ states('sensor.number_de_sensors_linkq') }} icon: mdi:alert-circle<\/pre>\n<p>Und in meinem picture-elements f\u00fcge ich hinzu:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">- Typ: conditional Bedingungen: - Bedingung: State Entity: sensor.number_de_Sensoren_linkq_en_Fehler state_not: \"0\" Elemente: - Typ: custom:button-card entity: sensor.zigbee_injoignables_synthese icon: mdi:zigbee show_name: false show_state: True Style: top: 5% left: 5% transform: translate(-50%, -50%) Stile: state: - color: red - font-weight: 700 - font-size: 16px Icon: - color: red - width: 20px - height: 20px Karte: Border-Radius: 999px - padding: 4px 6px - Hintergrund: transparent - box-shadow: none<\/pre>\n<p>Dieser Block wird verwendet, um eine kleine rote Anzeige \"Zigbee irrt\u00fcmlich\" auf dem Dashboard-Plan anzuzeigen <strong>nur<\/strong> wenn es mindestens einen problematischen Sensor gibt.<\/p>\n<p>Es handelt sich um ein bedingtes Element in einer Picture-Elements-Karte: es zeigt seinen Inhalt nur an, wenn sensor.number_de_sensors_linkq_en_Fehler von \"0\" abweicht (wenn also mindestens ein Sensor nicht erreichbar oder LinkQuality-Fehler ist).<\/p>\n<p>Wenn die Bedingung wahr ist, wird eine custom:button-card angezeigt, die auf sensor.zigbee_injoignables_synthese basiert und wahrscheinlich Text im Stil \"3 irrt\u00fcmlich\" oder \u00e4hnlich enth\u00e4lt.<\/p>\n<p>Die Schaltfl\u00e4che befindet sich oben links auf der Ebene (5\u202f% \/ 5\u202f%), zentriert durch transform: translate(-50%, -50%), mit transparentem Hintergrund und ohne Schatten, um nur das Zigbee-Symbol und den Text zu behalten.<\/p>\n<p>Das Zigbee-Symbol und der Status sind in roter, fetter und 16 px-Gr\u00f6\u00dfe mit einem Border-radius gestaltet: 999px, um ein Pastillen-\/Etikett-Look zu verleihen, wodurch es zu einer diskreten, aber gut sichtbaren visuellen Warnung wird, solange Sensoren irregef\u00fchrt werden.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Pour_savoir_qui_est_en_erreur\"><\/span>Um herauszufinden, wer falsch liegt<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10849\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192955.png\" alt=\"\" width=\"504\" height=\"134\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192955.png 504w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-192955-300x80.png 300w\" sizes=\"auto, (max-width: 504px) 100vw, 504px\" \/><\/p>\n<p>Um die Liste der irrt\u00fcmlichen Ger\u00e4te auf einen Blick zu sehen, finden Sie hier die erforderlichen Codes.<\/p>\n<p>Die Deklaration der Templates<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">- name: \"Anzahl der Linkq-Sensoren irrt\u00fcmlich\" einzelne_id: sensor.number_sensoren_linkq_error state: &gt;- {% set lq_sensors = states.sensor | selectattr('entity_id', 'search', '_linkquality$') | selectattr('state', 'in', ['unavailable', 'unknown', 'None']) | list %} {{ lq_sensors | count }} icon: mdi:alert-circle unit_of_measurement: \"Sensoren\" - name: \"Linkquality Sensor List in T\u00e4uschung\" einzelne_id: sensor.liste_sensoren_linkquality_error state: &gt;- {% set lq_sensors = states.sensor | selectattr('entity_id', 'search', '_linkquality$') | selectattr('state', 'in', ['unavailable', 'unknown', 'None']) | map(attribute='entity_id') | map('regex_replace', 'sensor\\\\\\\\\\\\\\\\.(.*)_linkquality$', '\\\\\\\\\\\\\\\\1') | list %} {% set count = lq_sensors | length %} {% if count == 0 %} Keine {% elif count &lt;= 5 %} {{ lq_sensors | join(', ') }} {% else %} {{ lq_sensors[:5] | join(', ') ~ ' + ' ~ count }} {% endif %} Attribute: count: &gt;- {% set lq_sensors = states.sensor | selectattr('entity_id', 'search', '_linkquality$') | selectattr('state', 'in', ['unavailable', 'unknown', 'None']) | map(attribute='entity_id') | map('regex_replace', 'sensor\\\\\\\\\\\\\\\\.(.*)_linkquality$', '\\\\\\\\\\\\\\\\1') | list %} {{ lq_sensors | length }} full_list: &gt;- {% set lq_sensors = states.sensor | selectattr('entity_id', 'search', '_linkquality$') | selectattr('state', 'in', ['unavailable', 'unknown', 'None']) | map(attribute='entity_id') | map('regex_replace', 'sensor\\\\\\\\\\\\\\\\.(.*)_linkquality$', '\\\\\\\\\\\\\\\\1') | list %} {{ lq_sensors | join(', ') | default('Keine') }} icon: mdi:alert-circle\r\n\r\n<\/pre>\n<p>Und auf dem Dasboard, immer im picture-elements<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">Typ: picture-elements image: \/local\/home\/1920x1000\/off_0800.png elements: - Typ: custom:mod-card card: Typ: entities title: Zigbee Sensoren irrt\u00fcmlich entities: - Typ: custom:template-entity-row entity: sensor.liste_Sensoren_linkquality_en_Fehlername: Liste der Staaten: &gt; {% set s = states('sensor.list_sensors_linkquality_en_error') %} {% if s not in ['unknown', 'unavailable', ''] %} {{ s.replace(',', '\\\\\\\\n') }} {% else %} Keine {% endif %} Stil: top: 80% left: 75% width: 450px\r\n<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"%E2%9C%85_Recapitulatif_simple_les_3_blocs_indispensables\"><\/span>\u2705 Einfache Zusammenfassung (die 3 unentbehrlichen Bl\u00f6cke)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"1_Zigbee2MQTT_activer_last_seen\"><\/span>1. Zigbee2MQTT: last_seen aktivieren<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">advanced: last_seen: ISO_8601_local<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"2_Zigbee2MQTT_activer_par_defaut_dans_HA_optionnel_mais_pratique\"><\/span>2. Zigbee2MQTT: Standardeinstellung in HA aktivieren (optional, aber praktisch)<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">device_options: HomeAssistent: last_seen: enabled_by_default: true linkquality: enabled_by_default: true<\/pre>\n<h3><span class=\"ez-toc-section\" id=\"3_Home_Assistant_ne_pas_enregistrer_ces_entites_dans_la_DB\"><\/span>3. Home Assistent: diese Entit\u00e4ten nicht in der DB registrieren<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\">Recorder: ausgenommen: entity_globs: - sensor.*_last_seen - sensor.*_linkquality<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"%F0%9F%8E%AF_Ce_que_ca_change_au_quotidien\"><\/span>\ud83c\udfaf Was sich im Alltag \u00e4ndert<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li><strong>Ich sehe sofort<\/strong> schwache Bereiche (linkquality niedrig) und ich wei\u00df, was zu st\u00e4rken (Router, Platzierung, Kanal, etc.).<\/li>\n<li><strong>Ich wei\u00df genau<\/strong> wenn eine Sirene aufgeh\u00f6rt hat zu sprechen (last_seen), so \u201evermute\u201c ich nicht mehr.<\/li>\n<li><strong>Ich habe eine gesunde Datenbank<\/strong> (keine unn\u00f6tige Historie auf Sensoren, die sich st\u00e4ndig bewegen)<\/li>\n<\/ul>\n<p><a href=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937.png\" target=\"_blank\" rel=\"noopener\"><br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-10839\" src=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937.png\" alt=\"\" width=\"1541\" height=\"885\" srcset=\"https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937.png 1541w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-300x172.png 300w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-1024x588.png 1024w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-768x441.png 768w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-1536x882.png 1536w, https:\/\/www.sigalou-domotique.fr\/wp-content\/uploads\/2026\/03\/Capture-decran-2026-03-01-183937-600x345.png 600w\" sizes=\"auto, (max-width: 1541px) 100vw, 1541px\" \/><br \/>\n<\/a><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Besoin_de_precisions_des_questions\"><\/span>Brauchen Sie weitere Informationen? - Fragen?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Diese Diskussion (falls noch offen) steht zur Verf\u00fcgung:<\/p>\n<p><a href=\"https:\/\/forum.hacf.fr\/t\/retex-je-surveille-visuellement-mon-reseau-zigbee-linkquality-last-seen\/76732\" target=\"_blank\" rel=\"noopener\">https:\/\/forum.hacf.fr\/t\/retex-je-surveille-visuellement-mon-reseau-zigbee-linkquality-last-seen\/76732<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Ziel: zwei wichtige Informationen f\u00fcr jedes Zigbee-Ger\u00e4t sichtbar (und verwertbar) zu machen: linkquality (Radiogesundheit) und last_seen (letzte Kommunikation) Dies dient dazu, eine \u201everlorene\u201c Sirene oder HS-Batterie sofort zu erkennen, ohne darauf zu warten, dass sie zuf\u00e4llig entdeckt wird. \ud83e\udded Warum ich das eingerichtet habe Mit 69 Zigbee-Ger\u00e4ten hatte ich keine [\u2026]<\/p>","protected":false},"author":1,"featured_media":10835,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[14,53],"tags":[],"class_list":["post-10829","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-domotique","category-home-assistant"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/posts\/10829","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/comments?post=10829"}],"version-history":[{"count":0,"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/posts\/10829\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/media\/10835"}],"wp:attachment":[{"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/media?parent=10829"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/categories?post=10829"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sigalou-domotique.fr\/de\/wp-json\/wp\/v2\/tags?post=10829"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}