Wie HTTP Input Zähler per MQTT

  • Fragen
  • Wie HTTP Input Zähler per MQTT

Wie HTTP Input Zähler per MQTT

0
0

Hallo zusammen,

ich würde gern meine definierten HTTP Input Zähler per MQTT mit Daten versorgen. Laut Dokumentation können HTTP Input Zähler „auch auf MQTT hören“. Allerdings fehlt leider ein Beispiel, laut Doku abonnieren die Zähler das Topic „cfos_mqtt/set/<Geräte-ID>„. Ein Publish auf dieses Topic mit dem passenden JSON String führt aber nicht dazu, dass der HTTP Input Zähler Daten erhält.

Folgender Teil der Doku wird das Problem sein, bzw. wird mir das fehlen: „Geben Sie als Geräte-Adresse mqtt oder eine MQTT-Broker URL ein.“ Wo soll ich denn eine Adresse angeben? Beim Anlegen eines Zählers vom Typ HTTP Input gibt es kein „Adresse“ Feld.

Oder muss dafür eine eigene Zählerdefinition erstellt werden, in der „MQTT“ als Adresse steht? Das würde aber nicht der Doku entsprechen, da es dafür einen komplett eigenen Abschnitt gibt und dann das MQTT Topic frei wählbar ist.

Kann mir hier jemand helfen? An meinem JSON String sollte es nicht liegen, das ist der gleiche wie ich ihn für HTTP verwende, und da funktioniert er.

 

Gruß

Hendrik

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Gefragt am 3. April 2023
100 views

Antworten (10)

0
Private answer

@geotec - konntest du eventuell schon mal testen? In der aktuellen Beta ist zumindest das "Adresse" Feld für HTTP Input Zähler sichtbar, in das man die Broker URL eintragen kann.
Aber entweder bin ich der Einzige, der MQTT nutzen will und es funktioniert nicht, oder ich habe irgendwo einen Fehler drin. Ich habe auch schon bei cFos nach einem ganz konkreten Beispiel für eine erfolgreiche MQTT Ansteuerung eines HTTP Input Zählers gefragt - aber leider bisher noch nichts bekommen.

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Beantwortet am 17. Mai 2023
0
Private answer

Leider bringt auch die aktuelle Beta keine Besserung - allerdings stand in den Release Notes auch nichts bezüglich MQTT. Der Support will sich bei den Entwicklern erkundigen, wie da der Stand ist.

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Beantwortet am 17. April 2023
0
Private answer

Kurzes Update: hatte deshalb auch an den Support geschrieben. Vorhin kam eine Antwort:

"Unsere Entwickler haben sich das Verhalten im Detail angeschaut und noch ein Problem gefixt.

Der Fix wird in der kommenden Version eingebaut sein. Sobald also die nächste Beta Version online verfügbar ist, sollten sie diese testen.
Bis dahin MQTT erstmal deaktivieren"

Brauchst also erstmal nicht testen. ;) Übrigens führen Tests mit MQTT bei mir sogar dazu, dass der Controller ständig abstürzt.

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Beantwortet am 6. April 2023
0
Private answer

Das wäre super! Zum Testen nutze ich MQTT.fx - oder den MQTT Client von ioBroker, vom Ergebnis her macht es keinen Unterschied.

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Beantwortet am 6. April 2023
0
Private answer

Wie bzw. womit schickst du die Daten an den mqtt-Broker? Vielleicht schaffe ich es am WE auch mal zu testen.

markiert als Spam
Geschrieben von (Fragen: 0, Antworten: 162)
Beantwortet am 6. April 2023
0
Private answer

Nachtrag, falls das noch jemand liest:

Ich kann es nicht in jedem Fall reproduzieren, aber sobald ich versuche, Daten per MQTT an einen Zähler zu übermitteln, stürzt mir ständig der PowerBrain Controller ab. Uptime in "Konfiguration" ist dann immer wieder "0 Stunden 0 Minuten". Auch der Restart counter erhöht sich entsprechend.

Ohne MQTT Experimente läuft er durch.

Ich nutze mosquitto mit Authentifizierung, habe es aber auch schon mit anonymen Zugriff versucht (um das als Fehlerquelle auszuschließen). Und publishen der Daten der cFos funktioniert ja ohne Probleme.

Gibt es niemanden hier, der MQTT einsetzt um auf die HTTP Requests in Zukunft verzichten zu können?

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Beantwortet am 6. April 2023
0
Private answer

Hi martin,

 

danke für die Antwort! Ich liefere aktuell zum Beispiel per HTTP POST folgendes Jason an

/cnf?cmd=set_ajax_meter&dev_id=M8

{
"power_va": ${Leistung},
"export_wh": ${ExportEnergy},
"import_wh": ${ImportEnergy},
"current": [${Strom}, ${Strom}, ${Strom}],
"voltage": [${v1}, ${v2}, ${v3}],
"is_va": false
}

(die Variablen sind natürlich mit Werten gefüllt).

Wenn ich exakt den gleichen String per MQTT nach cfos_mqtt/set/M8 publishe, kommt allerdings nichts an (subscribe ich das Topic an einem anderen Client, sehe ich die Daten auch korrekt). Was mache ich da falsch?

Das Publishen zum Beispiel dieses Zählers nach MQTT liefert korrekt Daten über das Topic cfos_mqtt/get/M8.

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Beantwortet am 4. April 2023
0
Private answer

MQTT via HTTP Input Zähler geht indem jemand via MQTT Zählerdaten postet, die in dem Format des HTTP Input Zählers vorliegen. Das Format ist genau, wie in unseren curl Beispielen beschrieben. Du musst also einen Teilnehmer des MQTT brokers so konfigurieren, dass er die gewünschten Daten so liefert.

markiert als Spam
Geschrieben von cFos Team (Fragen: 1, Antworten: 72)
Beantwortet am 4. April 2023
0
Private answer

Liest hier eigentlich jemand von cFos mit, der solche Sachen definitiv beantworten kann? So schön ich das ganze Prinzip finde, ist die Doku leider oftmals eher unzureichend.

Und ja, das mit dem ioBroker MQTT Broker hatte ich gelesen - ich verwende allerdings Mosquitto. Der MQTT Adapter von ioBroker hat bei mir eine reine Client Funktion. Ich kann die Nachrichten die ich da für den Zähler publishe auch in anderen Clients abonnieren, das sollte also so weit passen. Kann natürlich sein das Format ist nicht korrekt, aber da habe ich auch schon viel experimentiert.

So sind ja zum Beispiel die Parameternamen und -Formate im HTTP Request anders als die, die man im Status des Gerätes per MQTT bekommt. Deshalb wäre eine ausführlichere Doku mit Beispiel (und separater Zähler-Config falls nötig) wirklich schön.

Da ich leider nicht vernünftig nachprüfen kann was da im Hintergrund im Powerbrain passiert, werde ich es wohl erstmal aufgeben - wäre jetzt nur weiteres Rumprobieren.

Eigentlich habe auch noch ein viel wichtigeres Problem mit meinem ständig abbrechenden PV Überschussladen, obwohl ausreichend Überschuss da ist. Auch da wäre schön, wenn man mehr sehen könnte (zum Beispiel welche Laderegel gerade greift).

Ich bin eigentlich kurz davor, auf die Intelligenz der Wallbox zu verzichten, und die Ladeströme - so wie vorher mit meiner alten Wallbox - ganz stupide von außen manuell per eigenem Script vorzugeben.

markiert als Spam
Geschrieben von (Fragen: 2, Antworten: 9)
Beantwortet am 3. April 2023
0
Private answer

Moin, die Frage mit der IP-Adresse kann ich dir leider auch nicht beantworten. Vielleicht ist die Doku da auch nicht ganz aktuell. (Warum sollte man den mqtt-Broker an mehreren Stellen eintragen. Es wird ja vermutlich nur einen geben...)

Hast du gelesen das der mqtt-Broker in ioBroker sich nicht Standardkonform verhält? Vielleicht daher das Problem!

markiert als Spam
Geschrieben von (Fragen: 0, Antworten: 162)
Beantwortet am 3. April 2023