moin, bei mir schlägt demnächst ein HM-1500 mit openDTU auf. da dieser dann daten an einen MQTT-broker senden kann würde ich diese gern auf meinem hauseigenen datenlogger sammeln. dieses ist ein teensy4.1 der bereits alles über meine heizung und allen sonstigen kram mit schreibt und diese als dateien und im browser bereit stellt. hat schon mal einer sowas gemacht? wie ist so ein mqtt-paket aufgebaut? den kompletten brocker muss ich hoffentlich nicht in den teensy stopfen.
Horst S. schrieb: > wie ist so ein mqtt-paket aufgebaut? Was meinst du mit "mqtt-paket" - irgendeine Sammlung von Quellcodes oder das Übertragungsformat der Daten?
moin rainer. ich würde am liebsten das was der openDTU an den MQTT-broker sendet mit dem teensy auswerten.
soll jetzt der broker oder ein Client auf dem Teensy laufen? Client ist kein Problem, dafür gibt es Libs die Topics publishen/subsriben können. Der Broker gehört eher auf einen Server, so mindestens Raspberry Pi Klasse. Was nicht heißt das es das vielleicht doch für µC gibt.
der teensy soll die daten vom opendtu entgegen nehmen und abspeichern. ich brauche aber keinen vollständigen broker auf dem tennsy. hat wer ein hexdump von dem was der opendtu da so sendet?
das MQTT Protokoll ist öffentlich dokumentiert. Aber für eine Punkt zu Punkt Verbindung würde ich eher eine einfache TCP connection in openDTU einbauen. Bzw nein, meinen mosquitto nutzen. Das MQTT ist so praktisch einfach und gut, da braucht man einfach einen (kleinen) Rechner als Broker. Und auf dem Rechner macht die Auswertung und Ablage in DB mehr Spaß. Der Teensy wäre dann ein Client der die Daten schön auf einem Display anzeigen könnte. Aber jeder wie er mag. https://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html Der Charme liegt in den m:n Verbindungen. Du kannst die Daten nicht nur von openDTU empfangen, sondern z.B. auch von einem Programm das die Daten simuliert. Der Teensy abonniert ein Topic und bekommt die Daten, egal von wem. Eben von jedem der auf dieses Topic schreibt. Und dafür braucht es die Zentrale, den Broker. Damit ist das gut zu debuggen, es gibt universelle Clients die alle oder gewünschte Topics anzeigen, sogar auf dem Smartphone/Tablet.
:
Bearbeitet durch User
Bei mir läuft mosquitto auf dem zentralen OpenWRT-Router als Broker. Ein Teensy ist Gateway zwischen MQTT und CAN-Bus, dort benutze ich die pubsubclient Bibliothek (von mir leicht aufgebohrt um darüber auch neue Software verteilen zu können). LG, Sebastian
moin, danke für die infos. da das mqtt-packet wirklich nicht so wild ausschaut werde ich dann doch einen mini-broker in den teensy progen. daten empfangen auf dem port 1883 geht schon mal. nun muss ich die nur noch zerlegen und meine werte rausholen. der opendtu sendet mir eine status information. hatt wer zufällig einen hm-1500 laufen und kann mir mal zeigen wie der datenaufbau im orginal ist? mein hm-1500 befindet sich noch auf der reise.
:
Bearbeitet durch User
Die Daten kommen von openDTU, damit musst du kommunizieren. Für den HM gibt es auch einen Simulator, Link ist im openDTU Repo. Wenn man keinen Broker nutzen möchte kann man ja das nRF Modul auch direkt an den Teensy hängen. Im openDTU Quellcode kann man ja auch die Topics sehen über die kommuniziert wird, das kann man mit Broker und Testclient auch simulieren.
:
Bearbeitet durch User
von dem opendtu kommen folgende daten: MQTT>| :_MQTT214__OpenDTU-9635288_solar/dtu/status_offline____ 10 3A 5F 4 4D 51 54 54 4 D6 5F F 5F F 4F 70 65 6E 44 54 55 2D 39 36 33 35 32 38 38 5F 10 73 6F 6C 61 72 2F 64 74 75 2F 73 74 61 74 75 73 5F 7 6F 66 66 6C 69 6E 65 5F 5F 5F 5F |<MQTT weiss irgend wer wie das bei einem vorhandenem hm-1500 ausschaut? das zu zerlegen ist ja kein problem. die 5F sind 0x00 und die 214 hinter "MQTT" sind in dezimal dargestellt.
:
Bearbeitet durch User
mal ein kleiner zwischen bericht: die openDTU sendet an meinen teensy ihre mqtt-sachen. verbndung zwischen beiden ist stabil. auswerten der daten recht einfach (es lebe mqtt). der teensy stellt sie im minutentakt als chart und tägliche csv-datei bereit. nun fehlt nur noch der hm-1500.
:
Bearbeitet durch User
moin, mein HM1500 ist endlich eingetrudelt. ich habe die pv mit einem panel aufgebaut und am laufen. nun hat sich gezeigt das der hm1500 nach sonnenuntergang die verbindung zum dtu kappt und morgens leider nicht von selbst wieder aufbaut. hat da wer erfahrung mit?
mal ein bericht nach odentlich laufzeit. die pv werkelt munter vor sich hin und hatt bisher c.a. 1,5Mwatt/h geliefert. sie sendet ihre daten per OpenDTU (RaBa64). von hier aus geht es dann mit MQTT weiter. die OenDTU connected und bedient meinen miniMQTT-brocker. das läuft auf einem Teensy4.1. dieser sammelt die ankommen daten und speichert sie tagesweise als csv datei auf der sd-karte. über das http-interface habe nun zugrief darauf und kann die daten mit meinen anderen z.b. der heizung auswerten. der minibroker ist teil meiner wetterdatenerfassung auf dem teensy (temp-sensoren, BME280 u.s.w. ). da ich gern mit diagrammen arbeite ist das csv-format für mich am einfachsten in der nachbearbeitung. der aufbau der dateinamen besteht aus jahr,monat,tag also 20240921.csv. so kann man sie leichter sortiert anzeigen lassen. die daten werden einmal pro minute erfasst und im stundentakt abgespeichert ( zu verlängerung der lebenszeit der SD). Datum Ertrag Summe Panel1 Panel2 Panel3 Panel4 06:48:01 0 0 0,8 0,6 0,6 0,5 06:49:02 0 0 0,9 0,5 0,6 0,5 06:50:00 0 0 0,9 0,5 0,6 0,5 06:51:05 0 0 0,9 0,4 0,6 0,5 06:52:00 0 0 1 0,4 0,6 0,5 06:53:01 0 0 1 0,4 0,6 0,5 06:54:00 0 0 1 0,4 0,6 0,5 06:55:04 0 0 1 0,4 0,6 0,5 06:56:00 0 0 1,1 0,4 0,6 0,5 06:57:03 0 0 1,1 0,4 0,6 0,5 06:58:00 0 3,7 1,3 0,9 0,9 0,8 06:59:00 0 0 1,2 0,5 0,7 0,6 07:00:00 0 0 1,3 0,5 0,7 0,5 07:01:04 0 0 1,3 0,5 0,7 0,5 07:02:02 0 0 1,4 0,4 0,7 0,5 07:03:08 0 0 1,4 0,4 0,7 0,5 07:04:01 0 0 1,5 0,4 0,7 0,5 07:05:04 0 0 1,6 0,4 0,7 0,5 07:06:03 0 0 1,6 0,3 0,7 0,4 07:07:00 0 0 1,7 0,3 0,7 0,4 07:08:08 0 0 1,8 0,3 0,7 0,4 07:09:01 0 0 1,9 0,3 0,7 0,4 07:10:01 0 0 1,9 0,3 0,7 0,4 07:11:01 0 0 2 0,3 0,7 0,3 07:12:09 0 0 2,1 0,3 0,7 0,3 07:13:05 0 0 2,2 0,3 0,7 0,3 07:14:00 0 8,7 3,5 2,1 1,9 1,7 07:15:08 0 9,2 3,7 2,2 2 1,7 07:16:02 0 9,5 3,8 2,3 2,1 1,8 07:17:00 0 10,1 4 2,4 2,2 1,9 07:18:00 0 11,4 5 2,8 2,3 2 07:19:00 0 12,1 5,3 2,9 2,4 2,1 07:20:01 0 12,6 5,6 3 2,5 2,1 07:21:00 0 13,2 5,9 3,2 2,6 2,2 07:22:00 0 13,7 6,2 3,3 2,7 2,3 07:23:04 0 14,4 6,6 3,4 2,8 2,4 07:24:00 0 15 6,9 3,5 2,9 2,5 07:25:00 0 15,8 7,3 3,8 3 2,6 07:26:00 1 16,5 7,7 3,9 3,1 2,7 07:27:01 1 17,4 8,1 4,1 3,2 2,8 07:28:06 1 18,4 8,7 4,3 3,5 2,9 07:29:00 1 21,1 11,1 4,4 3,7 3,1 alles in allem bin ich recht zufrieden mit meiner lösung. ich habe nun 420 dateien mit je 1440 datenzeile von meiner PV. also reichlich zahlen zum spielen. hat noch wer was in der art?
:
Bearbeitet durch User
Horst S. schrieb: > temp-sensoren, BME280 u.s.w. Du weisst aber schon, dass der BME280 bezüglich Temperatur nur ein Schätzeisen ist, er wird im Datenblatt auch nur als "Combined humidity and pressure sensor" bezeichnet. Auf S. 3 des Datenblattes steht "The integrated temperature sensor has been optimized for lowest noise and highest resolution. Its output is used for temperature compensation of the pressure and humidity sensors and can also be used for estimation of the ambient temperature." Estimation = Schätzung Auf S.12 des Datenblattes werden nur "typische" Angaben zu Genauigkeit gemacht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.