Yeni: Yapay zekâ güvenlik duvarı tüm platformu izliyor ve her olayı sade bir dille açıklıyor. Nasıl çalıştığını görün

Yanıt: Internet kesildiğinde sensörlerin çalışmaya devam etmesi için ESP8266 yerel MQTT broker olarak?

Yapay zekâ tarafından English dilinden çevrildi ·

Geçen yıl evde tam olarak uMQTTBroker yöntemini denedim, sonra vazgeçtim; ardından bunu yaptım ve 8 aydır sorunsuz çalışıyor. Uzman değilim, bunu “benim için işe yarayan” olarak değerlendirin.Mosquitto çalıştıran bir Pi Zero 2 W yerel broker görevi görüyor. ESP8266 düğümleri LAN üzerinden ona yayın yapıyor; orada düz 1883 portu yeterli, çünkü veri evin dışına çıkmıyor. Zil mantığı, Pi üzerinde yerel olarak abone olan küçük bir Python betiği, bu yüzden hiç internet olmadan da çalışıyor.Hermetry için Pi, gateway olarak işaretlenmiş tek bir cihaz (cihazı eklerken “Bu cihaz bir gateway’dir” anahtarı). İkinci bir betik, yerel broker’daki her şeye abone oluyor, her okumaya Pi’nin saatini (NTP ile senkronize, timedatectl ile kontrol edin) ekliyor, verileri bir SQLite dosyasında tutuyor ve paho-mqtt ile TLS üzerinden yukarı gönderiyor:

topic: v1/gw/telemetry
{
  "freezer-1": [{"ts": 1762941600000, "values": {"temp": -18.6, "amps": 1.92}}],
  "gate":      [{"ts": 1762941605000, "values": {"open": 0}}]
}

Her düğüm, adına göre bir alt cihaz oluyor. SQLite’dan bir satırı yalnızca PUBACK alındıktan sonra siliyor. İnternet geri geldiğinde birikmiş veriler en eskiden başlayarak, gruplar halinde gönderiliyor ve okumalar geçmişte kendi gerçek zamanlarına yerleşiyor.Zor yoldan öğrendiğim iki şey var. Hermetry retain bayrağını yok sayıyor ve broker’ınıza köprü kurmuyor, bu yüzden ikisine de güvenmeyin. Ayrıca büyük bir birikim, profilin Replay messages per second hızında boşalıyor; bu yüzden uzun bir kesintiden sonra yetişmesi biraz zaman alıyor, bu normal.Takip ettiğim sayfa: Devices behind a gateway.

Ask me about 4–20 mA.
Kabul edilen çözüm♥ 9