NEWS
Aktuelle Uhrzeit + Datum über MQTT an Arduino senden
-
Hallo, habe in ioBroker (läuft auf Raspi4) jetzt den MQTT - Server in Betrieb genommen und bin restlos begeistert, alles, was ich bisher eingebaut habe, läuft problemlos !
Aber jetzt komme ich irgendwie nicht mehr weiter: Ich will die im ioBroker ja irgendwie/irgendwo vorhandene Uhrzeit (+ Datum) mit MQTT übers LAN an einen Arduino senden. Ich finde aber keinen Datenpunkt mit den gewünschten Daten.Wie macht man sowas am besten ?
Grüße, WillyIobrok
-
@WillyIobrok
So ganz verstehe ich den Sinn nicht.
Installier doch einen ntp client auf dem Arduino. -
@Thomas-Braun
Da war ich gerade als mögliche Alternative am recherchieren, das wäre meine zweitbeste Lösung.
Der Sinn ist folgender:
Mein Amateurfunkgerät IC7300 "vergisst" jedesmal beim Ausschalten Datum und Uhrzeit (ein bekanntes Problem). Deshalb möchte ich jedesmal nach dem Einschalten vom Arduino aus (der ist über eine proprietäre Eindraht-Schnittstelle am Funkgerät angeschlossen) die Uhrzeit ins Funkgerät schreiben.
Der Arduino selbst braucht keine Aktuelle Uhrzeit, deshalb wollte ich ihm den Aufwand (Speicherplatz etc.) ersparen. Er hängt aber über LAN und MQTT am ioBroker dran.
Aufgrund der guten Erfhrungen mit MQTT schien mir das als der einfachste Weg, aber jetzt find ich im ioBroker leider die Daten nichtGruß, Wilfried
-
@WillyIobrok sagte:
find ich im ioBroker leider die Daten nicht
Welche Daten ? Den Datenpunkt zur Übermittlung der Uhrzeit oder die Uhrzeit ?
In welcher Form soll die Uhrzeit übermittelt werden ? -
@paul53 die aktuelle Uhrzeit 1849 und das Datum 20201106
Format (String, mehrere Strings, Binär, ... ) ist eigentlich egal. Wenn ich per MQTT zugreifen kann isses gut. -
@WillyIobrok Nachtrag: ich habe in der Ansicht Objekte nach entsprechenden Datenpunkten gesucht ...
-
@WillyIobrok
Kleines Javascript:const idUhr = 'mqtt.0.xyz'; // ID anpassen ! schedule('* * * * *', function() { // jede Minute setState(idUhr, formatDate(new Date(), 'YYYY-MM-DD hh:mm')); });
-
@paul53
cool - vielen Dank ! Werde ich gleich ausprobieren !
(Schade, daß ich Javascript praktisch überhaupt nicht kann ...)Eine allgemeine Frage hätte ich noch:
Bei der Recherche bzgl. dieses Themas hier im Forum bin ich auf ein Statement gestossen, daß häufiges Schreiben eines Datenpunktes vielleicht die SD-Karte des ioBrokers beschädigen könnte ?!?
Es hieß dann, dass das von der ioBroker-Konfiguration abhängt!?! Ich kann mich nicht erinnern, beim Aufsetzen des Systems irgendwas in dieser Richtung konfiguriert zu haben ...
Das kann ich mir aber eigentlich auch nicht vorstellen, denn es werden permanent jede Menge Datenpunkte im System sehr häufig geschrieben. Also müssen die DP dann doch im RAM sein, oder?Gruß,
WillyIobrok
-
@WillyIobrok sagte:
Also müssen die DP dann doch im RAM sein, oder?
Ja, die Zustände der DP werden im RAM gehalten. Damit sie nach einem Absturz (Spannungsausfall) nicht verloren sind, werden sie alle 30 s in eine Datei geschrieben.
-
@paul53
OK, danke für die Info. Dann bin ich beruhigt (schreibe alle 300ms Strom, Spannung und HF-Power Messergebnisse in ioBroker-Datenpunkte).Vielen Dank für das Script - es funktioniert einwandfrei, jetzt kann ich weitermachen !!
WillyIoBrok