Geschwätzige SONOFF S60ZBTPF / Grundrauschen im Mesh

Moin!

Ausnahmsweise mal kein “Ich hätte da gerne mal ein Problem”-Posting. Auslöser war ein Problem, aber ich dachte, es könnte anderen helfen, die Lösung hier zu dokumentieren :slight_smile:

Problem war: Mein Zigbee-Controller hat sich nach dem Hinzufügen von einigen (in Summe 15) SONOFF S60ZBTPF mindestens einmal am Tag “festgefressen” (“BUFFER_FULL”-Fehler) und war nur durch ein Restart des Zigbee2MQTT-Addins in HA wieder zu reanimieren. Da ich auch die Garten-Bewässerung über Zigbee-Geräte (ein paar Sonoff SWV-ZFE) steuere, war das natürlich vor der beginnenden Urlaubszeit jetzt echt ein Problem…

Mein erster Verdacht war, daß mit >100 Devices im Mesh dann doch irgendwo die Grenzen des verwendeten SONOFF ZBDongle-P-Klons erreicht wären. Also begann ich, mich mit dem Gedanken anzufreunden, tagelang durchs Haus zu laufen um die Geräte für den Wechsel auf einen anderen, leistungsfähigeren Coordinator neu anzulernen.

Dabei ist mir dann aber noch eine andere Idee gekommen, die dann tatsächlich - Stand jetzt - das Problem auch ohne Coordinator-Wechsel gelöst hat: “Reporting-Einstellungen” ist das Zauberwort.

So wie es aussieht, entsprechen die in Z2M angezeigten Default-Reporting-Einstellungen an den S60ZBTPF nicht ganz der Realität. So werden für die SONOFF- bzw. Ewelink-spezifischen customClusterEwelink-Attribute ‘acCurrentVoltageValue’, ‘acCurrentCurrentValue’ und ‘acCurrentPowerValue’ z.B. ein ‘Min rep interval’ von 60 angezeigt, was aber nicht stimmen kann wenn ich mir das Log in Z2M anschaue und sehe, das die Dinger permanent die kleinsten Schwankungen reporten.

Das führt dann auch zum nächsten Punkt: Diese 3 Werte werden in Tausendstel(!) gemessen, d.h. mW, mA und mV - was natürlich hochgradiger Blödsinn ist für Messung im Niederspannungs-Bereich. Zusammen mit dem offensichtlich im Default nicht funktionierenden Reporting-Intervall und den standardmäßig lächerlich niedrig eingestellten “Min rep change”-Schwellwerten zu _extrem_ geschwätzigem Reporting-Verhalten führt.

Ich hab’ dann mal eine kleine Messreihe aufgesetzt und gemessen, wieviel MQTT-Publishes denn so eine S60ZBTPF pro Zeiteinheit mit den Default-Einstellungen produziert - und das waren 0.2 - 0.4 pro Sekunde. Das ganze mit 15 multipliziert und mit Einrechnungen der restlichen (Router-)Geräte (div. IKEA Inspelning, Nous L6Z und B2Z) ergab das dann schon ordentlich “Grundrauschen” im Mesh.

Basierend auf dieser Messung habe ich dann das Reporting-Intervall für die drei o.g. Messungen mal explizit auf 10 Sekunden und die Schwellwerte auf 250 / 5000 / 5000 (0.25 A / 5 V / 5 W) gesetzt und beobachtet. Die Publish-Rate ging recht bald auf deutlich gesündere Werte von ca. 0.02 / s runter.

Zur Sicherheit habe ich dann noch für activePower, rmsCurrent und rmsVoltage analog das Intervall und die Reporting-Schwellen angepasst (Achtung: hier sind rmsCurrent und rmsVoltage in 100stel A bzw. V und activePower in “ganzen” W skaliert).

Mit den o.g. Änderungen an allen S60ZBTPF läuft das Mesh jetzt seit einigen Tage sehr stabil und auch deutlich “responsiver” als vorher - was nicht weiter verwundert, wenn die Kommunikations-Wege nicht permanent durch Blödsinns-Reporting verstopft werden.

Vielleicht hilft das obige auch anderen, die vor ähnlichen Problemen stehen :slight_smile:

Gruß,
Marc

2 „Gefällt mir“

Mal abgesehen davon das der S60ZBTPF Plug ja bekanntlich seit Monaten schon eine “Dauerbaustelle” ist, :rofl: die Sonoff mit irgendwelche Firmware-Updates versucht in den Griff zu bekommen, wäre es für andere User ja ggf. noch von Interesse:

  1. Welche Z2M Version Du jetzt gerade nutzt, bzw. bei welcher Version Du das festgestellt hast.
  2. Welche Firmware auf dem S60ZBTPF installiert ist.
  3. Wie die Reporting-Einstellungen dann dort

bei Dir jetzt genau aussehen. Vielleicht dazu einfach mal einen Screenshot posten.

In den letzten Monaten gab es bei dem S60ZBTPF u.a. bei den Intervall-Einstellungen für die einzelnen Werte alle möglichen Probleme und Anpassungen/Änderungen. Z.B. das irgendwelche Cluster nicht stimmten und/oder das Werte gar nicht übermittelt wurden und/oder die einstellbaren Werte keine Auswirkungen hatten und/oder … :slightly_smiling_face:

Grundsätzlich empfiehlt es sich in solchen Fällen natürlich auch immer einen Blick in die noch offenen und auch die bereits geschlossenen Z2M Issues-Meldungen zu werfen.

VG Jim

Mich würde interessieren, was denn der z2m Systemzustand unter dem Menupunkt Einstellungen zu den Plugs sagt.

Hier z.B. ein paar Plugs von mir in dieser Ansicht:

Gruß, Lars

2 „Gefällt mir“

Ich hab’ das ganze dann mal “systematisch” angegangen und einen “jungfräulichen” S60ZBTPF zu Testzwecken ins Mesh genommen. Der hat ab Werk die FW-Version 1.0.2 und diese Reporting-Einstellungen nach dem Einbinden:

Flugs noch einen kleinen Zähler auf die MQTT-Publishes aufgesetzt und das sieht dann (ohne Last!) so aus:

Im Endeffekt also ~400 Publish- / Reporting-Events in einer Stunde, ohne das ausser einem USB-Netzteil im Leerlauf da irgendwas ‘dran hing.

Dann hab’ ich die Reporting-Einstellung auf diese hier geändert:

Den Effekt sieht man sehr schnell im “Zähler-Verlauf”:

Und wenn man die Augen offen hat, sieht man auch recht schnell, wo hier “der Hase im Pfeffer liegt” - das ist mir initial garnicht aufgefallen, weil ich mit so einem “dusseligen” Default auch nicht gerechnet habe:

Da diese beiden Werte in mA bzw. mW gemessen werden, sorgt jedes leise “Flattern” - und sei es Rauschen von den ADCs - für Traffic. Bei einzelnen Plugs mag das zu vernachlässigen sein, aber wenn sie - wie bei mir - im Rudel funken, kann das schon relevant werden.

Zu den anderen Fragen von @Jim_OS: Ich fahre hier die - AFAICT - aktuelle Z2M-Version

Und aufgefallen ist es mir tatsächlich Ende letzter Woche. Und was das Reporting angeht, fahre ich aktuell mit diesen Einstellungen:

Die ‘haElectricalMeasurement’-Einstellungen sind primär “zur Sicherheit” drin für den Fall, das die Stöpsel sowohl die ‘custom’ als auch die Standard-Attribute herumposaunen…

PS: Das scheint unabhängig von der FW-Version zu sein. Nach einem Update auf die 2.0.2 (und einem setzen der Reporting-Parameter auf die eingangs dargestellten) plärrt das Ding genauso jedes mW, mV oder mA-Flattern hinaus und erzeugt jede Menge Traffic…

Gruß,
Marc

Also mit einem “frischen” S60ZBTPF und einer kleinen Last (externer NVMe-Adapter an einem USB-Netzteil) sieht das so aus:

Zum Vergleich ein Plug mit gleicher FW-Version, aber wie oben dargestellten, geänderten Reporting-Einstellung sieht das so aus:

Und ein Faktor von ~4 macht bei einem schon recht ordentlichen Mesh dann ggf. echt einen Unterschied :wink:

Gruß,
Marc

Moin

Dann wird Sonoff das in den letzten Monaten vermutlich immer noch nicht in den Griff bekommen haben. :slightly_smiling_face: Wie bereits erwähnt:

Aber für andere Nutzer des S60ZBTPF können Deine Feststellungen sicherlich hilfreich/nützlich sein, :+1: sodass sie einen Ansatz haben was sie sich bei evtl. Problemen ja mal anschauen sollten/könnten. Wer aktuell einen Zigbee Plug suchen sollte, sollte dann vermutlich besser weiterhin die Finger von dem S60ZBTPF lassen. :laughing:

Jepp, insbesondere wenn - wie bei Dir - div. S60ZBTPF zum Einsatz kommen.

BTW: Weil hier ja immer mal wieder User posten das Tuya OEM Plugs angeblich auch so “geschwätzig” wären und das Mesh mit Nachrichten (über)fluten, hier mal ein Auszug von meinen Tuya OEM Plugs. In dem Fall von 5 verschiedenen OEM Herstellern.


VG Jim