RPi-Beelogger: Aussetzer bei der Datenübertragung mit schlechter Internetverbindung

Hi Markus,

da unsere Systeme gestern kurz nicht erreichbar waren, siehe:

hat es scheinbar bei der Datenübertragung von Dir irgendetwas geschmissen, das erst heute früh wieder beseitigt werden konnte:

https://swarm.hiveeyes.org/grafana/dashboard/db/an_mm_01?from=1501015577075&to=1501052699849

Melde Dich gerne, wenn wir Dir dabei helfen können, die Datenübertragung robuster hinzubekommen. Es ist bestimmt nur ein kleiner Kniff. Wie überträgst Du denn die Daten auf den MQTT Bus?

Viele Grüße,
Andreas.

Hi Markus,

scheinbar gab es auch gestern Nacht Aussetzer:
https://swarm.hiveeyes.org/grafana/dashboard/db/an_mm_01?from=1501117941245&to=1501158859720

Unsere Systeme waren gestern Nacht online, daher hat die Unterbrechung der Datenerfassung vermutlich andere Ursachen. Weißt Du da Näheres? Liegt es vielleicht an Deiner Internetverbindung?

Herzliche Grüße,
Andreas.

Hi Andreas,

danke für die Nachfrage und den Hinweis auf Aussetzer in der Datenübertragung.

Du hast Recht, an meinem Programm könnte tatsächlich noch etwas optimiert werden. Leider hatte und habe ich in letzter Zeit wenig Zeit dafür übrig.

Und wie es oft so ist, kaum funktioniert ein Projekt im Großen und Ganzen werden die Restarbeiten aufgeschoben.

Als Basis für mein Programm zum Loggen und der Datenübertragung mit MQTT habe ich das Programm RPi-Beelogger von Markus Hies verwendet.

In Punkto MQTT habe ich an Markus Code nichts verändert.

Was ich hier noch ergänzen wollte oder sobald Zeit ist auch muss, ist eine Ergänzung zu implementieren, dass die Datenübertragung falls nicht sofort erfolgreich ausgeführt werden kann, mehrere Retries unternimmt bevor das Programm in Fehler läuft.

Das habe ich bis dato noch nicht, daher kommt es immer wieder zu Programmabbrüchen und fehlender Daten.

Viele der vergangenen Unterbrechungen der Datenübertragung haben die Ursache in meiner Internetverbindung. Diese ist aufgrund der vom Provider verwendeten Technologie bei mir in der Gegend sehr instabil.

Um die Bandbreite zu erhöhen wurde das Kupferkabel Netz zwischen den einzelnen Dörfern und der Verteilung mit Funkstrecken ergänzt.

Diese Funkstrecken brachten zwar einen riesigen Gewinn an Bandbreite jedoch sind sie sehr empfindlich und es kommt häufig zu temporären Unterbrechungen.

Dies verzeiht natürlich mein derzeitiges Python Prgramm nicht. Ein Versuch die Daten mittels MQTT zu schicken während mein Internet platt ist und das wars.

Falls Du Python Quellcode zur Hand hast, der zeigt wie das Daten Senden mit mehreren Versuchen wiederholt werden kann und das ganze dann begrenzt auf eine gewissen Anzahl und einer gewissen Retry Pause, wäre ich sehr interessiert und dankbar.

Ein weiterer Restpunkt ist, endlich die Temperatursensoren in die Beute zu bringen und nicht wie bisher neben der Beute liegen zu lassen. Aber wie schon gesagt, die Zeit fehlt.

An der Stelle besten Dank für die Bereitstellung eurer Plattform um auf meine Daten grafisch aufbereitet von überall zuzugreifen.

Echt eine super Sache!

Da ich beruflich sehr viel unterwegs bin nutze ich diese Möglichkeit sehr häufig und gerne. Einfach genial.

Grüße aus Mittelfranken,
Markus

Hi Markus,

Danke für die Informationen zu Deinem Setup und den Hintergründen über den unregelmäßigen Datenverlust. Lass uns gerne Dein Stück Python Software robuster machen.

Ich würde im ersten Schritt gar nicht so weit gehen, eine Retry Logik einzubauen, sondern erstmal, dass das Programm durch eine fehlende Internetverbindung nicht den Geist aufgibt. Einverstanden?

Viele Grüße,
Andreas.


Danke für das Lob! Wir freuen uns sehr, dass Du dabei bist und die Plattform für Dich nützlich ist.

Hallo Markus,

Diese kleine Verbesserung könnte Dir erstmal schon gut weiterhelfen:

Viele Grüße,
Andreas.

Hi Andreas,

danke für den Link bzgl. MQTT Stabilisierung.

Leider komme ich im Moment nicht dazu mich der Sache anzunehmen.

Ich hoffe bald ist etwas mehr Zeit für solche Dinge.

Danke nochmal für Deine Hilfe.

Grüße und ein schönes Wochenende,
Markus