Do you need retain to be different on a event by event and device by device basis? Currently it is a global set on General tab. It also can be different for each device so when the value or string changes for the associated device the message will have the desired retain property.
Announcement
Collapse
No announcement yet.
mcsMQTT Plugin
Collapse
This is a sticky topic.
X
X
-
Originally posted by Michael McSharry View PostDo you need retain to be different on a event by event and device by device basis? Currently it is a global set on General tab. It also can be different for each device so when the value or string changes for the associated device the message will have the desired retain property.
Thank you,
Frank
Comment
-
Originally posted by Michael McSharry View PostI'm here to help whenever you have time.
Switch --Zwave-->HS (e.g. Device 123)
mcsMQTT Device 123 has Publish (status) topic HS/Dimmer/, Subscribe (status) topic setup for NR/Dimmer
1. Switch turns ON -> HS Device 123 Value = 100
2. HS Event Device 123 changed to 100 -> msMQTT
3. mcsMQTT Publishes HS/Dimmer with payload 100
4. Broker sends HS/Dimmer=100 to NR
5. NR publishes NR/Dimmer=40 (set to 40% DIM)
6. Broker sends NR/Dimmer=40 to mcsMQTT
7. mcsMQTT sets Device 123 to 40
mcsMQTT debug will time-stamp steps 2, 6 and 7 which are its interface boundaries. The debug checkbox on the General tab needs to be set to get this visibility.
Step 2 will be "HSEvent Do= "
Step 6 will be "ActoOnMessageFor Trigger Topic "
Step 7 will be "Update Accepted "
Wireshark or similar can measure the network traffic timing
If my seven step flow is correct then I actually expect step 8 to generate another HS Event call to mcsMQTT to reflect a change to 40 and the flow would repeat again. It may be that my interpretation is not totally correct, but at least it should show intent and method to understand timing debug available.
In the above there are no user events setup within HS to manage MQTT traffic. It is all done through devices. There are no virtual devices setup as everything is managed through the one real device.
Set it up as below.
What am i missing?
Comment
-
I need some help on your terminology. What I think you indicated is that the status topic (..._Multilevel_1) is being published on a change in Device 111, but when some external node publishes the control topic (..._Multilevel_1_set) there is no change in the Zwave device or HS device 111.
Assuming this is the question, then the control topic payload needs to match something that the Zwave device can understand. If you provide the debug output for time when the control topic is published then more specific input can be provided. Debug is enabled on the General tab and the output in the file \Data\mcsMQTT\mcsMQTT Debug.txt.
Comment
-
Originally posted by Michael McSharry View PostI need some help on your terminology. What I think you indicated is that the status topic (..._Multilevel_1) is being published on a change in Device 111, but when some external node publishes the control topic (..._Multilevel_1_set) there is no change in the Zwave device or HS device 111.
Assuming this is the question, then the control topic payload needs to match something that the Zwave device can understand. If you provide the debug output for time when the control topic is published then more specific input can be provided. Debug is enabled on the General tab and the output in the file \Data\mcsMQTT\mcsMQTT Debug.txt.
Yes, this is correct.
The zwave dimmer is using 0 to 99 as values, i have tried to push, 0, 10 and 99 none where passed on
In the logs below i have changed the device to switch4 HS ref 19
other than that same syntax, verified that the messages are sent on the bus
Log: https://pastebin.com/raw/UuarwQ6G
Comment
-
I saw a STAT message for Node_16 and this is not what was shown as the control Topic for this Zwave endpoint. I also saw messages that looked to be controlling Node_4. It looks like Node_4 was not setup in mcsMQTT to associate with a device. The intent is to externally send a control Topic for Node_16 so debug data can be seen for it.
7/16/2018 4:03:20 PM 1847 | ActoOnMessageFor Trigger Topic STAT/DESKTOP-38S1K8F/mcsMQTT/Node_16/Z-Wave/Switch_Multilevel_1,Payload=0
7/16/2018 4:09:28 PM 369688 | ActoOnMessageFor Trigger Topic DESKTOP-38S1K8F/mcsMQTT/Node_4/Z-Wave/Switch_Multilevel_1_set,Payload=10
7/16/2018 4:09:48 PM 389603 | ActoOnMessageFor Trigger Topic DESKTOP-38S1K8F/mcsMQTT/Node_4/Z-Wave/Switch_Multilevel_1_set,Payload=0
7/16/2018 4:10:09 PM 409908 | ActoOnMessageFor Trigger Topic /stat/DESKTOP-38S1K8F/mcsMQTT/Node_4/Z-Wave/Switch_Multilevel_1_set,Payload=0
7/16/2018 4:10:31 PM 432154 | ActoOnMessageFor Trigger Topic STAT/DESKTOP-38S1K8F/mcsMQTT/Node_4/Z-Wave/Switch_Multilevel_1_set,Payload=10
7/16/2018 4:10:34 PM 435838 | ActoOnMessageFor Trigger Topic STAT/DESKTOP-38S1K8F/mcsMQTT/Node_4/Z-Wave/Switch_Multilevel_1_set,Payload=99
Comment
-
The Client ID is set to a globally unique ID and when mcsMQTT connects it sets the session to be a clean one with no attempt to retain any information from a prior connection. To accommodate your desire for a more easily identified client I change the Client ID to be mcsMQTT on XXX where XXX is the computer name where mcsMQTT is running. It is 3.4.11.0 that has been submitted to updater and available at http://mcsSprinklers.com/mcsMQTT_3_4_11_0.zip.
- Likes 1
Comment
-
Guest
-
Guest
-
The same file I upload to HST for the updater is placed on mcsSprinklers.com if users want to get access before HST processes the Updater input. To use this file, one could go through the override.txt method, but that was not my intent. mcsMQTT.exe is normally the only file that changes so one would manually disable mcsMQTT from plugins page, extact mcsMQTT.exe from the zip and put it in the HS folder and then enable mcsMQTT from the plugins page.
- Likes 1
Comment
-
Originally posted by Michael McSharry View PostThe Client ID is set to a globally unique ID and when mcsMQTT connects it sets the session to be a clean one with no attempt to retain any information from a prior connection. To accommodate your desire for a more easily identified client I change the Client ID to be mcsMQTT on XXX where XXX is the computer name where mcsMQTT is running. It is 3.4.11.0 that has been submitted to updater and available at http://mcsSprinklers.com/mcsMQTT_3_4_11_0.zip.
Jean-Francois.
Comment
-
Hi,
Fantastic piece of software - I am using it to control my heating system (ELV MAX! system) - works great!
Any way of setting up an event to send a mail if NO message is received after a certain period - I have done it for a particular message but unfortunately the server does not send a particular message at regular intervals - (or is it possible to use wild cards to cover multiple messages)?
Thanks,
W.
Comment
Comment