Vallox through MQTT2

Begonnen von jeter, 31 Dezember 2023, 13:45:36

Vorheriges Thema - Nächstes Thema

jeter


Hi All, I have a question on MQTT2 and how to control my Vallox 140SE unit using MQTT2 in FHEM.

I've integrated the Vallox unit with FHEM using the 'valloxesp' solution from github (kotope).
The MQTT2 reading all work perfect through autocreate as an MQTT2_DEVICE.

But I have not clue how to control the speed of the unit. Even after reading all MQTT2 topics I could find and MQTT2 examples pages, I cannot get this to work.

I tried things like this:
set MQTTBroker publish /set/vallox/speed 8

or
attr MQTT2_vallox setList on vallox/set/speed 8

But I struggle to understand how this works.

My device internals:

CFGFN
CIDvallox
DEFvallox
FUUID65900de2-f33f-d8df-58e1-b49b7ed1d4d89010
IODevMQTTBroker
LASTInputDevMQTTBroker
MQTTBroker_CONNMQTTBroker_192.168.123.194_49153
MQTTBroker_MSGCNT416
MQTTBroker_TIME2023-12-31 12:58:43
MSGCNT416
NAMEMQTT2_vallox
NR312843
STATEspeed
TYPEMQTT2_DEVICE
eventCount443






rudolfkoenig

I dont seem to find a proper documentation on the valloxesp site, it seems to me that the (only) goal was a HomeAssistant integration.

From the source code it seems to subscribe to vallox/state and if debugging is enabled to vallox/debug.
You can verify this by looking at the subscription in "list MQTTBroker_192.168.123.194_49153"

The payload is JSON, and a setList may(!) look like the following:

attr vallox setList\
mode:FAN,HEAT vallox/set {"mode":"$EVTPART1"}\
speed vallox/set {"speed":"$EVTPART1"}\
heat_target vallox/set {"heat_target":"$EVTPART1"}\
activate_switch:noArg vallox/set {"activate_switch":1}
UNTESTED! as I have no such device.

If you set debuggig in valloxesp, it will tell you (in some cases) what went wrong in sending the MQTT command.

See also
https://github.com/kotope/valloxesp/blob/master/valloxesp/valloxesp.ino#L121

jeter

Thank you very much for the hints... this was exactly what I needed and even if untested, it is working perfectly!  :)

I'm controlling the fan speed like this:

attr MQTT2_vallox setList speed vallox/set {"speed":$EVTPART1}
attr MQTT2_vallox webCmd speed
attr MQTT2_vallox widgetOverride speed:slider,1,1,8

Happy newyear!