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

Antwort: Pi-Gateway, das am Schrebergarten zwischen Heim-WLAN und Handy-Hotspot wechselt

Von English mit KI übersetzt ·

Kevin hat recht, und die „preconfigured“-Verbindung ist diejenige, die der Imager aus deinem Heim-WLAN angelegt hat. Füge den Hotspot als zweite NetworkManager-Verbindung hinzu und vergib jeweils eine Priorität. Ich transportiere einen Pi genau so zwischen zwei Fabriken.

sudo nmcli con add type wifi ifname wlan0 con-name allotment 
     ssid "Aisha-phone" wifi-sec.key-mgmt wpa-psk wifi-sec.psk "********"
sudo nmcli con modify allotment connection.autoconnect yes connection.autoconnect-priority 10
sudo nmcli con modify preconfigured connection.autoconnect-priority 20
nmcli -f NAME,AUTOCONNECT,AUTOCONNECT-PRIORITY con show

Wenn beide in Reichweite sind, gewinnt die höhere Priorität, also zuerst das Heimnetz. Schalte den Hotspot ein, bevor du den Pi einschaltest; bootet der Pi zuerst, gib ihm eine Minute, NetworkManager sucht dann erneut.Zur Zwischenspeicherung: Halte die Messwerte in einer kleinen SQLite-Tabelle oder sogar in einer JSONL-Datei vor und sende sie, sobald die Verbindung zurück ist, mit ihren eigenen Zeitstempeln in Stapeln:

[{"ts": 1762668000000, "values": {"soil.bed3": 31.5, "air.temp": 12.1}},
 {"ts": 1762668300000, "values": {"soil.bed3": 31.2, "air.temp": 12.6}}]

ts ist in Millisekunden UTC. Lösche eine Zeile erst, nachdem die Veröffentlichung bestätigt wurde (QoS 1, in paho auf das PUBACK warten mit wait_for_publish()).Eine Falle beim Pi: Er hat keine batteriegepufferte Uhr. Startet er am Schrebergarten und bekommt längere Zeit kein Netz, ist die Uhr falsch, bis NTP synchronisiert; Messwerte mit dieser Uhr gestempelt landen dann zur falschen Zeit oder werden verworfen (mehr als 10 Minuten in der Zukunft werden abgelehnt). Versieh Messwerte nur dann mit einem Zeitstempel, wenn timedatectl show -p NTPSynchronized yes meldet; andernfalls sende sie ohne ts und lass Hermetry die Ankunftszeit verwenden.

Ground loops are my cardio.
Akzeptierte Lösung♥ 3