Announcement

Collapse
No announcement yet.

events not firing when xAP device changes value (Netiom board)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    I cannot look right now to see what mcsXap did to map ON/OFF to HS3's values. You should be able to look at the DeviceManagement page under value/status/pairs. The likely values are 100/0 or the decimal equivalent of 32 bit hex 8000000/7FFFFFFF. I will look later if you do not have success.

    Comment


      #17
      The on/off status pair values are 100 and 0 on the Status Graphics screen.

      My point though from my last post, is that with the event trigger as "changes and becomes any value", it still doesn't fire when switching the device on and off via the device management screen gui.

      The actual on/off values are irrelevant, the event should fire on any change.

      Comment


        #18
        Originally posted by apluck View Post
        The on/off status pair values are 100 and 0 on the Status Graphics screen.

        My point though from my last post, is that with the event trigger as "changes and becomes any value", it still doesn't fire when switching the device on and off via the device management screen gui.

        The actual on/off values are irrelevant, the event should fire on any change.
        Just one question? Are you running the latest patches on your Windows box? I had all kinds of weirdness in HS3 then I realized I was not patched. I have the same setup and events triggers. I am monitoring water level's and auto top-up on my marine tank with NETIOM and its flawless. Otherwise would have a small ocean in the basement.

        Hope this helps
        Mark

        Comment


          #19
          Mark, thanks for the prompt - yes all patched - The machine runs win 8.1 and applies patches weekly automatically.

          I have 3 Netioms, with most of the inputs and outputs in use. I'm dead in the water with HS3 unless I can get them to work properly. They work with HS2 perfectly.

          I'm using HS3 v3.0.0.96 and mcsXAP 3.0.0.40. What are your versions?
          Cheers

          Comment


            #20
            I was never able to get the "changes and becomes any value" to work with my xAP devices. I think it my be related to how the value is coming from the plugin. For my devices, it is a text string. Maybe it has to be a dimmable device before this trigger will work?

            Steve Q


            Sent from my iPad using Tapatalk HD
            HomeSeer Version: HS3 Pro Edition 3.0.0.368, Operating System: Microsoft Windows 10 - Home, Number of Devices: 373, Number of Events: 666, Enabled Plug-Ins
            2.0.83.0: BLRF, 2.0.10.0: BLUSBUIRT, 3.0.0.75: HSTouch Server, 3.0.0.58: mcsXap, 3.0.0.11: NetCAM, 3.0.0.36: X10, 3.0.1.25: Z-Wave,Alexa,HomeKit

            Comment


              #21
              I identified the issue. When HS called mcsXap with the button push, mcsXap changed the value of the device at this time. Since it started with call from HS3, HS3 did not treat this as an event trigger. When netiom then return the xapbsc.event message to acknowledge the new state, the value had previously been set in the HS3 device so no change was detected and no event generated.

              V .42 has this corrected so no devicevalue is set when HS3 calls mcsXap. Only an xAP message is produced.

              Comment


                #22
                Good news-I've done a quick test and the problem seems to be solved! Will test more over the weekend.

                Thanks Michael.

                Comment


                  #23
                  Originally posted by apluck View Post
                  Mark, thanks for the prompt - yes all patched - The machine runs win 8.1 and applies patches weekly automatically.

                  I have 3 Netioms, with most of the inputs and outputs in use. I'm dead in the water with HS3 unless I can get them to work properly. They work with HS2 perfectly.

                  I'm using HS3 v3.0.0.96 and mcsXAP 3.0.0.40. What are your versions?
                  Cheers
                  I am running the same versions as you. Not sure why your inputs are not working. My solenoid valves fire number of times daily once the water levels are down. Are you able to do any control from HS3 on the NETIOM's?
                  Did you try looking at the xapviewer to see if the messages are created on the state change when doing it on the NETIOM it self? How about your firewall is it off?

                  Comment


                    #24
                    Michael, all seems to be working fine.

                    I am getting this error in the log every few mins though.

                    Jun-14 08:46:43 mcsXap HSEvent Line 0 Index and length must refer to a location within the string.Parameter name: length


                    Here is the corresponding event trace.

                    Code:
                    14/06/2014 08:46:43	152711441	| mcsXap Debug STRING_CHANGE EVentCB 64,,1236,1584,1308,1728,1464,1416,948,1836,360,1464,1140,1248  
                    14/06/2014 08:46:43	152711442	| mcsXap Debug HSEVENT String , Current= 1236,1584,1308,1728,1464,1416,948,1836,360,1464,1140,1248,  New= 1236,1584,1308,1728,1464,1416,948,1836,360,1464,1140,1248  
                    14/06/2014 08:46:43	152711445	| mcsXap Debug VALUE_CHANGE EVentCB 1024,,60003032  
                    14/06/2014 08:46:43	152711450	| mcsXap Debug STRING_CHANGE EVentCB 64,,60003032  
                    14/06/2014 08:46:43	152711450	| mcsXap Debug HSEVENT String , Current= 60003032,  New= 60003032  
                    14/06/2014 08:46:43	152711453	| mcsXap Debug VALUE_CHANGE EVentCB 1024,,1311  
                    14/06/2014 08:46:43	152711459	| mcsXap Debug STRING_CHANGE EVentCB 64,,1311  
                    14/06/2014 08:46:43	152711459	| mcsXap Debug HSEVENT String , Current= 1311,  New= 1311  
                    14/06/2014 08:46:43	152711462	| mcsXap Debug VALUE_CHANGE EVentCB 1024,,912  
                    14/06/2014 08:46:43	152711467	| mcsXap Debug STRING_CHANGE EVentCB 64,,912  
                    14/06/2014 08:46:43	152711468	| mcsXap Debug HSEVENT String , Current= 912,  New= 912


                    edit: oh just realised it might be because I'm storing comma separated values in a device string, and that's confusing the plugin. I'll try changing to another separator.
                    Thanks

                    Comment


                      #25
                      I don't see where this is coming from, but I put in additional checks on strings and added line numbers should it occur again to better zero-in on the culprit. Try the attached.
                      Last edited by Michael McSharry; June 15, 2014, 10:42 AM.

                      Comment


                        #26
                        Tried the new version. Log now says

                        HSEvent Line 50 Index and length must refer to a location within the string.Parameter name: length

                        I haven't yet changed my script away from comma separated.

                        Comment


                          #27
                          Looks like it is debug output to the console that is the culprit. Confirm with the attached.
                          Last edited by Michael McSharry; June 15, 2014, 01:11 PM.

                          Comment


                            #28
                            Same message in the log.
                            HSEvent Line 50 Index and length must refer to a location within the string.Parameter name: length

                            Just checking - your latest post had v44. Your earlier post had v47. Is that correct?

                            Comment


                              #29
                              47 was incorrect naming. It still does not make that much sense to me where the problem exists. No string operations around line 50. Perhaps it is happening on the else. I added line 62 check with V45.

                              Code:
                              40:                 If Not (parms(1) Is Nothing) Then
                              50:                     If ValueChangeDictionary.ContainsKey(iRef) Then
                              51:                         ValueChangeDictionary.Remove(iRef)
                              60:                     Else
                              61:                         Dim sDC As String = CType(parms(1), String)
                              62:                         If sDC.Length > 0 Then
                              63:                             Dim sHC As String = sDC.Substring(0, 1).ToUpper
                              70:                             If sHC >= "A" And sHC <= "P" Then
                              Attached Files

                              Comment


                                #30
                                Hi Michael, I don't get the log message any more now. Thanks!

                                Comment

                                Working...
                                X