Hallo,
wie kann ich denn ein set venusmqtt publish W/b827eb256f4c/settings/0/Settings/CGwacs/AcPowerSetPoint {"value": "50"} Befehl per Slider absenden.
Der Wert 50 soll dann quasi vom Slider kommen.
venusmqtt ist ein MQTT2_CLIENT
Internals:
BUF
Clients :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
ClientsKeepOrder 1
DEF 192.168.4.213:1883 root hallo1
DeviceName 192.168.4.213:1883
FD 17
FUUID 63938ef8-f33f-2bfa-5d80-d4f8c42394c5e9b5
NAME venusmqtt
NR 1558
PARTIAL
STATE opened
TYPE MQTT2_CLIENT
WBCallback
clientId venusmqtt
eventCount 5969
lastMsgTime 1671211550.64211
nextOpenDelay 5
MatchList:
1:MQTT2_DEVICE ^.
2:MQTT_GENERIC_BRIDGE ^.
READINGS:
2022-12-16 18:25:42 lastPublish R/b827eb256f4c/keepalive:["settings/#", "grid/#", "battery/#", "hub4/#", "vebus/#"]
2022-12-16 15:32:38 state opened
Attributes:
DbLogExclude .*
autocreate simple
comment W/b827eb256f4c/settings/0/Settings/CGwacs/AcPowerSetPoint {"value": "50"}
R/b827eb256f4c/system/0/Serial\ N/e0ff50a097c0/+/+/b827eb256f4c
attr venusmqtt event-on-change-reading nichts
disable 0
room 06_Victron,MQTT2_DEVICE
Ich habe das zum Beispiel bei meinem Hue motion so gemacht:
Attribute setList setzen
setList occupancy_timeout:slider,0,10,65535 $DEVICETOPIC/set {"occupancy_timeout": $EVTPART1}
funktioniert bei mir so.
Gruß
Carlos
ich habe es mit einem Dummy und mit einem Notify gemacht regelbar von -50 bis 50 in 10er Schritten
Für dich wäre das dann z.B. so:
defmod Sollwert_Netz dummy
attr Sollwert_Netz setList state:slider,-50,10,50
attr Sollwert_Netz webCmd state
defmod V_Sollwert_Netz notify Sollwert_Netz.*\
{fhem 'set MQTT_GENERIC_BRIDGE publish W/b827eb256f4c/settings/0/Settings/CGwacs/AcPowerSetPoint {"value": ' .ReadingsVal("Sollwert_Netz","state",undef). '}'}
Warum einfach, wenn es auch kompliziert geht...
Ist das ernsthaft gemeint, dass Einsteigern noch die alten Module empfohlen werden?
Hallo,
Ok wie geht es denn einfacher.
Es funktioniert ja so mit dem Notify und dem Slider.
Gruß Josty
MQTT2_DEVICE anlegen, und setList füllen analog zum Vorschlag von carlos?
Mal ne Frage an Beta-User,
es soll ja direkt im MQTT2 Device gehen. Was müsste ich denn in setList einsetzen? Wenn ich das Unten einsetze kommt bloß "Strom" als Nachricht.
Es soll aber, wenn ich z.B. "35" am Slider wähle, dass kommen: { "value": 35}
und an das Topic wird auch nicht gesendet?
defmod Test_MQTT MQTT2_DEVICE
attr Test_MQTT IODev MQTT2_Server
attr Test_MQTT autocreate 1
attr Test_MQTT setList Strom:slider,0,5,35 $W/Seriennummer/settings/0/Settings/SystemSetup/MaxChargeCurrent/set {"value": $EVTPART1}
attr Test_MQTT webCmd Strom
Besten Dank
Wo kommt (v.a.) das "$W" her? Und wie soll MQTT2_DEVICE wissen, wie es das auflösen soll?
Nach deinen bisherigen Infos müßte es so klappen (vorausgesetzt, der Topic paßt ansonsten):
attr Test_MQTT setList Strom:slider,0,5,35 W/b827eb256f4c/settings/0/Settings/SystemSetup/MaxChargeCurrent/set {"value": $EVTPART1}
Besten Dank,
ohne "set" und "$" wird alles richtig gesendet. Ich muss nur mal gucken warum mein Victron das nicht empfängt. Hier mein defmod
defmod Test_MQTT MQTT2_DEVICE
attr Test_MQTT autocreate 1
attr Test_MQTT setList Strom:slider,0,5,35 W/Seriennummer/settings/0/Settings/SystemSetup/MaxChargeCurrent {"value": $EVTPART1}
attr Test_MQTT webCmd Strom
Der "Verdacht" wäre, dass das der Antwort-Topic ist, und die Soll-Vorgabe auf einem anderen Topic erwartet wird. Ohne Doku bzw. ggf. "subscriptions"-Info vom MQTT2_DEVICE ist das halt schwierig von hier aus zu beurteilen...
Hier war mal zu finden:
W/b827eb256f4c/settings/0/Settings/CGwacs/AcPowerSetPoint
Antwort gibts über N/...
Schreiben über W/...
OK, dann liegt es vermutlich an was anderem. Was ich neulich mal hatte: eine (nicht fertige) ESP-firmware hat sich nach einem FHEM-Restart nicht mehr beim MQTT2_SERVER eingeschrieben und daher keine updates mehr auf dem vorgesehenen Topic mehr empfangen. Reboot von dem Ding, und alles war wieder gut. Vielleicht ist es ja sowas...?