Re: [mh] mqtt_discovery

Brian M <[email protected]> Tue, 17 Feb 2026 19:34:23 -0800
Newsgroups gmane.comp.misc.misterhouse.user
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--===============5592222993712139733==
Content-Type: multipart/alternative;
 boundary="------------KA2QQu7EyIR0Ocf40GAauCdl"
Content-Language: en-US

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

Great, Dave. I've got a project in flight right now, but I should be 
able to check those out later this week or this weekend. I'm anxious to 
see how those do.

You're right that the ZSE11 is a multi-sensor device, specifically 
motion, light, temperature, and humidity. And yes, there's an LED that 
can be configured. Not having studied MQTT Discovery, I'm surprised to 
learn that a device doesn't publish all it's discovery info at once. 
I'll try to capture some samples of the other discovery data items for 
the device for you.

As for the HA interface ... I've gone through a curious about-face on my 
home automation plans. My plan had been to migrate from MH and Insteon 
to OpenHab and Z-wave. I'd probably never complete that migration 
however, give the size of my MH code base. So like a lot of others on 
this mailing list, I figured I'd get to OH handling the devices and MH 
handling the logic side, in my case with MQTT as the middleman. With the 
advent of Zwave-JS-UI, however, I'm far less interested in OpenHab, as 
it's ZWave support was my primary interest. So no I'm looking at MH 
running the Insteon devices that are still around and talking to 
Zwave-JS-UI via MQTT. OH will remain, but only for a few stray kinds of 
devices that it understands, like my Tapo strip lights, and perhaps 
Matter in the future. I'm in favor of having as few components as 
possible to limit maintenance and brainpower demands, so I'm going to 
try to hold off on HA for now. I'm not opposed to it, I just need a 
demand I can't solve with what I already have.

Some of the rest of the of your e-mail is going to take more study 
before I can respond, but is always appreciated and always solid 
information. You're a great asset for the community.

Best,
                       -B.

On 2/17/26 18:39, Dave Neudoerffer wrote:
> And you will need read_table_A.pl for the new MQTT_RAWITEM...
>
> Dave
>
> On Tue, Feb 17, 2026 at 6:55 PM Dave Neudoerffer 
> <[email protected]> wrote:
>
>     Hey Brian and Howard, et all,
>
>     So, Brian, I got your first 2 problems fixed.  The set('3%') was a
>     bug when the state and brightness topics are the same -- fixed. 
>     The other problem was that the simple template processing I put in
>     didn't handle a template of the form {{ <value_true> IF
>     <condition> ELSE <value_false>}}.  I added some support for that
>     specific template form.
>
>     Your sensor problem above is weird.  The discovery message bills
>     the door sensor as a switch.  That sort of makes sense -- would
>     send ON and OFF when the door is opened and closed.  But the
>     messages that get sent don't match the discovery info at all.  A
>     quick search (thanx gemini) would indicate that zwave JS is likely
>     defining multiple mqtt devices for the sensor.  I think that the
>     specific discovery message you sent is actually a configuration
>     object that you can use to control the behaviour of the LED on
>     device.  There must be other discovery objects as well for the
>     sensor.  It looks like -- door_state=22 means open and
>     door_state=23 means closed -- and a web search confirms that.  The
>     *discovered device for door_state* should be able to handle the
>     messages.
>
>     If not, you could use the new MQTT_RAWITEM that I just added to
>     define a binary_sensor to handle the messages using hand coded
>     discovery info:
>     MQTT_RAWITEM, Downstairs_Hall_Closet_Sensor, mqtt_discovery2,
>     app/zwave-js-ui/config/binary_sensor/Downstairs_Hall-Closet_Sensor/closet_door_sensor/config,
>
>     {"value_template":"{{ "ON" if value_json.value==22 else "OFF"
>     }}","state_topic":"app/zwave-js-ui/Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state"}
>     (I have tried this definition with the messages above and they are
>     processed correctly into on/off for the binary_sensor, but again,
>     if you can find the discovery message for the actual door_state,
>     it should work too.)
>
>
>     *<IMPORTANT POINT>*
>     This conversation does raise an important point. Almost all mqtt
>     discovery stuff published by devices and other software, is
>     specifically setup to be consumed by Home Assistant.  I HAVE NOT
>     implemented the entire Home Assistant discovery language in
>     Misterhouse, nor do I intend to.  I am sure that Home Assistant
>     would process these zwave JS discovery messages very well.  As per
>     Howards comments earlier, if you were to setup Home Assistant, the
>     devices would show up there.  You could then use the HA_Item.pm
>     module in Misterhouse to pull in the Home Assistant entities that
>     you want and run your misterhouse logic against those items. 
>      This is actually easier to setup than it sounds.
>
>     I have attached the latest mqtt files.  There are a lot of changes
>     here, because this is my working version for optionally supporting
>     the new HA device discovery variation of mqtt discovery.  I am
>     running this code on 4 MH instances, and all seems good so far.  I
>     will submit a pull request soon.   You need to replace all 3 in
>     your installation (take backup copies first :-).  If you have any
>     problems, give me a shout.
>
>     *<ASIDE>*
>     The reason I have implemented the HA device discovery variation of
>     mqtt discovery is that I have been trying out using the
>     matter_bridge to expose devices from HA to matter and thus to
>     google (or alexa or apple).  The matter bridge works easiest if
>     you can put a label on the HA devices that you want exposed. 
>     However, you can't put labels on raw HA entities -- hence putting
>     in the HA device support.  Also, I still use Misterhouse for
>     hosting my Insteon devices because I find the MH support better
>     than HA, and I define all kinds of utility switches, scenes, and
>     variables in Misterhouse that I expose to HA using mqtt.  Exposing
>     those things as devices allows me to then expose the HA devices to
>     matter via the matter_bridge and control them easily with Google
>     home/assistant.  It is an alternative to the Google/Alexa support
>     in Misterhouse or Home Assistant, which is cloud based and a pain
>     to setup.
>
>     Dave
>
>     On Sun, Feb 15, 2026 at 6:16 PM Brian M
>     <[email protected]> wrote:
>
>         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
>         <http://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
>>>
>>
>

--------------KA2QQu7EyIR0Ocf40GAauCdl
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">Great, Dave. I've got a project in
      flight right now, but I should be able to check those out later
      this week or this weekend. I'm anxious to see how those do.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">You're right that the ZSE11 is a
      multi-sensor device, specifically motion, light, temperature, and
      humidity. And yes, there's an LED that can be configured. Not
      having studied MQTT Discovery, I'm surprised to learn that a
      device doesn't publish all it's discovery info at once. I'll try
      to capture some samples of the other discovery data items for the
      device for you.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">As for the HA interface ... I've gone
      through a curious about-face on my home automation plans. My plan
      had been to migrate from MH and Insteon to OpenHab and Z-wave. I'd
      probably never complete that migration however, give the size of
      my MH code base. So like a lot of others on this mailing list, I
      figured I'd get to OH handling the devices and MH handling the
      logic side, in my case with MQTT as the middleman. With the advent
      of Zwave-JS-UI, however, I'm far less interested in OpenHab, as
      it's ZWave support was my primary interest. So no I'm looking at
      MH running the Insteon devices that are still around and talking
      to Zwave-JS-UI via MQTT. OH will remain, but only for a few stray
      kinds of devices that it understands, like my Tapo strip lights,
      and perhaps Matter in the future. I'm in favor of having as few
      components as possible to limit maintenance and brainpower
      demands, so I'm going to try to hold off on HA for now. I'm not
      opposed to it, I just need a demand I can't solve with what I
      already have.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Some of the rest of the of your e-mail
      is going to take more study before I can respond, but is always
      appreciated and always solid information. You're a great asset for
      the community.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Best,</div>
    <div class="moz-cite-prefix">                      -B.</div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">On 2/17/26 18:39, Dave Neudoerffer
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAOFx8LNzWfKo__qZn16hJVrrsrSS=v2pHKDwMRV2NrveQFenPw@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">And you will need read_table_A.pl for the new
        MQTT_RAWITEM...
        <div><br>
        </div>
        <div>Dave</div>
      </div>
      <br>
      <div class="gmail_quote gmail_quote_container">
        <div dir="ltr" class="gmail_attr">On Tue, Feb 17, 2026 at
          6:55 PM Dave Neudoerffer &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 dir="ltr">Hey Brian and Howard, et all,
            <div><br>
            </div>
            <div>So, Brian, I got your first 2 problems fixed.  The
              set('3%') was a bug when the state and brightness topics
              are the same -- fixed.  The other problem was that the
              simple template processing I put in didn't handle a
              template of the form {{ &lt;value_true&gt; IF
              &lt;condition&gt; ELSE &lt;value_false&gt;}}.  I added
              some support for that specific template form.  </div>
            <div><br>
            </div>
            <div>Your sensor problem above is weird.  The discovery
              message bills the door sensor as a switch.  That sort of
              makes sense -- would send ON and OFF when the door is
              opened and closed.  But the messages that get sent don't
              match the discovery info at all.  A quick search (thanx
              gemini) would indicate that zwave JS is likely defining
              multiple mqtt devices for the sensor.  I think that the
              specific discovery message you sent is actually a
              configuration object that you can use to control the
              behaviour of the LED on device.  There must be other
              discovery objects as well for the sensor.  It looks like
              -- door_state=22 means open and door_state=23 means closed
              -- and a web search confirms that.  The <b>discovered
                device for door_state</b> should be able to handle the
              messages.  </div>
            <div><br>
            </div>
            <div>If not, you could use the new MQTT_RAWITEM that I just
              added to define a binary_sensor to handle the messages
              using hand coded discovery info:</div>
            <div><span style="font-family:monospace">MQTT_RAWITEM,
                Downstairs_Hall_Closet_Sensor, mqtt_discovery2,
                app/zwave-js-ui/config/binary_sensor/</span><span
                style="font-family:monospace">Downstairs_Hall-Closet_Sensor/closet_door_sensor</span><span
                style="font-family:monospace">/config, </span></div>
            <div><span style="font-family:monospace">{</span><span
                style="font-family:monospace">"value_template":"{{ "ON"
                if value_json.value==22 else "OFF" }}",</span><span
                style="font-family:monospace">"</span><span
                style="font-family:monospace">state_topic":"app/zwave-js-ui/</span><span
                style="font-family:monospace">Downstairs_Hall/Closet_Sensor/notification/endpoint_0/Access_Control/Door_state"}</span></div>
            <div>(I have tried this definition with the messages above
              and they are processed correctly into on/off for the
              binary_sensor, but again, if you can find the discovery
              message for the actual door_state, it should work too.)</div>
            <div><br>
            </div>
            <div><br>
            </div>
            <div><b>&lt;IMPORTANT POINT&gt;</b></div>
            <div>This conversation does raise an important point. 
              Almost all mqtt discovery stuff published by devices and
              other software, is specifically setup to be consumed by
              Home Assistant.  I HAVE NOT implemented the entire Home
              Assistant discovery language in Misterhouse, nor do I
              intend to.  I am sure that Home Assistant would process
              these zwave JS discovery messages very well.  As per
              Howards comments earlier, if you were to setup Home
              Assistant, the devices would show up there.  You could
              then use the HA_Item.pm module in Misterhouse to pull in
              the Home Assistant entities that you want and run your
              misterhouse logic against those items.   This is actually
              easier to setup than it sounds.</div>
            <div><br>
            </div>
            <div>I have attached the latest mqtt files.  There are a lot
              of changes here, because this is my working version for
              optionally supporting the new HA device discovery
              variation of mqtt discovery.  I am running this code on 4
              MH instances, and all seems good so far.  I will submit a
              pull request soon.   You need to replace all 3 in your
              installation (take backup copies first :-).  If you have
              any problems, give me a shout.</div>
            <div><br>
            </div>
            <div><b>&lt;ASIDE&gt;</b></div>
            <div>The reason I have implemented the HA device discovery
              variation of mqtt discovery is that I have been trying out
              using the matter_bridge to expose devices from HA to
              matter and thus to google (or alexa or apple).  The matter
              bridge works easiest if you can put a label on the HA
              devices that you want exposed.  However, you can't put
              labels on raw HA entities -- hence putting in the HA
              device support.  Also, I still use Misterhouse for hosting
              my Insteon devices because I find the MH support better
              than HA, and I define all kinds of utility switches,
              scenes, and variables in Misterhouse that I expose to HA
              using mqtt.  Exposing those things as devices allows me to
              then expose the HA devices to matter via the matter_bridge
              and control them easily with Google home/assistant.  It is
              an alternative to the Google/Alexa support in Misterhouse
              or Home Assistant, which is cloud based and a pain to
              setup.  </div>
            <div><br>
            </div>
            <div>Dave</div>
          </div>
          <br>
          <div class="gmail_quote">
            <div dir="ltr" class="gmail_attr">On Sun, Feb 15, 2026 at
              6:16 PM Brian M &lt;<a
                href="mailto:[email protected]"
                target="_blank" 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>
                <div>Here's another one that might make more sense to
                  you than to me. I'm using a Zooz ZSE41 door sensor. <a
                    href="http://mqtt_discovery.pm" target="_blank"
                    moz-do-not-send="true">mqtt_discovery.pm</a>
                  produced the following code to define it:</div>
                <blockquote>
                  <div><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><br>
                </div>
                <div>Here's a door open/door close sequence. </div>
                <div><br>
                </div>
                <div>
                  <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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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 moz-do-not-send="true">R:0</a>
                      <a moz-do-not-send="true">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><br>
                </div>
                <div>                       -B.</div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div><br>
                </div>
                <div>On 2/14/26 11:17, Brian M wrote:<br>
                </div>
                <blockquote type="cite">
                  <div>Thanks, Dave. That would be great.</div>
                  <div><br>
                  </div>
                  <div>             -B.</div>
                  <div><br>
                  </div>
                  <div>On 2/14/26 10:42, Dave Neudoerffer wrote:<br>
                  </div>
                  <blockquote type="cite">
                    <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">
                      <div dir="ltr" class="gmail_attr">On Fri, Feb 13,
                        2026 at 7:01 PM Brian M &lt;<a
                          href="mailto:[email protected]"
                          target="_blank" 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>
              </div>
            </blockquote>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>

--------------KA2QQu7EyIR0Ocf40GAauCdl--


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


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


--===============5592222993712139733==--