Re: [mh] mqtt_discovery
Brian M <[email protected]> Fri, 13 Feb 2026 16:01:29 -0800
| Newsgroups | gmane.comp.misc.misterhouse.user |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format.
--===============7619364657997973036==
Content-Type: multipart/alternative;
boundary="------------QQo9ThQYGVv0JNAvff6Tgay7"
Content-Language: en-US
This is a multi-part message in MIME format.
--------------QQo9ThQYGVv0JNAvff6Tgay7
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Thanks, Dave. Mostly I'm in good shape, but I've got some edge cases.
My primary problem at the moment seems to be that I can't set the
brightness for my ZWave dimmer switches via ZWave-JS-UI. The correct
MQTT string in one instance is:
app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue/set
Writing "3" to that MQTT topic (via MQTT-Explorer) causes the light to
come on at 3%, as expected. However, in MH setting it to 3, '3', or '3%'
results in the light being turned on 100%.
I can't tell if this is a problem in with the discovery itself, or the
implementation of of setting the MQTT_DISCOVEREDITEM. Here are some
details:
The MQTT discovered_item entry:
MQTT_DISCOVEREDITEM, Upstairs_Landing_Stairs, mqtt_discovery2,
app/zwave-js-ui/config/light/Upstairs_Landing-Stairs/dimmer/config,
{"command_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue/set","state_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue","state_value_template":"{{
\"OFF\" if value_json.value == 0 else \"ON\"
}}","brightness_command_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue/set","brightness_scale":99,"brightness_state_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue","brightness_value_template":"{{
value_json.value
}}","on_command_type":"brightness","supported_color_modes":["brightness"],"availability":[{"payload_available":"true","payload_not_available":"false","topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/status","value_template":"{{'true'
if value_json.value else
'false'}}"},{"topic":"app/zwave-js-ui/_CLIENTS/ZWAVE_GATEWAY-zwave-js-ui/status","value_template":"{{'online'
if value_json.value else
'offline'}}"},{"payload_available":"true","payload_not_available":"false","topic":"app/zwave-js-ui/driver/status"}],"availability_mode":"all","device":{"identifiers":["zwavejs2mqtt_0xc92945ec_node259"],"manufacturer":"Zooz","model":"Dimmer
(ZEN72)","name":"Upstairs_Landing-Stairs","sw_version":"4.0.1"},"name":"Upstairs_Landing_Stairs","unique_id":"zwavejs2mqtt_0xc92945ec_259-38-0-currentValue"}
Relevant log messages (MQTT debug level 2):
2026-02-13 15:54:59 [MQTT D2]: Pending
$Upstairs_Landing_Stairs-->set( 3%, , ) cleared
2026-02-13 15:54:59 [MQTT D1]: unable to process template
{{"OFF"ifvalue_json.value==0else"ON"}}
2026-02-13 15:54:59 [MQTT D2]: fishing template value out of json
with '$value = $value_json->{value}'
2026-02-13 15:54:59 [MQTT D1]: remote item MQTT to MH
Upstairs_Landing_Stairs set(95%, '')
2026-02-13 15:54:59 [MQTT D2]: remote item $Upstairs_Landing_Stairs
received message R:0
T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue
M:{"time":1771026899727,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}
2026-02-13 15:54:59 [MQTT D1]: unable to process template
{{"OFF"ifvalue_json.value==0else"ON"}}
2026-02-13 15:54:59 [MQTT D2]: fishing template value out of json
with '$value = $value_json->{value}'
2026-02-13 15:54:59 [MQTT D1]: remote item MQTT to MH
Upstairs_Landing_Stairs set(95%, 'mqtt')
2026-02-13 15:54:59 [MQTT D1]: mqttserver Rcv'd: R:0
T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/duration'
M:'{"time":1771026899728,"value":{"value":0,"unit":"seconds"},"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}'
2026-02-13 15:54:59 [MQTT D2]: UNHANDLED MESSAGE
app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/duration
--
{"time":1771026899728,"value":{"value":0,"unit":"seconds"},"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}
2026-02-13 15:54:59 [MQTT D1]: mqttserver Rcv'd: R:0
T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue'
M:'{"time":1771026899728,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}'
2026-02-13 15:54:59 [MQTT D2]: UNHANDLED MESSAGE
app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue
--
{"time":1771026899728,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}
2026-02-13 15:54:59 [MQTT D1]: mqttserver Rcv'd: R:0
T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue'
M:'{"time":1771026899858,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}'
2026-02-13 15:54:59 [MQTT D2]: remote item $Upstairs_Landing_Stairs
received message R:0
T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue
M:{"time":1771026899858,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}
2026-02-13 15:54:59 [MQTT D1]: unable to process template
{{"OFF"ifvalue_json.value==0else"ON"}}
2026-02-13 15:54:59 [MQTT D2]: fishing template value out of json
with '$value = $value_json->{value}'
2026-02-13 15:54:59 [MQTT D1]: remote item MQTT to MH
Upstairs_Landing_Stairs set(95%, 'mqtt')
2026-02-13 15:54:59 [MQTT D2]: remote item $Upstairs_Landing_Stairs
received message R:0
T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue
M:{"time":1771026899858,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}
2026-02-13 15:54:59 [MQTT D1]: unable to process template
{{"OFF"ifvalue_json.value==0else"ON"}}
2026-02-13 15:54:59 [MQTT D2]: fishing template value out of json
with '$value = $value_json->{value}'
2026-02-13 15:54:59 [MQTT D1]: remote item MQTT to MH
Upstairs_Landing_Stairs set(95%, 'mqtt')
Clearly it's not happy, but I haven't been able to chase down the root
cause. BTW, the "95%" mentioned in the logs was the switch's existing
brightness level before I tried to change it.
Hopefully, this is clearer to you than to me.
-B.
On 2/13/26 15:08, Dave Neudoerffer wrote:
> You are correct Brian. HA_Item is about mirroring home assistant
> entities. Howard uses HA to host most of his devices and MH for
> automations using HA_Items. Without a HA service, HA_Item makes no sense.
>
> In implementing mqtt_items, I had a few different sources of mqtt
> devices, but not a huge variety. No did not have any zwave2mqtt stuff.
> I have used the zigbee2mqtt stuff. I am actually in the process of
> enhancing the MH discovery stuff to handle the new HA device discovery
> methodology. If there is something I can help with, let me know.
>
> Dave
--------------QQo9ThQYGVv0JNAvff6Tgay7
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Thanks, Dave. Mostly I'm in good shape, but I've got some edge
cases. </p>
<p>My primary problem at the moment seems to be that I can't set the
brightness for my ZWave dimmer switches via ZWave-JS-UI. The
correct MQTT string in one instance is:</p>
<p>
app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue/set</p>
<p>Writing "3" to that MQTT topic (via MQTT-Explorer) causes the
light to come on at 3%, as expected. However, in MH setting it to
3, '3', or '3%' results in the light being turned on 100%.</p>
<p>I can't tell if this is a problem in with the discovery itself,
or the implementation of of setting the MQTT_DISCOVEREDITEM. Here
are some details:</p>
<p>The MQTT discovered_item entry:</p>
<blockquote>
<p><font face="monospace">MQTT_DISCOVEREDITEM,
Upstairs_Landing_Stairs, mqtt_discovery2,
app/zwave-js-ui/config/light/Upstairs_Landing-Stairs/dimmer/config,
{"command_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue/set","state_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue","state_value_template":"{{
\"OFF\" if value_json.value == 0 else \"ON\"
}}","brightness_command_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue/set","brightness_scale":99,"brightness_state_topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue","brightness_value_template":"{{
value_json.value
}}","on_command_type":"brightness","supported_color_modes":["brightness"],"availability":[{"payload_available":"true","payload_not_available":"false","topic":"app/zwave-js-ui/Upstairs_Landing/Stairs/status","value_template":"{{'true'
if value_json.value else
'false'}}"},{"topic":"app/zwave-js-ui/_CLIENTS/ZWAVE_GATEWAY-zwave-js-ui/status","value_template":"{{'online'
if value_json.value else
'offline'}}"},{"payload_available":"true","payload_not_available":"false","topic":"app/zwave-js-ui/driver/status"}],"availability_mode":"all","device":{"identifiers":["zwavejs2mqtt_0xc92945ec_node259"],"manufacturer":"Zooz","model":"Dimmer
(ZEN72)","name":"Upstairs_Landing-Stairs","sw_version":"4.0.1"},"name":"Upstairs_Landing_Stairs","unique_id":"zwavejs2mqtt_0xc92945ec_259-38-0-currentValue"}</font></p>
</blockquote>
<p>Relevant log messages (MQTT debug level 2):</p>
<blockquote>
<p><font face="monospace">2026-02-13 15:54:59 [MQTT D2]: Pending
$Upstairs_Landing_Stairs-->set( 3%, , ) cleared</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: unable to
process template {{"OFF"ifvalue_json.value==0else"ON"}}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: fishing
template value out of json with '$value =
$value_json->{value}'</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: remote
item MQTT to MH Upstairs_Landing_Stairs set(95%, '')</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: remote
item $Upstairs_Landing_Stairs received message <a class="moz-txt-link-freetext" href="R:0">R:0</a>
<a class="moz-txt-link-freetext" href="T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue">T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue</a>
M:{"time":1771026899727,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: unable to
process template {{"OFF"ifvalue_json.value==0else"ON"}}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: fishing
template value out of json with '$value =
$value_json->{value}'</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: remote
item MQTT to MH Upstairs_Landing_Stairs set(95%, 'mqtt')</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: mqttserver
Rcv'd: <a class="moz-txt-link-freetext" href="R:0">R:0</a>
<a class="moz-txt-link-freetext" href="T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/duration">T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/duration</a>'
M:'{"time":1771026899728,"value":{"value":0,"unit":"seconds"},"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}'</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: UNHANDLED
MESSAGE
app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/duration
--
{"time":1771026899728,"value":{"value":0,"unit":"seconds"},"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: mqttserver
Rcv'd: <a class="moz-txt-link-freetext" href="R:0">R:0</a>
<a class="moz-txt-link-freetext" href="T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue">T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue</a>'
M:'{"time":1771026899728,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}'</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: UNHANDLED
MESSAGE
app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/targetValue
--
{"time":1771026899728,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: mqttserver
Rcv'd: <a class="moz-txt-link-freetext" href="R:0">R:0</a>
<a class="moz-txt-link-freetext" href="T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue">T:'app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue</a>'
M:'{"time":1771026899858,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}'</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: remote
item $Upstairs_Landing_Stairs received message <a class="moz-txt-link-freetext" href="R:0">R:0</a>
<a class="moz-txt-link-freetext" href="T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue">T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue</a>
M:{"time":1771026899858,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: unable to
process template {{"OFF"ifvalue_json.value==0else"ON"}}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: fishing
template value out of json with '$value =
$value_json->{value}'</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: remote
item MQTT to MH Upstairs_Landing_Stairs set(95%, 'mqtt')</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: remote
item $Upstairs_Landing_Stairs received message <a class="moz-txt-link-freetext" href="R:0">R:0</a>
<a class="moz-txt-link-freetext" href="T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue">T:app/zwave-js-ui/Upstairs_Landing/Stairs/switch_multilevel/endpoint_0/currentValue</a>
M:{"time":1771026899858,"value":95,"nodeName":"Stairs","nodeLocation":"Upstairs_Landing"}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: unable to
process template {{"OFF"ifvalue_json.value==0else"ON"}}</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D2]: fishing
template value out of json with '$value =
$value_json->{value}'</font><br>
<font face="monospace">2026-02-13 15:54:59 [MQTT D1]: remote
item MQTT to MH Upstairs_Landing_Stairs set(95%, 'mqtt')</font></p>
</blockquote>
<p><br>
Clearly it's not happy, but I haven't been able to chase down the
root cause. BTW, the "95%" mentioned in the logs was the switch's
existing brightness level before I tried to change it.</p>
<p>Hopefully, this is clearer to you than to me.</p>
<p> -B.</p>
<p><br>
</p>
<p><br>
</p>
<div class="moz-cite-prefix"><br>
</div>
<div class="moz-cite-prefix">On 2/13/26 15:08, Dave Neudoerffer
wrote:<br>
</div>
<blockquote type="cite"
cite="mid:CAOFx8LMsJpqbNtOHhKHpSraehWgMGUue2+2oaQ20NHqmZ0MY9Q@mail.gmail.com">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="auto">
<div>You are correct Brian. HA_Item is about mirroring home
assistant entities. Howard uses HA to host most of his
devices and MH for automations using HA_Items. Without a HA
service, HA_Item makes no sense. </div>
<div dir="auto"><br>
</div>
<div dir="auto">In implementing mqtt_items, I had a few
different sources of mqtt devices, but not a huge variety. No
did not have any zwave2mqtt stuff. I have used the zigbee2mqtt
stuff. I am actually in the process of enhancing the MH
discovery stuff to handle the new HA device discovery
methodology. If there is something I can help with, let me
know. </div>
<div dir="auto"><br>
</div>
<div dir="auto">Dave</div>
</div>
</blockquote>
<br>
</body>
</html>
--------------QQo9ThQYGVv0JNAvff6Tgay7--
--===============7619364657997973036==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
--===============7619364657997973036==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
________________________________________________________
To unsubscribe from this list, go to: https://lists.sourceforge.net/lists/listinfo/misterhouse-users
--===============7619364657997973036==--