Re: [mh] MQTT Not Reliable
[email protected] Tue, 22 Aug 2023 13:30:51 -0700
| Newsgroups | gmane.comp.misc.misterhouse.user |
|---|---|
| Message-ID | <[email protected]> |
I'll be diving into MQTT in the next month or two. From this discussion I gather that there is an MH-native MQTT implementation, and apparently another approach that Giles is using. I've seen https://github.com/hollie/misterhouse/wiki/Items-mqtt (though not yet studied it in-depth), but it doesn't apparently talk about what Giles is doing. Can someone please give me a very superficial explanation of the differences, or else point me to an article somewhere. Thanks in advance for any enlightenment. -Brian M On 8/22/23 11:08, Giles Godart-Brown wrote: > I also have a lot of MQTT devices using the native MH code with no > major issues. > Giles > > On 22/08/2023 17:50, H Plato wrote: >> On an unrelated note, is the insteon MQTT code more reliable than the >> native MH support? Why did you switch? >> >> I don’t have 120 devices, but probably 50 or so devices and it’s >> pretty good for reliability with the odd device exception. I have a >> challenge with some keypadlincs getting them to sync. the MH code >> seems to give up after a period of time, so I end up uninstalling the >> KPLs from the walls and into a temporary plastic electrical box that >> I can plug into the same outlet as the PLM. >> >> Dave if you submit a PR I can merge it in. There’s been a bunch of >> changes over the past year or so, might be good to capture a release >> soon. Unfortunately my git skills have atrophied so every time I >> think about doing this I get frustrated with some git situation and >> figure I’ll do it later…. >> >>> On Aug 20, 2023, at 1:32 PM, Stephen Switzer <[email protected]> >>> wrote: >>> >>> I'm probably running an old version of MH, so if this has been fixed >>> in the past 1-2 years, then please tell me to update. :) >>> >>> I created an integration that has MH listening to the mosquito >>> broker for some light commands, and for the most part, it's working. >>> However, it seems that random lights do not work when I send a MQTT >>> command to the broker. I can see the command hit the broker, but it >>> won't trigger an event in MH for all lights. I see no difference >>> between the lights that work and those that do not. >>> >>> Mosquito Broker: >>> insteon/living_room_lamp on >>> insteon/living_room_lamp/state on >>> >>> insteon/living_room_fan_light on >>> caddx/motion/binary_sensor.living_motion/state on >>> insteon/living_room_lamp off >>> caddx/motion/binary_sensor.living_motion/state off >>> insteon/living_room_lamp/state off >>> >>> >>> MH: >>> 08/20/23 03:21:57 PM [MQTT_RECV] living_room_lamp: on >>> 08/20/23 03:21:59 PM [LIGHTS] $ll_liv_lamp1 is 100% >>> 08/20/23 03:21:59 PM [MQTT_SEND] ll_liv_lamp1: on >>> >>> 08/20/23 03:22:06 PM [MQTT] MQTT_living_motion: on >>> 08/20/23 03:22:07 PM [MOTION] Motion sensed in Living. >>> 08/20/23 03:22:10 PM [MQTT_RECV] living_room_lamp: off >>> 08/20/23 03:22:12 PM [MQTT] MQTT_living_motion: off >>> 08/20/23 03:22:12 PM [LIGHTS] $ll_liv_lamp1 is off >>> 08/20/23 03:22:12 PM [MQTT_SEND] ll_liv_lamp1: off >>> >>> You can see MH is listening to the broker, sending messages >>> successfully, etc. The living_room_fan_light event was not picked >>> up from the broker by MH. I don't see why. Here's the code snippets: >>> >>> >>> $MQTT_insteon = new mqtt('mqtt_1', '127.0.0.1', 1883, 'insteon/#', >>> "", "", 120); >>> >>> $MQTT_insteon_living_room_fan_light_set = new >>> mqtt_Item($MQTT_insteon, "insteon/living_room_fan_light"); >>> $MQTT_insteon_living_room_fan_light_state = new >>> mqtt_Item($MQTT_insteon, "insteon/living_room_fan_light/state", 1, 1); >>> if(my $state = state_changed $MQTT_insteon_living_room_fan_light_set) { >>> print_log("[MQTT_RECV] living_room_fan_light: $state"); >>> set $living_room_fan_light $state; >>> } >>> if($state = state_now $fl_liv_fanlight) { >>> $state = ON if $state == '100%'; >>> print_log("[MQTT_SEND] fl_liv_fanlight: $state"); >>> set $MQTT_insteon_living_room_fan_light_state $state; >>> } >>> >>> $MQTT_insteon_living_room_lamp_set = new mqtt_Item($MQTT_insteon, >>> "insteon/living_room_lamp"); >>> $MQTT_insteon_living_room_lamp_state = new mqtt_Item($MQTT_insteon, >>> "insteon/living_room_lamp/state", 1, 1); >>> if(my $state = state_changed $MQTT_insteon_living_room_lamp_set) { >>> print_log("[MQTT_RECV] living_room_lamp: $state"); >>> set $living_room_lamp $state; >>> } >>> if($state = state_now $ll_liv_lamp1) { >>> $state = ON if $state == '100%'; >>> print_log("[MQTT_SEND] ll_liv_lamp1: $state"); >>> set $MQTT_insteon_living_room_lamp_state $state; >>> } >>> >>> >>> Mind you, I have about 120 lights in my code, all listening to >>> $MQTT_insteon. Could there be a memory issue? I appreciate any input >>> with ideas on this. >>> >>> Thank you! >>> >>> -- >>> Best regards, >>> Steve Switzer >>> >>> --- >>> Get world-class business I.T. services and a phone system with awesome features that won't challenge your budget! >>> http://www.sbsROC.com <http://www.sbsroc.com/> >>> ________________________________________________________ >>> To unsubscribe from this list, go to: >>> https://lists.sourceforge.net/lists/listinfo/misterhouse-users >>> >> >> >> >> ________________________________________________________ >> To unsubscribe from this list, go to:https://lists.sourceforge.net/lists/listinfo/misterhouse-users >> > > > > ________________________________________________________ > To unsubscribe from this list, go to:https://lists.sourceforge.net/lists/listinfo/misterhouse-users > ________________________________________________________ To unsubscribe from this list, go to: https://lists.sourceforge.net/lists/listinfo/misterhouse-users