Announcement

Collapse
No announcement yet.

Fire lit trigger

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

    #16
    I changed my Fire Trigger event so that it is turning on V18. I also added a Device Action to turn on #37 when Fire Trigger is ran. When I restart HS with the startup script to run Fire Trigger event HS crashes. It says Homeseer is started and then closes. The log shows subscript out of range for mcsTemp. If I remove the Fire Trigger event from startup HS starts up and mcsTemp is able to collect data from the Temp08 but my temp triggering doesn't work. If I manually execute Fire Trigger it crashes HS. There was nothing in HS log to indicate why it crashed.

    Comment


      #17
      Crashing is not good and not something that I have experienced in this context.. To help understand let us focus on two things. One is the General Debug. The second is device #37. After HS starts what is the status string showing for this device? If it is Inactive then use the HS GUI to turn it ON. If it is Active then the control should be functional. Turn if OFF just to see if this causes a crash.

      Comment


        #18
        When HS starts the device #37 has a status of "Control Inactive". I turned on general debug for mcsTemp. I then turned on #37 using the HS GUI. It crashed straight away.
        Code:
        10/24/2005 6:42:10 AM~!~mcsTemperature Debug~!~Setup Page Unload
        10/24/2005 6:42:17 AM~!~mcsTemperature Debug~!~SendQueue=
        10/24/2005 6:42:37 AM~!~mcsTemperature Debug~!~setIO #37 from 0 to 2
        10/24/2005 6:42:37 AM~!~mcsTemperature Debug~!~setDevice #37 from 3 to 2
        10/24/2005 6:42:37 AM~!~mcsTemperature Debug~!~setIO #37 from 0 to 2
        10/24/2005 6:42:37 AM~!~mcsTemperature Debug~!~setDevice #37 from 3 to 2
        There were a lot of setIO #37 from 0 to 2 and then setDevice #37 from 3 to 2 in the log.

        When I restarted HS device #37 was Control Inactive again.

        Comment


          #19
          Not much information there and there is debug output in the DeviceAction logic. The most expedient was to understand what is happening is if you can bundle up the xml file that contains the Homeseer configuation and the mcsTemperature.ini file and email it to me at mcsSolutions at CenturyTel.net

          Comment


            #20
            I see two things with the confguration. The most significant is that there is a DeviceAction on the event that sets #37. This has the effect of putting mcsTemperature and HS into an infinite handshake until memory is used up. The second is that the event does not have a Continue entry. This should be set to continue until manually turned off.

            Comment


              #21
              Ok I got rid of the #37 On from the Fire Trigger event and added until device turned off manually to the Temperature Actions of the Fire Trigger event. Device #37 then had a status of Control Active... after I ran the Fire Trigger event. I gave it a test by heating up the sensor and the sensor was at 135 and V18 was never turned on. Here's a screen snap. For Device Status of #37 it shows "Control Active Limits: 80 - 100 Now 0 (V18:Off)... Should it display the current temp reading of my sensor instead of 0 after Now?

              Comment


                #22
                The controller is seeing a value of 0 rather than 135 as shown in the status device. Its too late now to research. I'll look tomorrow with your xml file.

                Comment


                  #23
                  I replicated the scenario and stored 135 to the DeviceString of `3. Device #37 updated to show the 135 and V18 turned ON. The update cycle for the controller is once per minute so it can take up to 60 seconds for the `3 temperature in the DeviceString to be recognized. The value "0", however, looks to be wrong, but I dont know why it could be.
                  Attached Files

                  Comment


                    #24
                    What trouble-shooting can I do to figure out why the device #37 isn't getting updated? The time in the for ... is getting updated but the temp isn't.

                    Jabran

                    Comment


                      #25
                      First step is to use a different DC than `3 and manually store a value in the DeviceString such as the following as the script action to a new manual event.

                      &hs.setdevicestring "A1","135"

                      Turn the #37 device ON and wait 60 seconds to see if the 135 appears

                      Step 2 if the 135 does not show up is to delete the event and the #37. Restart Homeseer and recreate the event.

                      Step 2 if 135 does appear is to show the string contained in `3.

                      &hs.writelog "mcsTemperature", ">" & hs.devicestring("`3") & "<"

                      Comment


                        #26
                        I created a new device, V19, and stored 135 in V19 using a script. I set the Fire Trigger event to use V19 as the trigger. When I turned on #37 it fired off and everything worked. #37 then showed the current value of V19 and it also showed V18 as ON.

                        I then wrote the devicestring of `3 to the log as you instructed and all I got in the log was ><. I then wrote the devicestring of V19 just to make sure I was doing it right and got >135<. So it seems I'm not getting the actual temp stored in the devicestring of `3. The value that I see of `3 under status in HS GUI is showing me the proper temp and the graphs work. That's about all I do with it.

                        I checked my two other temp sensors and they also have nothing stored in the devicestring.

                        Jabran
                        Last edited by jabrans; October 27, 2005, 12:20 AM.

                        Comment


                          #27
                          Now I've made things worse. I accidently set my Fire Trigger event to control device `3 so when I ran it I set the status of `3 (Fireplace Temp sensor device) to ON. I thought the next time mcsTemp got the temps it would update it with the temp but it doesn't. It updates the time last updated but the status remains ON. I deleted my Fire Trigger and my Fire Trigger Device #37 but that didn't help. I deleted the Fireplace Temp device, `3, and let mcsTemp recreate it and that didn't help. Deleted it again, rebooted then let mcsTemp recreate and still it keeps showing as ON in status instead of the temp.

                          Comment


                            #28
                            When I looked at your ini file I see that the error count on `3 on the Analog tab is very high. It may be the case that you are not getting good readings and the values are not updated. The ON/OFF state is not managed by mcsTemperatue. Only DeviceString and DeviceValue. Look at the IO window and confrim you have good reading for this sensor being delivered. It is also the case that updates are only made when a change occurs so a null string would look like a value of 0 and that is the same value if a bad reading is delivered.

                            Comment


                              #29
                              Using a script to write to the log I found that the DeviceValue for `3 is 73. and the DeviceString for `3 is ON. The HS GUI shows a status of ON. The IO window is getting good data from the sensor assigned to `3. The DeviceString for my other temp sensors is null. Seems like my problem is the plug-in isn't writing to the DeviceStrings of my devices? My DeviceValues all show the proper temp. All my sensor except `3 show the proper temp under status in the HS GUI.

                              Comment


                                #30
                                The code segment where temperature reading are stored is shown below. Both the string and value and always stored together. Do you have some other plugin, such as mcsMovement that will manage the content of device strings that may be overwriting what mcsTemperature puts there?

                                Code:
                                390               If UseHTML Then
                                400                   sString = FormatHTML(jTemperature, CStr(Round(Temperature, SignificantDigits)))
                                410               Else
                                420                   sString = CStr(Round(Temperature, SignificantDigits))
                                430               End If
                                440               If hs.DeviceString(device) <> sString Then
                                450                   hs.SetDeviceValue device, CLng(Temperature)
                                460                   hs.SetDeviceLastChange device, Now()
                                470                   hs.setdevicestring device, sString
                                480               End If

                                Comment

                                Working...
                                X