wilsonmaker
@wilson-m · Temmuz 2025 tarihinde katıldı
Maker · home automation · Nottingham · new to IoT
- Konular
- 14
- Yanıtlar
- 70
- Puan
- 0
Oluşturulan forum yanıtları
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.
I tried exactly the uMQTTBroker thing at home last year and gave up on it, then did this, which has been solid for 8 months. Not an expert, so take it as “what worked for me”.
A Pi Zero 2 W running Mosquitto is the local broker. The ESP8266 nodes publish to it on the LAN, plain 1883 is fine there because it never leaves the house. The buzzer logic is a tiny Python script on the Pi that subscribes locally, so it works with no internet at all.
For Hermetry, the Pi is one device marked as a gateway (the “This device is a gateway” switch when you add it). A second script subscribes to everything on the local broker, stamps each reading with the Pi’s time (NTP-synced, check timedatectl), keeps them in a SQLite file, and sends them up with paho-mqtt over TLS:
topic: v1/gw/telemetry
{
"freezer-1": [{"ts": 1762941600000, "values": {"temp": -18.6, "amps": 1.92}}],
"gate": [{"ts": 1762941605000, "values": {"open": 0}}]
}
Each node becomes a child device by its name. It only deletes a row from SQLite after the PUBACK. When the internet comes back it sends the backlog oldest first, in batches, and the readings land at their real times in history.
Two things I learned the hard way. Hermetry ignores the retain flag and doesn’t bridge to your broker, so don’t build on either. And a big backlog drains at the profile’s Replay messages per second rate, so after a long outage it takes a while to catch up, that’s normal.
The page I followed was Devices behind a gateway.
Yapay zekâ tarafından English dilinden çevrildi ·
Teşekkürler James. Yalnızca -hupcl yetmedi, yeniden başlatmadan sonraki ilk açılış yine resetledi, dediğin gibi. 10 µF kondansatörü taktım (kartın üzerine “yüklemek için çıkarın” yazan bir etiket koyarak, bunu zor yoldan zaten öğrenmiştim) ve resetler kesildi. Ayrıca scripti twilson’ın dediği gibi systemd’ye taşıdım. Artık sistem tamamen kararlı.
Thanks James. -hupcl alone wasn’t enough, the first open after a reboot still reset it, like you said. Put the 10 µF cap on (with a label on the board saying “remove to upload”, learned that the hard way already) and the resets are gone. Also moved the script to systemd like twilson said. Total is stable now.
Working! Got two WiZ bulbs. The command list filled up as soon as I added light.set to the catalog. First version the Switch only ever showed its Unknown text, because I hadn’t bound Current state yet. Bound it to hallway_on and it stays put now, even when my wife uses the bulb’s own button.
Yapay zekâ tarafından English dilinden çevrildi ·
GPIO4 ve GPIO17 üzerinde iki veri yolu, her biri 2.2k, ve kabloyu raflar boyunca tek bir hat olarak yeniden döşedim. İki gündür 20’de 20, tek bir 85 bile yok. Anahtarları da yeniden adlandırdım, cihazı silip baştan başlattım çünkü yalnızca bir haftalık veri vardı. Pano artık seri numarası listesi gibi değil, bir mahzen gibi okunuyor. Herkese teşekkürler, belki bir sonraki build’de Kevin 😉
Two buses on GPIO4 and GPIO17, 2.2k each, and I re-did the run as a line along the racks. 20 of 20 for two days now, not a single 85. Renamed the keys too, deleted the device and started fresh since there was only a week of data. Dashboard reads like a cellar now instead of a serial number list. Thanks all, Kevin maybe next build 😉
Works first time, which never happens to me. Readings are clean and the valve opens when the Mega sends 1. I’d been sending text because I thought I2C was “like Serial”. Also fixed my Hermetry payload while I was at it: temperature now goes out as a number with one decimal.
Yapay zekâ tarafından English dilinden çevrildi ·
3 kablo, Pi’den 3.3V. Kablolar 30 cm ile 1 m arasında, bence çizgiden çok yıldız topolojisine benziyor.
3 wires, 3.3V from the Pi. Legs are 30 cm to 1 m, it’s more of a star than a line I guess.
Yapay zekâ tarafından English dilinden çevrildi ·
Masaüstü Pi’mde besleme kötü olduğunda köşede küçük bir şimşek simgesi beliriyor, yani Pi bunu bir şekilde kesinlikle biliyor.
On my desktop Pi a little lightning bolt shows up in the corner when the supply is bad, so it definitely knows somehow.
Maybe Modbus just doesn’t do negative numbers? Could you add 100 to everything and subtract it again later?
Yapay zekâ tarafından English dilinden çevrildi ·
Misafir Wi-Fi’ı en kolay görünüyor? Zaten kasalarınızdan ayrılmış durumda.
Guest Wi-Fi seems easiest? It’s already separated from your tills.
Yapay zekâ tarafından English dilinden çevrildi ·
ÇALIŞIYOR. Opto devreyi perfboard üzerine kurdum, kapasitörsüz ilk sürümde her basışta yaklaşık 40 zil sesi geliyordu, haha. 10 µF kapasitörü ekleyince sorun kalmadı. Yönetici sohbet platformumuzu bağladı, ben de hesabımı bağladım ve artık butona bastıktan yaklaşık 2 saniye sonra telefonumda “Sokak kapısında biri var” bildirimi beliriyor. Teşekkürler Lee!
IT WORKS. Built the opto circuit on perfboard, first version without the capacitor gave me like 40 rings per press haha, added the 10 µF and it’s clean. Admin connected our chat platform, I linked my account, and now “Someone is at the street door” pops up on my phone about 2 seconds after the button. Thanks Lee!
Yapay zekâ tarafından English dilinden çevrildi ·
Bir BME280 ile aynı sorunu yaşamıştım, sorun adresteydi: 0x76 ile 0x77.
Had the same with a BME280 and it was the address, 0x76 vs 0x77.
Yapay zekâ tarafından English dilinden çevrildi ·
Çoğu için uygulama olayı yok. İş yerinde bir ekip sohbet uygulamamız var, yöneticimiz bunun için pazarda bir eklenti olduğunu söylüyor. Yani sohbete gönderebilirsem sorun olmaz!
App is a no for most of them. We have a team chat app at work, our admin says there is a plugin for it in the marketplace. So chat would be fine if I can get it to post there!
It works!! The strip dims with the slider now and the board says Done. I had also been answering on v1/rpc/req/17 instead of res, so even when I got the number right nothing came back. Thank you Emily.
fair enough, power first next time
Good to know the R thing, I’ve wondered about that on other parts.

