Announcement

Collapse
No announcement yet.

Charting error

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

    Charting error

    I've just installed my new Temp05 (v5) and v3.2.0 of the mcstemperature plugin. I've just one temp sensor attached at the moment so that's all i really want to get working. I'm having trouble interpreting the errors in the homeseer log though. They are:

    12/01/03 00:10:01~!~Info~!~ Web Server authorized login successful from: 127.0.0.1
    12/01/03 00:10:04~!~Temperature Plugin~!~ FormatTemperatureScreen: Syntax error (missing operator) in query expression 'ID='.
    12/01/03 00:10:05~!~mcsTemperature OnComm~!~Comm Event @ 01:00:05 Event Code= 1006

    can anyone point me in the right direction? TIA

    Malcolm
    Malcolm

    #2
    It looks like there may not be any data collected in your database based upon the first log entry. The second is a message from the mscomm control for code 1006. I'm not certain what it is, but something with the data interface between the PC and the Temp05.

    If you have access you can confirm if there is any data in the database. You can also email it to me with the mcsTemperature.ini to see I can can see anything about your setup or data.

    Comment


      #3
      i assume the data is stored in the homeseer.mdb database/ The two temperature tables in there are both empty.

      I've verified with hyperterm that i have connectivity with the temp05 and have seen temp readings coming through every five minutes - my interval.

      i've e-mailed you my ini file

      TIA

      Malcolm
      Malcolm

      Comment


        #4
        I looked up the 1006 comm port error and it is an overrun. If this only occurs once then no problem, if it repreats then the comm port settings dont match what the Temp05 is expecting. For reference I attached the error codes.
        <pre class="ip-ubbcode-code-pre">
        Constant Value Description
        comEventBreak 1001 A Break signal was received.
        comEventFrame 1004 Framing Error. The hardware detected a framing error.
        comEventOverrun 1006 Port Overrun. A character was not read from the hardware before the next character arrived and was lost.
        comEventRxOver 1008 Receive Buffer Overflow. There is no room in the receive buffer.
        comEventRxParity 1009 Parity Error. The hardware detected a parity error.
        comEventTxFull 1010 Transmit Buffer Full. The transmit buffer was full while trying to queue a character.
        comEventDCB 1011 Unexpected error retrieving Device Control Block (DCB) for the port.
        Communications events include the following settings:
        Constant Value Description
        comEvSend 1 There are fewer than Sthreshold number of characters in the transmit buffer.
        comEvReceive 2 Received Rthreshold number of characters. This event is generated continuously until you use the Input property to remove the data from the receive buffer.
        comEvCTS 3 Change in Clear To Send line.
        comEvDSR 4 Change in Data Set Ready line. This event is only fired when DSR changes from 1 to 0.
        comEvCD 5 Change in Carrier Detect line.
        comEvRing 6 Ring detected. Some UARTs (universal asynchronous receiver-transmitters) may not support this event.
        comEvEOF 7 End Of File (ASCII character 26) character received.
        </pre>

        I looked at the ini file that you sent and you are setup to receive 16 temp sensors and one wind instrument. This should only come into play, however, when you run the temperature.asp. It should not affect storing of data in the database. The ini file shows comm port 3 with V5 of the Temp05 which is reasonable.

        Two other items to observe.
        1. Is the virtual device R1 being updated with the temperature data from the Temp05. Look at the Date last change fields on the homeseer GUI if there is any question about it.
        2. If it is not being updated then use the "Show Raw Data" button on the setup page and look for data being shown in the homeseer log when the Temp05 delivers its reading.
        3. The configuration I normally run with V5 is to include the sensor id with the data. It is done as part of the SET command from hyperterm or you can try the "Set Sample Interval" button from the plugin. If you seem to be having basic interface problems then it is better to confirm this with hyperterm since the plugin currently does not provide the feedback on the prompts provided by the Temp05.

        Comment


          #5
          The virtual device r1 has been updated since i installed the temp05 yesterday.

          Perhaps my message, linked below, might be the reason why i can't communicate with the temp05?

          HomeSeer MessageBoard message

          I can communictae on COM3 with Hyperterm okay when HomeSeer isn't running.

          Malcolm
          Malcolm

          Comment


            #6
            okay i've stripped out all the other stuff i've been trying to install this weekend and just left the temp05. If deinstalled the mcstemperature plugin and set up the scripts from the Midon web site.

            First I went back and checked i can still access temp05 through hyperterm - everything's ok there. I get temp readings from the one sensor every 5 mins.

            In homeseer i can see Com3 being initialised okay in the log. but unfortunately r1 is showing status unknown - no temp readings.

            what next? should i move this over to the Midon forum...

            Malcolm
            Malcolm

            Comment


              #7
              If you getting data from hyperterm then the hardware interface is working good. I have not seen Mitch's V5 script, but I suspect that you need to edit it in a few places to make it recognize that you are using com3 rather than com1 and you need to add the com3 port open/close in the startup and shutdown scripts. For debugging you should have an hs.writelog in the script for each line read from the TEMP05 and then proceed down the script tracing the data flow.


              In my prior response I provided the information as how to do the debug with mcsTemperature. By using the "Show Raw Data" button. If want to go back to mcsTemperature then you will need to remove the additions made to startup.txt & shutdown.txt

              You can post a segment of the data received from the Temp05. Which you can obtain from the homeseer log after "Show Raw Data" has been clicked, from the script debug, or from the hyperterm log depending upon what you currently have setup. In the mcsTemperature case, if you see the data in the log, then you are very close to getting it to work. I would like to see the format of the data received, confirm that the serial number of the sensor is provided, and that the format is what I expected since I did do my debug with a prototype V5.

              Comment


                #8
                Thanks Michael - wanted to keep things simple and deal with things that I've had experience of first - i'm okay with scripts, i've no expereince of plugins (until this weekend!).

                Anyway - with "Show Raw Data" the temperature table in homeseer.mdb was completely empty. But then without exception so is every single table in the database - is this
                right?!

                I've confirmed that I am getting valid readings via Hyperterm (see message in Midon Design Temp05 forum here ).

                i'd like to plug away with the script and then come back to the plugin - unless you've any definite thoughts on where i'm going wrong given the above new information...

                Malcolm
                Malcolm

                Comment


                  #9
                  Okay i've stripped out the script stuff and i'm back with the plug-in having confirmed via Hyperterm that i'm receiving valid tempaerature readings from the one sensor in my Temp05.

                  I've set the plug-in up to show raw data and turned on debug mode...

                  My HomeSeer log is showing the following (i've stripped out non mcstemperature stuff).


                  14/01/03 21:45:32~!~mcsTemperature Plugin~!~Register callback with Homeseer completed
                  14/01/03 21:45:34~!~mcsTemperature Plugin Debug~!~Internal Timer Started
                  14/01/03 21:45:34~!~Info~!~mcsTemperature Comm Port 3 Opened
                  14/01/03 21:45:34~!~Temperature Plugin~!~ InitHW: Object variable or With block variable not set
                  14/01/03 21:45:34~!~startup~!~Done Initializing I/O
                  14/01/03 21:45:35~!~Info~!~Web Server started on port 80
                  14/01/03 21:45:35~!~Info~!~Local IP address is: 192.168.1.12
                  14/01/03 21:45:35~!~startup~!~Initializing email 0 1
                  14/01/03 21:45:37~!~Info~!~Mail login successful
                  14/01/03 21:45:37~!~startup~!~Done Initializing email
                  14/01/03 21:45:37~!~Info~!~Script engine version: 5.6.7426
                  14/01/03 21:46:34~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:46:40~!~Info~!~Synchronizing events from 14/01/03 20:46:40
                  14/01/03 21:46:43~!~Info~!~Synchronization complete, updating devices
                  14/01/03 21:46:43~!~Info~!~Device update complete
                  14/01/03 21:47:34~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:48:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:49:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:50:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:51:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:52:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:53:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:54:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:55:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:56:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True
                  14/01/03 21:57:35~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True

                  there is no information being logged in homeseer.mdb

                  my r1 device is not showing the temp but is showing a valid last update date and time.

                  hope the above is of use - i assume the InitHW message is relevant...

                  Malcolm
                  Malcolm

                  Comment


                    #10
                    InitHW does two things. One is to grab onto the comm port for the Temp05 and the other is to attach to the adapter for the DS9097. The object variable message is likely from the DS9097 and it should only be attempted if the DS9097 comm port number on the setup page is non-blank. The equivalent mcsTemperature.ini setting is DS9097CommPort=. Confirm that the DS9097 comm port is blank on the setup page.

                    Even with this message, the prior one indicated that the comm port was successfully claimed by mcsTemperature. If it did not claim the port then a failure message would have been generated. With V3.0.0 I had the parameters used for the Temp05 comm port on the setup page. It should have defaulted to "9600,n,8,1". With V3.2.0 I have them defined as an internal constant that cannot be changed by the user. If you are using a version prior to V3.2.0 then confirm that the setting is correct.

                    If you do make any changes on the setup page then use the "Update" button on the bottom to apply them. I have logic to properly manage the change of the comm port, but since you are in a debug mode then restart homeseer after making a comm port change.

                    Warren also had a object variable not defined problem due to the java vm not being present and had to be downloaded. This should only come into play if the DS9097 is being attached. If the comm port is left blank for the DS9097 then this should not come into play. The other thing that should have happened when the "Update" buton was selected and the DS Comm port was non-blank, is the download of the TMEX drivers if they were not present on your computer alread. It is similiar logic to the download of charting object the first time temperature.asp is used with a request for a line chart to be drawn. Were you prompted to complete the instalation of the TMEX drivers? If not did you have them previously installed when running some other 1-wire software?

                    Comment


                      #11
                      Thanks for your help Michael. I'm beginning to feel a little out of my depth here though! :-)

                      First a rather sheepish question - what's a DS9097? I can here the 'Doh' from here! :-)

                      I thought I was using DS18S20 sensors (there's one on the Temp05 and I've a further 6 waiting in the wings for installation). Is it not that that provides the temp reading when in Hyperterm?

                      I can therfore confirm that the DS9097 comm port number in the set-up page is blank - i didn't think it was relevant to me.

                      I can confirm that I'm on v3.2.0.

                      I recall when i originally installed your plug-in I was asked if i wanted to install the TMEX drivers and the charting software. I replied yes to both. I can see (and use) the charting software but i've no evidence of the TMEX drivers - how can i tell??

                      Sorry to be such a pest...

                      Malcolm
                      Malcolm

                      Comment


                        #12
                        The DS9097 is a serial port interface sold by the same folks who make the DS18S20 temp sensors as well as the entire family of 1-wire products (maxim-ic.com). My experience is that it does not have the drive to support as many devices as the temp05 but at the same time it can support 1-wire devices not supported by the Temp05.

                        I'm sorta glad that TMEX drivers were installed since that does confirm that the plugin believes that there is something in the text box that holds the DS9097 comm port number. Dont worry about that now since the V3.3.0 has a checkbox to explicitly indicate that you want to use the interface.

                        If you want to play with it to see if it may be interfering with the Temp05 use of the same comm port you can go into the \Config\mcsTemperature.ini file and either delete the line containing DS9097CommPort= or make certain there are no spaces afer the "=". After you do this start homeseer and hopefully confirm that the object missing error message goes away (and further hope that the debug data showing sensor data from the Temp05 will start to appear). Note that the plugin will recreate the entry when the setup page update button is used.

                        I will also add additional debug data on the comm port interface in V3.3.0 so we can get a clearer picture of what the plugin is doing and what data it is seeing on the port. We now know, based on the current info you have provided, that it is not seeing any data it recognizes as a sensor and it is not seeing overrun or other low level communications errors.

                        Comment


                          #13
                          Aaaagh!

                          ok - i removed the DS9097CommPort= entry in the ini file (copy attached). no further forward i'm afraid - still no temp showing in the homeseer device...

                          this is my log now though...

                          15/01/03 19:59:01~!~mcsTemperature Plugin~!~Register callback with Homeseer completed
                          15/01/03 19:59:03~!~mcsTemperature Plugin Debug~!~Internal Timer Started
                          15/01/03 19:59:03~!~Info~!~mcsTemperature Comm Port 3 Opened
                          15/01/03 20:00:03~!~mcsTemperature Plugin Debug~!~Sample Timer=5, Internal=True
                          15/01/03 20:01:03~!~mcsTemperature Plugin Debug~!~Sample Timer=4, Internal=True
                          15/01/03 20:02:03~!~mcsTemperature Plugin Debug~!~Sample Timer=3, Internal=True
                          15/01/03 20:03:03~!~mcsTemperature Plugin Debug~!~Sample Timer=2, Internal=True
                          15/01/03 20:04:03~!~mcsTemperature Plugin Debug~!~Sample Timer=1, Internal=True


                          Malcolm

                          [This message was edited by MalcolmS on Wednesday, 15 January 2003 at 04:52 PM.]
                          Attached Files
                          Malcolm

                          Comment


                            #14
                            i'm not sure if this is relevant but I'm getting
                            these messages in the HomeSeer log again;

                            15/01/03 21:05:22~!~mcsTemperature OnComm~!~Comm Event @ 01:21:22 Event Code= 1006

                            and without exeption 1 second after every single one of them (and there are a dozen or so already)
                            i get this message

                            15/01/03 21:05:23~!~X10 Received~!~M5 (Upstairs Bathroom Motion Sensor) M On

                            sometimes it's an on ON soemtimes and OFF but always from M5 - i'm wondering if there's a DooMotion or other conflict here...

                            Malcolm
                            Malcolm

                            Comment


                              #15
                              The 1006 error is due to the Temp05 sending data, but the mcsTemperature plugin does not have a chance to read it before another is delivered. Most PC interfaces use serial adapters that allow 4 or so characters into a FIFO to be received. At 9600 baud there should be plenty of time to read the data. I dont use the motion plugin, but I am aware that it polls for sensor activity. I think it is at 4 Hz. This error at strartup is normal since the Temp05 has been sending data and nobody listening. During normal operation this should not appear.

                              If you are using com3, then this is likely some add-on adapter that may have some configuration options. Make certain the FIFO is enabled.

                              Is there adequate CPU power and RAM. On a slower system, sparse RAM, and a slow disk it could be spending too much time swapping-out program segments.

                              I will also make the comm port setting available in the .ini file for manual editing, however I do not believe these are the problem.

                              The positive aspect of your findings is that the startup object problem has disappeared and the 1006 error indicates that the plugin is receiving data, albeit not usable data.

                              Comment

                              Working...
                              X