Neu: Die KI-Firewall überwacht die gesamte Plattform und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

aisha.maker

aisha.maker

@aisha_r58 · Mitglied seit Oktober 2025

Neuling

Maker · home automation · Brisbane

Themen
7
Antworten
40
Punkte
0
Neuling10 Punkte an Mitglied

Erstellte Forenantworten

Ansicht von 15 Beiträgen – 16 bis 30 (von insgesamt 40)

Von English mit KI übersetzt ·

Dann also der Dongle-Weg. Antenne oben auf der Box, das integrierte WLAN ist aus, das Signal liegt jetzt bei -61 dBm bei geschlossener Tür. Seit Samstag gibt es im Log-Tab keine Keepalive-Abbrüche mehr, und das Lötkolben liegt in der Schublade. Zuerst musste ich den Treiber für meinen Dongle installieren, es war ein RTL8812AU, also prüfe vor dem Kauf, ob deiner unterstützt wird.

♥ 1

Tyler’s right in one line, here’s the longer version. PubSubClient only reads from the socket and sends pings inside client.loop(). Its default keepalive is 15 s. You sleep 30 s, so no ping goes out, the broker drops you for keepalive_timeout, and state -3 is „connection lost“.

Never block in loop(), use a timer instead:

unsigned long last = 0;

void setup() {
  ...
  client.setKeepAlive(60);
  client.setBufferSize(512);
}

void loop() {
  if (!client.connected()) reconnect();   // with a back-off, not a tight loop
  client.loop();                          // every pass
  if (millis() - last >= 30000) {
    last = millis();
    snprintf(buf, sizeof buf, "{"temperature":%.2f}", bme.readTemperature());
    client.publish("v1/telemetry", buf);
  }
}

Keepalive between 30 and 300 s is what the docs recommend. And do what Niall said, the Log tab names the reason for every disconnect.

Akzeptierte Lösung♥ 1

Von English mit KI übersetzt ·

Auf einem einfachen Broker schon. Du könntest Mosquitto auf einem Pi im Depot laufen lassen und die Schaltschränke zusätzlich dorthin publizieren lassen. Etwas unübersichtlich allerdings, zwei Ziele zum Senden.

♥ 0

Von English mit KI übersetzt ·

+1 zum Twin-Teil. Auch bei meinem Hausprojekt haben die Boards für andere Leute plötzlich Sinn ergeben, sobald die Geräte unter Räumen platziert waren.

♥ 2

Von English mit KI übersetzt ·

Ein 802.3af-Splitter mit micro-USB-5-V-Ausgang funktioniert am 3B, ich betreibe einen in meinem Gewächshaus. Nimm einen mit 2,4 A Nennstrom, die 1-A-Modelle brechen unter Last zusammen, wenn RS-485-HAT und WLAN gleichzeitig ausgelastet sind.

♥ 0

Von English mit KI übersetzt ·

Keine Topics pro Gerät nötig. Alle 300 veröffentlichen auf dasselbe v1/telemetry. Hermetry erkennt anhand der Zugangsdaten, mit denen sich das Gerät angemeldet hat, wer spricht, das Token ist also faktisch die Adresse. Gerät 17 kann nicht als 18 schreiben, weil es die Zugangsdaten von 18 nicht besitzt, und ein Gerät kann nur seine eigenen Downlink-Topics abonnieren (v1/attributes/set, v1/rpc/req/+ und so weiter), sieht also ebenfalls nie Nachrichten anderer Geräte. Keine ACL-Datei zu pflegen.Kevin hat recht, dass es Custom-Topics gibt, aber die sind für Firmware gedacht, die man nicht ändern kann: Das Profil behandelt dann jedes Topic außerhalb von v1/ als Telemetrie des jeweiligen Geräts. Die Grenzwerte dabei sind Topic-Tiefe 8, Länge 128 und 50 verschiedene Topics pro Gerät. Mit „Prefix keys with the topic“ wird aus grid/s12/temp ein Schlüssel wie grid.s12.temp. Da du neue Firmware schreibst, lass all das weg.Für die Standort-ID würde ich ein Attribut des Geräts verwenden statt eines Teils des Topics. Sie ändert sich nicht minütlich, gehört also nicht in die Telemetrie.Referenz mit der vollständigen Topic-Tabelle: MQTT topics and payload reference. Eine praktische Sache aus meiner eigenen Umstellung: Gib jeder Einheit ein eigenes Zugangsdatum. Zwei Geräte mit demselben Token werfen sich ständig gegenseitig raus.

Akzeptierte Lösung♥ 9

Von English mit KI übersetzt ·

Erledigt. Den Hotspot habe ich mit nmcli hinzugefügt, wie tsmith geschrieben hat, Prioritäten 20/10. Am Samstag hat er sich etwa 40 s nach dem Booten mit dem Handy verbunden. Messwerte wurden in eine JSONL-Datei geschrieben, solange das Handy an den hinteren Beeten kein Signal hatte, und dann in Paketen zu je 50 hochgeladen, sobald es wieder Empfang gab. In der ersten Woche waren die Zeitstempel bei den ersten paar Messwerten um eine Stunde falsch, genau das NTP-Problem, daher habe ich eine DS3231 bestellt, so wie Michael. Bis sie da ist, prüft das Skript vor dem Stempeln NTPSynchronized.

♥ 0

Ordered 20 MDBT42Q modules to rework the board, and set up a Pi gateway at home with the v1/gw format. My five tags showed up as children named after their MAC addresses within a minute. The double-reporting point is real: two Pis in my house both reported the same tag, fixed it with a strongest-RSSI rule in the gateways.

♥ 0

Von English mit KI übersetzt ·

Telemetriedaten mit dem Gerätetoken zu senden bedeutet, sich als das Gerät auszugeben. Hermetry speichert lediglich, was „das Gerät“ meldet. Sie benötigen einen Befehl in die entgegengesetzte Richtung.

♥ 0
Ansicht von 15 Beiträgen – 16 bis 30 (von insgesamt 40)