No announcement yet.

Relay05 Evaluation

  • Filter
  • Time
  • Show
Clear All
new posts

    Relay05 Evaluation

    I have implemented support for the Relay05 and is incorporated in the most current version in the problems/features thread. The following is implemented:

    1) Interface Tab checkbox for Relay05. When checked the plugin will confirm 8 relay devices have been created in the plugin's house code devices 51..58. It will create them if not yet created as an output IO type.

    2) On homeseer restart and on each "Update" the plugin will send a "RLY S" command to the Temp05. It is expecting the Temp05 to return something like Relay=on,off,on,off,off,on,on,on.
    The plugin will update the virtual device for the relay based upon this status if it is different than what is currently stored in the virtual device. When it updates the status change trigger will be activated if there is a difference. The device value is not used since when the plugin set's the device value homeseer will call the plugin to set the relay to this value and that is not needed.

    3) The standard homeseer GUI/Web Interface should be able to be used to set each relay on/off.
    4) A plugin script interface SetRelays is implemented with one string input parameter. If the input string is "on" or "1" then it will send a "RLYA on" command. Any other parameter value will send a "RLYA off" command. This should turn all 8 relays on or off respectively.

    5) No support for the Relay timer was implemented. I need a strategy as to how it will be used and what you need the plugin to do. I also need to know the commands to/from the Temp05 to manage the relay timer.

    6) If the commands to and data stream from the Temp05 is not as I described above then please let me know the syntax.

    7) What else should the plugin do with respect to these relays?

    [This message was edited by Michael McSharry on Thursday, 13 February 2003 at 01:21 AM.]

    McS - Doesn't seem to work as anticpated.

    1) not creating Virtual Devices
    2) seems to be generating odd status codes in the monitor like "1002"
    3) no controls appearing in the tab (not sure is this is a beta restriction)

    sounds like I'm doing something really wrong.

    re: 5 above. You can't do too much with the relay off timer. It's a global command for all the relays, which I think will be a bit restricting as many folks will probably want to control different types of devices with different nominal off times.

    According to Rich, you can set this to "0" even though the prompt doesn't lead you to that conclusion ;-) This means that your plug in would then be fully in control of off times. This seems like the most sensible way to go to me otherwise you have some asynchronous event which you have no sight of until you do a relay status probe.


      Duncan, I need some more info to understand why it does not work.

      The Discrete Out tab has no info for the Relays. I do not think it will be needed.

      If the Interfaces Tab, Relay05 checkbox is checked, you are using the Internal plugin device code, and the Update button is clicked then the virtual devices (8 of them) should be created.

      Does any Relay05 data appear in either direction in the Echo Window?

      The status code 1002 is not on my list of known codes. 1006 is common for port overrun during startup.

      Now I do recall the SET command has a relay prompt. It was defaulted to the T05 update time which I will need to change to 0. What is done on V4.25 to set this time for the relays?


        For V4.25, use the RLT command to set the relay timer. Both version 5.xx and 4.25 use the timer setting of 0 to disable the timer.



          Sorry Michael, still no joy on creating the devices. I don't want to manually create them as that would spoil to objective.

          When I tick RELAY05 connected, this is what I see :

          plug in sending "RLY S" to TEMP05.

          I once briefly saw "1004" in the status window before it closed at this point, but can't repeat that now.


          BTW - 100% Humidity working fine now.


            Are you using the plugin's house code?
            You can keep the Echo window open by using the X in the setup page upper right corner to close that window rather than using the Update or Cancel buttons. That way you can see the Temp05 traffic in normal (non-setup) operation.

            The code segment is executed when the Update button is clicked. gBaseCode is the plugin's house code. We know the UseRelay05 is set true since you have the brief message in the echo window. The other two things are the plugin's house code or the devices have already been created in homeseer (and maybe hidden from view). The mcsTemperature plugin will not provide any indication if these devices exist or not. The only visibility is via the homeseer GUI/Web Server.

            <pre class="ip-ubbcode-code-pre">
            If UseRelay05 And gBaseCode &lt;&gt; "" Then
            For i = kRelay To kRelay + kRelayCount - 1
            If hs.DeviceExists(gBaseCode & CStr(i)) = -1 Then
            Set Device = hs.GetDevice(hs.NewDevice("Relay" & CStr(i - kRelay + 1)))
            Device.Location = TemperatureDeviceLocation
            Device.dev_type_string = WeatherDeviceLabel(jRelay)
            Device.hc = gBaseCode
            Device.dc = CStr(i)
            Device.misc = 0 'controlable
            Device.iotype = OutputType
            End If
            End If


              When I was looking at your web site for Relay info I saw that you were receptive with my inputs on the Temp05 and now have a new version available. After I get a real V5 will I be able to upgrade firmware or does each upgrade require a new chip?


                Each upgrade requires a new processor unfortunately. I'll contact you off-line and we'll work something out.




                  But attempting to control them gives this in the monitor window:
                  <BLOCKQUOTE class="ip-ubbcode-quote"><font size="-1">quote:</font><HR> [Sent to Temp05: RLY1 3 ]

                  [Sent to Temp05: RLY2 2 ]

                  22:23:04 |
                  22:23:04 | ? Entry error
                  22:23:04 |
                  22:23:04 | &gt;
                  22:23:04 |
                  22:23:04 | ? Entry error
                  22:23:04 |
                  22:23:04 | &gt;
                  [Sent to Temp05: RLY2 3 ]
                  No action from the Relay05, and the devices don't change state. They seem to have some wierd random settings: Relay1 is ON, Relay2 is OFF, Relay3 - Relay7 are ON and Relay8 is OFF. This doesn't reflect their real state (all are off, and so reported by the Temp05). All this is with 3.12.0.



                    Thanks Bill,
                    I think I should be sending on and off rather than 2 and 3. Give 3.12.1 a try.


                      <BLOCKQUOTE class="ip-ubbcode-quote"><font size="-1">quote:</font><HR>
                      [Sent to Temp05: RLY8 on ]

                      [Sent to Temp05: RLY8 off ]

                      06:26:17 |
                      06:26:17 | ? Entry error
                      06:26:17 |
                      06:26:17 | &gt;
                      06:26:17 |
                      06:26:17 | ? Entry error
                      06:26:17 |
                      06:26:17 | &gt;
                      [Sent to Temp05: RLY ]

                      [Sent to Temp05: 8 ON ]

                      06:27:02 | Relay status = Off,Off,Off,Off,Off,Off,Off,On
                      06:27:02 | &gt;
                      06:27:06 | Reading Sensors...
                      06:27:10 | Temp #01[8B00080045E2C810]=69.90F
                      06:27:12 | Temp #02[B100080023BFF910]=68.32F
                      06:27:14 | Temp #03[4000080023B87410]=51.11F
                      06:27:16 | Temp #04[A500080023C37F10]=66.20F
                      06:27:18 | Temp #05[65000800473FD810]=53.25F
                      06:27:19 | &gt;
                      [Sent to Temp05: RLY ]

                      [Sent to Temp05: 8 OFF ]

                      06:27:37 | Relay status = Off,Off,Off,Off,Off,Off,Off,Off
                      06:27:37 | &gt;
                      [Sent to Temp05: RLY ]

                      [Sent to Temp05: 8 on ]

                      06:27:57 | Relay status = Off,Off,Off,Off,Off,Off,Off,On
                      06:27:57 | &gt;
                      [Sent to Temp05: RLY ]

                      [Sent to Temp05: 8 off ]

                      06:28:21 | Relay status = Off,Off,Off,Off,Off,Off,Off,Off
                      06:28:22 | &gt; <HR></BLOCKQUOTE>
                      The first 12 lines are the result of using device control to make the plugin send control commands to the Temp05. The rest (except for the temperature readings ) are manual commands I entered. You can see that by sending RLY and then in a second entry sending the relay number and the string "ON" (or "on") or "OFF" ("off") the relay actually clicks on or off and the Temp05 echos back the state of all 8 relays. None of this changes the state shown by Homeseer on the devices tab, however...

                      Attached Files


                        <BLOCKQUOTE class="ip-ubbcode-quote"><font size="-1">quote:</font><HR> 2/13/2003 6:49:06 AM~!~mcsTemperature Plugin Debug~!~Setup Page Unload
                        2/13/2003 6:49:21 AM~!~mcsTemperature Plugin Debug~!~Database Timer=4
                        2/13/2003 6:49:23 AM~!~Device control from menu~!~]58 On
                        2/13/2003 6:49:23 AM~!~mcsTemperature Plugin~!~Temp05 Data:
                        2/13/2003 6:49:32 AM~!~Device control from menu~!~]58 Off
                        (this is after the preceding post - I just turned debug on, clicked Show Raw Data, clicked Update, then did a device control ON and then OFF for Relay8).



                          Could you send me your mcsTemperature.ini ?

                          No Relay device are in my mcsTemperature.ini or in the Setup menu. The button Relay05 Connected is True.

                          Tony Lofgren | Kungsor | Sweden
                          Please excuse any spelling and grammatical errors I may make.
                          Tasker Plugin / Speech Droid
                          Tonlof | Sweden


                            I can see why the status is not updated. I was looking for "Relay" and "Relay status" was provided by the Temp05.

                            What I do not understand is the difference between RLY &lt;send&gt; then 8 on &lt;send&gt; and RLY8 on&lt;crlf&gt; &lt;send&gt; since there is no prompt provided by the temp05 between the RLY and the 8. It may be that the fifo in the temp05 is too small to handle more than 3 characters at a time.

                            When you sent it manually what did you do with the crLF checkbox on the "RLY" and on the "8 on"?


                              Looks like the same problem that Duncan is having and I would like to understand the problem rather than manually forcing the data into the ini file.

                              Please check the following:
                              1) You have a mcsTemperature house code assigned
                              2) You have hit the Update button after checking the Relay05 checkbox.
                              3) Are you using V5 or V4.25 Temp05 firmware? It will not matter for this, but just want to know if anyone out there is trying it with V4.25.

                              If both of the first 2 are done and the problem persists then I add some debug code to understand why.