RSSI - die Wahrheit?
Verfasst: 12.01.2019, 20:09
Hi,
weil ja zur Zeit offensichtlich RSSI der neue, nachgefragte Hype im Forum ist, will ich da einfach mal ein bisschen die Luft aus dem Hype rauslassen.
Klar habe ich auch schon regelmäßig mit den RSSI-Werten die Zuordnung der Geräte auf die Gateways angepasst, und es ist sicherlich ein hilfreiches Instrument, aber: Man sieht das für genau einen einzigen Augenblick. Es hat schon mal jemand den zeitlichen Verlauf von RSSI-Werten gepostet, ich weiß aber nicht mehr, ob es nur für HmIP-Geräte war, die liefern bei jedem Event automatisch die RSSI-Werte als Event mit, so das man die mit z.B. ioBroker relativ einfach wegschreiben kann, aber da hat man ja bekanntlich nur die Möglichkeit zu routen, keine alternative Antenne.
Ich habe meinem Logger was neues beigebracht, der schreibt jetzt alle 5 min die RSSI-Werte für klassisches HM, bei Geräten die seit dem letzten Ausschreiben ein Event gemeldet haben, in eine Datenbank-Tabelle. Warum nur die, die seit dem letzten Ausschreiben ein Event gemeldet haben? Weil ich nicht 287 unnötige Werte für z.B. einen Drehgriffsensor schreiben will, der nicht betätigt wurde, und nur ca. alle 24h seine zyklische Meldung macht, nur dann kann es einen "frischen" Wert geben.
Das was da rauskommt, ist ein ziemlicher Zahlenwust, der gezielt für einen Aktor, für ein Gateway, für eine Senderichtung (mich interessiert hier erstmal nur der Empfang auf der Zentrale bzw. den Gateways), noch relativ einfach per SQL-Abfrage rausgefiltert werden kann, das ganze grafisch darzustellen ist schon wieder die nächste Herausforderung.
Um evtl. mehrere Aktoren gleichzeitig zu betrachten, habe ich aus den "linear" gespeicherten Tupeln per stored Procedure eine Pivot(Kreuztabellenabfrage) gemacht, um z.B. von ausgewählten Gerätetypen alle Empfangswerte des zugeordneten Defaultgateways in eine Tabelle zu bekommen, jede Zeilen ist ein Zeitpunkt, und jede Spalte ist ein Gerät, als Zeitraum z.B. ein Tag (24h).
Ich habe mir jetzt einfach mal alle meine Energiemessaktoren HM-ES-PMSw1-* ausgewertet, weil die von Haus aus eigentlich min. ein Event pro 5 min liefern sollten, und damit die Tabelle auch überall Werte enthalten müsste. Meine CCU2 (raspi 3b, mit piVCCU2 2.41.5 und HM-MOD-RPI-PCB, mit externer Aurel GP an einem 3m langen AirCell 7 Kabel) ist im Keller, im EG und OG sind jeweils echte HM-LGW-O-TW-W-EU ohne Modifikationen.
Ohne jetzt weiter zu langweilen, hier das Chart, als Box-Whisker Darstellung, da ist min/max, sowie die Percentile und der Mittelwert sichtbar (fragt mich bitte nicht, welche Percentile genau, und ob der Mittelwert vielleicht auch ein Meridian ist, das ist das, was Excel 2016 aus den Eingangsdaten in eine "Kastengrafik" macht) Die 14 ersten "Balken" sind die RSSI-Werte der Geräte, die der CCU-Antenne zugeordnet sind, dann kommen 4 Stück, die dem Gateway im EG zugeordnet sind, und 2 Stück, die dem GW im OG zugeordnet sind. Was springt ins Auge? Die RSSI-Werte der CCU2 enthalten "alles", praktisch jedes Gerät wird irgendwann mal mit -30 db empfangen, aber auch jedes dieser ortsunveränderlichen Geräte wird irgendwann auch mal mit -85 db und schlechter Empfangen, der großteil spielt sich zwischen -40 db und -60 db ab, der Mittelwert schwankt um -50db. Aber das streut, ganz gewaltig.
Im Gegensatz zu den Werten der Gateways, die haben sehr "stabile", RSSI-Werte im Empfang, so wie ich es eigentlich auch für die CCU2 erwartet habe.
Falls jetzt ein kommt, und will wissen, ob sich die Empfangsprobleme/Schwankungen zeitlich in einen Zusammenhang setzen lassen:
Nein, ich hab einfach mal auf die Daten eine bedingte Formatierung gelegt, da sieht man, das es bei den Gateway immer die "gleiche" Farbe=RSSI-Wert ist, aber bei den Werten der Zentrale innerhalb einer Zeile "alle Farben" vorhanden sind...
Mit meiner echten, unmodifizierten Test-CCU2 kann ich leider keine wirklichen Gegentests machen, weil mir dazu die Menge an Geräten fehlt.
Da die RSSI-Funktion vom rfd alle Werte, auch die der nicht zugewiesenen Gateways ausspuckt, habe ich auch noch Charts für die Alternative 1 und Alternative 2 gemacht, aufgrund der Sortierung in der Stored-Procedure beim Kreuztabellen-Anlegen wird immer zuerst nach dem Gateway-Namen und dann nach der Seriennummer sortiert, also ist der 1. Balken im Default-GW-Chart NICHT das gleiche Gerät wie im Chart Alternative 1 bzw. 2! Im Chart zum alternativen Gateway 2 sind nur die HM-LGW-O-TW-W-EU enthalten, da sieht man, das bis auf wenige Ausreißer alle relativ stabile Werte liefern, im Chart zum alternativen Gateway 1 sind die ersten 6 stark streuenden Balken wieder die Empfangswerte der CCU.
Was soll uns das sagen? Es macht evtl. keinen Sinn, sich aufgrund besserer oder schlechterer RSSI-Werte bei der Zentralenantenne verrückt zu machen, und die Geräte alle 3 Tage auf ein "vermeintlich" besseres Gateway zu schieben. Einfach logisch vorgehen, was müsste eigentlich von der Zentrale besser empfangen werden, das gehört im ersten Schritt dahin, wenn es dann regelmäßig Kommunikationsstörungen hagelt, dann kann man das Gerät, obwohl es "unsinnig" erscheint, einem Gateway zuordnen, und da kann man sich halbwegs an den RSSI-Werten orientieren um das beste zu wählen. Nochmal kurz der Hinweis, die ganze Geschichte hier ist rein auf den Empfangswerten basiert, wenn ein Gerät regelmäßig angefunkt werden muss, gelten "natürlich" andere Regeln, die habe ich aber jetzt nicht untersucht.
Wer es nachmachen will, es macht keinen Spaß , ich habe mehrere Anläufe gebraucht, um die Daten in ein auswertbares Format zu transformieren, und Excel ist sch**ße, immerhin kann 2016 die Box-Whiskers inzwischen "automatisch", aber die meisten Eigenschaften sind nicht per VBA automatisierbar, da ist echt bei jedem Diagramm mühsame Hand-Nacharbeit für jede Datenreihe einzeln nötig, ich muss mir unbedingt mal anschauen, was die SQL-Server-Reportengine da so drauf hat...
Der Familienvater
weil ja zur Zeit offensichtlich RSSI der neue, nachgefragte Hype im Forum ist, will ich da einfach mal ein bisschen die Luft aus dem Hype rauslassen.
Klar habe ich auch schon regelmäßig mit den RSSI-Werten die Zuordnung der Geräte auf die Gateways angepasst, und es ist sicherlich ein hilfreiches Instrument, aber: Man sieht das für genau einen einzigen Augenblick. Es hat schon mal jemand den zeitlichen Verlauf von RSSI-Werten gepostet, ich weiß aber nicht mehr, ob es nur für HmIP-Geräte war, die liefern bei jedem Event automatisch die RSSI-Werte als Event mit, so das man die mit z.B. ioBroker relativ einfach wegschreiben kann, aber da hat man ja bekanntlich nur die Möglichkeit zu routen, keine alternative Antenne.
Ich habe meinem Logger was neues beigebracht, der schreibt jetzt alle 5 min die RSSI-Werte für klassisches HM, bei Geräten die seit dem letzten Ausschreiben ein Event gemeldet haben, in eine Datenbank-Tabelle. Warum nur die, die seit dem letzten Ausschreiben ein Event gemeldet haben? Weil ich nicht 287 unnötige Werte für z.B. einen Drehgriffsensor schreiben will, der nicht betätigt wurde, und nur ca. alle 24h seine zyklische Meldung macht, nur dann kann es einen "frischen" Wert geben.
Das was da rauskommt, ist ein ziemlicher Zahlenwust, der gezielt für einen Aktor, für ein Gateway, für eine Senderichtung (mich interessiert hier erstmal nur der Empfang auf der Zentrale bzw. den Gateways), noch relativ einfach per SQL-Abfrage rausgefiltert werden kann, das ganze grafisch darzustellen ist schon wieder die nächste Herausforderung.
Um evtl. mehrere Aktoren gleichzeitig zu betrachten, habe ich aus den "linear" gespeicherten Tupeln per stored Procedure eine Pivot(Kreuztabellenabfrage) gemacht, um z.B. von ausgewählten Gerätetypen alle Empfangswerte des zugeordneten Defaultgateways in eine Tabelle zu bekommen, jede Zeilen ist ein Zeitpunkt, und jede Spalte ist ein Gerät, als Zeitraum z.B. ein Tag (24h).
Ich habe mir jetzt einfach mal alle meine Energiemessaktoren HM-ES-PMSw1-* ausgewertet, weil die von Haus aus eigentlich min. ein Event pro 5 min liefern sollten, und damit die Tabelle auch überall Werte enthalten müsste. Meine CCU2 (raspi 3b, mit piVCCU2 2.41.5 und HM-MOD-RPI-PCB, mit externer Aurel GP an einem 3m langen AirCell 7 Kabel) ist im Keller, im EG und OG sind jeweils echte HM-LGW-O-TW-W-EU ohne Modifikationen.
Ohne jetzt weiter zu langweilen, hier das Chart, als Box-Whisker Darstellung, da ist min/max, sowie die Percentile und der Mittelwert sichtbar (fragt mich bitte nicht, welche Percentile genau, und ob der Mittelwert vielleicht auch ein Meridian ist, das ist das, was Excel 2016 aus den Eingangsdaten in eine "Kastengrafik" macht) Die 14 ersten "Balken" sind die RSSI-Werte der Geräte, die der CCU-Antenne zugeordnet sind, dann kommen 4 Stück, die dem Gateway im EG zugeordnet sind, und 2 Stück, die dem GW im OG zugeordnet sind. Was springt ins Auge? Die RSSI-Werte der CCU2 enthalten "alles", praktisch jedes Gerät wird irgendwann mal mit -30 db empfangen, aber auch jedes dieser ortsunveränderlichen Geräte wird irgendwann auch mal mit -85 db und schlechter Empfangen, der großteil spielt sich zwischen -40 db und -60 db ab, der Mittelwert schwankt um -50db. Aber das streut, ganz gewaltig.
Im Gegensatz zu den Werten der Gateways, die haben sehr "stabile", RSSI-Werte im Empfang, so wie ich es eigentlich auch für die CCU2 erwartet habe.
Falls jetzt ein kommt, und will wissen, ob sich die Empfangsprobleme/Schwankungen zeitlich in einen Zusammenhang setzen lassen:
Nein, ich hab einfach mal auf die Daten eine bedingte Formatierung gelegt, da sieht man, das es bei den Gateway immer die "gleiche" Farbe=RSSI-Wert ist, aber bei den Werten der Zentrale innerhalb einer Zeile "alle Farben" vorhanden sind...
Mit meiner echten, unmodifizierten Test-CCU2 kann ich leider keine wirklichen Gegentests machen, weil mir dazu die Menge an Geräten fehlt.
Da die RSSI-Funktion vom rfd alle Werte, auch die der nicht zugewiesenen Gateways ausspuckt, habe ich auch noch Charts für die Alternative 1 und Alternative 2 gemacht, aufgrund der Sortierung in der Stored-Procedure beim Kreuztabellen-Anlegen wird immer zuerst nach dem Gateway-Namen und dann nach der Seriennummer sortiert, also ist der 1. Balken im Default-GW-Chart NICHT das gleiche Gerät wie im Chart Alternative 1 bzw. 2! Im Chart zum alternativen Gateway 2 sind nur die HM-LGW-O-TW-W-EU enthalten, da sieht man, das bis auf wenige Ausreißer alle relativ stabile Werte liefern, im Chart zum alternativen Gateway 1 sind die ersten 6 stark streuenden Balken wieder die Empfangswerte der CCU.
Was soll uns das sagen? Es macht evtl. keinen Sinn, sich aufgrund besserer oder schlechterer RSSI-Werte bei der Zentralenantenne verrückt zu machen, und die Geräte alle 3 Tage auf ein "vermeintlich" besseres Gateway zu schieben. Einfach logisch vorgehen, was müsste eigentlich von der Zentrale besser empfangen werden, das gehört im ersten Schritt dahin, wenn es dann regelmäßig Kommunikationsstörungen hagelt, dann kann man das Gerät, obwohl es "unsinnig" erscheint, einem Gateway zuordnen, und da kann man sich halbwegs an den RSSI-Werten orientieren um das beste zu wählen. Nochmal kurz der Hinweis, die ganze Geschichte hier ist rein auf den Empfangswerten basiert, wenn ein Gerät regelmäßig angefunkt werden muss, gelten "natürlich" andere Regeln, die habe ich aber jetzt nicht untersucht.
Wer es nachmachen will, es macht keinen Spaß , ich habe mehrere Anläufe gebraucht, um die Daten in ein auswertbares Format zu transformieren, und Excel ist sch**ße, immerhin kann 2016 die Box-Whiskers inzwischen "automatisch", aber die meisten Eigenschaften sind nicht per VBA automatisierbar, da ist echt bei jedem Diagramm mühsame Hand-Nacharbeit für jede Datenreihe einzeln nötig, ich muss mir unbedingt mal anschauen, was die SQL-Server-Reportengine da so drauf hat...
Der Familienvater