Re: [mh] mqtt_discovery

Brian M <[email protected]> Sun, 15 Feb 2026 15:16:22 -0800
Newsgroups gmane.comp.misc.misterhouse.user
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--===============4037549547356766613==
Content-Type: multipart/alternative;
 boundary="------------TgbU5YxWWBqHdO7VImnBp3Cr"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------TgbU5YxWWBqHdO7VImnBp3Cr
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Here's another one that might make more sense to you than to me. I'm 
using a Zooz ZSE41 door sensor. mqtt_discovery.pm produced the following 
code to define it:

    MQTT_DISCOVEREDITEM, Downstairs_Hall_Closet_Sensor, mqtt_discovery2,
    app/zwave-js-ui/config/switch/Downstairs_Hall-Closet_Sensor/config_switch_1/config,
    {"payload_off":"0","payload_on":"1","value_template":"{{
    value_json.value
    }}","command_topic":"app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/configuration/endpoint_0/LED_Indicator/set","enabled_by_default":false,"entity_category":"config","state_topic":"app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/configuration/endpoint_0/LED_Indicator","availability":[{"payload_available":"true","payload_not_available":"false","topic":"app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/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_node19"],"manufacturer":"Zooz","model":"Open/Close
    XS Sensor
    (ZSE41)","name":"Downstairs_Hall-Closet_Sensor","sw_version":"2.30.0"},"name":"Downstairs_Hall_Closet_Sensor","unique_id":"zwavejs2mqtt_0xc92945ec_19-112-0-1"}


Here's a door open/door close sequence.

    # Initial state: door closed

    # Opening door.
    2026-02-15 15:02:48 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive'
    M:'{"time":1771196567992,"value":1771196567992}'
    2026-02-15 15:02:48 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
    {"time":1771196567992,"value":1771196567992}
    2026-02-15 15:02:48 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType'
    M:'{"time":1771196567993,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:02:48 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType
    --
    {"time":1771196567993,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:02:48 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel'
    M:'{"time":1771196567994,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:02:48 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel
    --
    {"time":1771196567994,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:02:48 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple'
    M:'{"time":1771196567995,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:02:48 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple
    --
    {"time":1771196567995,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:02:48 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state'
    M:'{"time":1771196567996,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:02:48 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state
    --
    {"time":1771196567996,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:02:48 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive'
    M:'{"time":1771196568241,"value":1771196568016}'
    2026-02-15 15:02:48 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
    {"time":1771196568241,"value":1771196568016}

    # Closing door.
    2026-02-15 15:03:10 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive'
    M:'{"time":1771196590395,"value":1771196590395}'
    2026-02-15 15:03:10 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
    {"time":1771196590395,"value":1771196590395}
    2026-02-15 15:03:10 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType'
    M:'{"time":1771196590396,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:03:10 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType
    --
    {"time":1771196590396,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:03:10 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel'
    M:'{"time":1771196590397,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:03:10 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel
    --
    {"time":1771196590397,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:03:10 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple'
    M:'{"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:03:10 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple
    --
    {"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:03:10 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state'
    M:'{"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'
    2026-02-15 15:03:10 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state
    --
    {"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}
    2026-02-15 15:03:10 [MQTT D1]: mqttserver Rcv'd: R:0
    T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive'
    M:'{"time":1771196590646,"value":1771196590419}'
    2026-02-15 15:03:10 [MQTT D2]: UNHANDLED MESSAGE
    app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
    {"time":1771196590646,"value":1771196590419}

The fields that indicate the door status don't appear in the discovery 
data that I can see at all. The MH object always shows the state to be 
"on", regardless of the actual door open/closed status.

                        -B.





On 2/14/26 11:17, Brian M wrote:
> Thanks, Dave. That would be great.
>
>              -B.
>
> On 2/14/26 10:42, Dave Neudoerffer wrote:
>> Thanx for the trace Brian.  The discovery topics and templates being 
>> used are slightly different from anything I have seen before.  It 
>> shouldn't be too hard to enhance the MH discovery to handle this.  
>> The Jinja templates are a bit of a nuisance, but I will fudge 
>> something...  It will take me a few days to get to this...
>>
>> Dave
>>
>> On Fri, Feb 13, 2026 at 7:01 PM Brian M 
>> <[email protected]> wrote:
>>
>>     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
>>
>

--------------TgbU5YxWWBqHdO7VImnBp3Cr
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>
    <div class="moz-cite-prefix">Here's another one that might make more
      sense to you than to me. I'm using a Zooz ZSE41 door sensor.
      mqtt_discovery.pm produced the following code to define it:</div>
    <blockquote>
      <div class="moz-cite-prefix"><font face="monospace">MQTT_DISCOVEREDITEM,
          Downstairs_Hall_Closet_Sensor, mqtt_discovery2,
app/zwave-js-ui/config/switch/Downstairs_Hall-Closet_Sensor/config_switch_1/config,
          {"payload_off":"0","payload_on":"1","value_template":"{{
          value_json.value
}}","command_topic":"app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/configuration/endpoint_0/LED_Indicator/set","enabled_by_default":false,"entity_category":"config","state_topic":"app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/configuration/endpoint_0/LED_Indicator","availability":[{"payload_available":"true","payload_not_available":"false","topic":"app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/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_node19"],"manufacturer":"Zooz","model":"Open/Close
          XS Sensor
(ZSE41)","name":"Downstairs_Hall-Closet_Sensor","sw_version":"2.30.0"},"name":"Downstairs_Hall_Closet_Sensor","unique_id":"zwavejs2mqtt_0xc92945ec_19-112-0-1"}<br>
        </font></div>
    </blockquote>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Here's a door open/door close
      sequence. </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">
      <blockquote><font face="monospace"># Initial state: door closed</font><br>
        <br>
        <font face="monospace"># Opening door.</font><br>
        <font face="monospace">2026-02-15 15:02:48 [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/Downstairs_Hall/Closet_Sensor/lastActive">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive</a>'
          M:'{"time":1771196567992,"value":1771196567992}'</font><br>
        <font face="monospace">2026-02-15 15:02:48 [MQTT D2]: UNHANDLED
          MESSAGE
          app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
          {"time":1771196567992,"value":1771196567992}</font><br>
        <font face="monospace">2026-02-15 15:02:48 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType</a>'
M:'{"time":1771196567993,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:02:48 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType
          --
{"time":1771196567993,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:02:48 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel</a>'
M:'{"time":1771196567994,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:02:48 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel
          --
{"time":1771196567994,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:02:48 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple</a>'
M:'{"time":1771196567995,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:02:48 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple
          --
{"time":1771196567995,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:02:48 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state</a>'
M:'{"time":1771196567996,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:02:48 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state
          --
{"time":1771196567996,"value":22,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:02:48 [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/Downstairs_Hall/Closet_Sensor/lastActive">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive</a>'
          M:'{"time":1771196568241,"value":1771196568016}'</font><br>
        <font face="monospace">2026-02-15 15:02:48 [MQTT D2]: UNHANDLED
          MESSAGE
          app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
          {"time":1771196568241,"value":1771196568016}</font><br>
        <br>
        <font face="monospace"># Closing door.</font><br>
        <font face="monospace">2026-02-15 15:03:10 [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/Downstairs_Hall/Closet_Sensor/lastActive">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive</a>'
          M:'{"time":1771196590395,"value":1771196590395}'</font><br>
        <font face="monospace">2026-02-15 15:03:10 [MQTT D2]: UNHANDLED
          MESSAGE
          app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
          {"time":1771196590395,"value":1771196590395}</font><br>
        <font face="monospace">2026-02-15 15:03:10 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType</a>'
M:'{"time":1771196590396,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:03:10 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmType
          --
{"time":1771196590396,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:03:10 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel</a>'
M:'{"time":1771196590397,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:03:10 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/alarmLevel
          --
{"time":1771196590397,"value":0,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:03:10 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple</a>'
M:'{"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:03:10 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state_simple
          --
{"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:03:10 [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/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state</a>'
M:'{"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}'</font><br>
        <font face="monospace">2026-02-15 15:03:10 [MQTT D2]: UNHANDLED
          MESSAGE
app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state
          --
{"time":1771196590398,"value":23,"nodeName":"Closet_Sensor","nodeLocation":"Downstairs_Hall"}</font><br>
        <font face="monospace">2026-02-15 15:03:10 [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/Downstairs_Hall/Closet_Sensor/lastActive">T:'app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive</a>'
          M:'{"time":1771196590646,"value":1771196590419}'</font><br>
        <font face="monospace">2026-02-15 15:03:10 [MQTT D2]: UNHANDLED
          MESSAGE
          app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/lastActive --
          {"time":1771196590646,"value":1771196590419}</font><br>
      </blockquote>
      The fields that indicate the door status don't appear in the
      discovery data that I can see at all. The MH object always shows
      the state to be "on", regardless of the actual door open/closed
      status. </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">                       -B.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">On 2/14/26 11:17, Brian M wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:[email protected]">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <div class="moz-cite-prefix">Thanks, Dave. That would be great.</div>
      <div class="moz-cite-prefix"><br>
      </div>
      <div class="moz-cite-prefix">             -B.</div>
      <div class="moz-cite-prefix"><br>
      </div>
      <div class="moz-cite-prefix">On 2/14/26 10:42, Dave Neudoerffer
        wrote:<br>
      </div>
      <blockquote type="cite"
cite="mid:CAOFx8LNRAjgXOCL_V3z_k69w8GfmYN5kiuzAs-A=22L+2Acifw@mail.gmail.com">
        <meta http-equiv="content-type"
          content="text/html; charset=UTF-8">
        <div dir="ltr">Thanx for the trace Brian.  The discovery topics
          and templates being used are slightly different from anything
          I have seen before.  It shouldn't be too hard to enhance the
          MH discovery to handle this.  The Jinja templates are a bit of
          a nuisance, but I will fudge something...  It will take me a
          few days to get to this...
          <div><br>
          </div>
          <div>Dave</div>
        </div>
        <br>
        <div class="gmail_quote gmail_quote_container">
          <div dir="ltr" class="gmail_attr">On Fri, Feb 13, 2026 at
            7:01 PM Brian M &lt;<a
              href="mailto:[email protected]"
              moz-do-not-send="true" class="moz-txt-link-freetext">[email protected]</a>&gt;
            wrote:<br>
          </div>
          <blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            <div>
              <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--&gt;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-&gt;{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 moz-do-not-send="true">R:0</a> <a
                      moz-do-not-send="true">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-&gt;{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 moz-do-not-send="true">R:0</a>
                    <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                    <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                    <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a> <a
                      moz-do-not-send="true">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-&gt;{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 moz-do-not-send="true">R:0</a> <a
                      moz-do-not-send="true">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-&gt;{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><br>
              </div>
              <div>On 2/13/26 15:08, Dave Neudoerffer wrote:<br>
              </div>
              <blockquote type="cite">
                <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>
            </div>
          </blockquote>
        </div>
      </blockquote>
      <p><br>
      </p>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>

--------------TgbU5YxWWBqHdO7VImnBp3Cr--


--===============4037549547356766613==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============4037549547356766613==
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


--===============4037549547356766613==--