Hallo liebe Foren-Gemeinde,
ich versuche eine Wetterstation zu bauen (der Weg ist das Ziel. Das ein
oder andere Problem habe ich schon gelöst, bei folgendem stehe ich auf
dem Schlauch:
Verbaut habe ich:
- ESP 32
- Sensirion SPS30
- SHT31D (Adafruit)
- DPS310 (Adafruit)
- LTC4311 I2C Extender / Active Terminator (Adafruit)
Die Verkabelung ist so erfolgt, dass ich die qwiic Kabel mit Stecker
benutzt habe. Bzw. eins durchgeschnitten, an das eine Ende den ESP
angelötet, am anderen Ende den SPS.
Dann ist die SDA und SDL jeweils mit einem 10K an 5V verbunden.
Der Sketch kommt mit Arduino IDE auf dem Controller. Der verbindet zum
WiFi, MQTT und fragt dann der Reihe nach die Sensoren ab und verschickt
die Daten per MQTT und geht dann für 5min schlafen. So, soweit läuft das
alles.
Vielleicht mal als Hinweis. Ich habe mich da mühevoll reingearbeitet und
natürlich sehr oft aus den Beispielsketchen kopiert. Vermutlich geht das
alles besser und sauberer, aber ich weiß es halt nicht besser.
So, wie geschrieben eigentlich gehts. Aber eigentlich und scheiße sind
nah beieinander, manchmal bleibt der Sketch hier hängen:
1 | while (sps30_probe() != 0) {
|
2 | Serial.print("SPS sensor probing failed\n");
|
3 | delay(500);
|
4 | }
|
Das tut er aber für mich nicht nachvollziehbar. Das passiert manchmal
nach 1h, manchmal nach 5 Tagen, auch schon mal nach 2 Wochen.... Einmal
kurz den Stecker ziehen (ESP) und neu starten behebt das Problem und
alles läuft wieder. (Ist natürlich lästig und das eigene Ego will
natürlich das es läuft).
Ich habe jetzt sehr viele Foren durchsucht, finde aber weder (ich gehe
davon aus das ich falsch suche weil ich es nicht besser weiß) ähnliche
Probleme noch eine herangehensweise das Problem zu beheben.
Hat zufällig da draußen jemand eine Idee wo/was man da mal nachgucken
oder ausprobieren kann?
Grüße
Stefan