I don't think it is as simple as removing the GETTIME command.

Weewx detects the lack of an onboard clock by making a call to the
*driver* function
getTime(). If has not been implemented, then it falls back to the system
clock.

Unfortunately, even if you remove the GETTIME command, the function
getTime() will still be implemented in the driver. It's just that it's
getting the wrong answer.

Let's try an experiment. Go into the driver file vantage.py and change
these lines

    def getTime(self):
        """Get the current time from the console, returning it as
timestamp"""

        time_dt = self.getConsoleTime()
        return time.mktime(time_dt.timetuple())

to this

    def getTime(self):
        """Get the current time from the console, returning it as
timestamp"""

        return int(time.time() + 0.5)

See if that solves your problem. If it does, then we can find a more
permanent solution.

-tk


On Fri, Nov 25, 2016 at 8:29 AM, gustl319 <[email protected]> wrote:

> I think I can remove the GETTIME command. archive_delay is still at 15
> seconds. I come back later.
>
>
>
> Am Freitag, 25. November 2016 17:08:48 UTC+1 schrieb Tom Keffer:
>>
>> The timestamp for the loop packets come from weewx. So, if the clock on
>> the RPi is correct, then the loop packet timestamps should be correct. If
>> you run weewx directly from the command line
>> <http://weewx.com/docs/usersguide.htm#Running_directly>, you can monitor
>> these timestamps and see if they are correct.
>>
>> However, the main loop in the weewx engine uses the time on the console
>> to decide when to stop asking for LOOP packets and, instead, calculate and
>> save an archive record. If the console does not supply a time, then weewx
>> uses the system clock on the RPi.
>>
>> It's possible that the DeKay library is providing a time, but because of
>> the lack of a RTC on the feather, it's supplying an incorrect time. If it
>> cannot supply a correct time, then it shouldn't provide one at all. That
>> is, it should not implement the Vantage GETTIME command.
>>
>> I don't know how the DeKay library is structured, but this may not be
>> possible. In that case, we'd have to figure out some other way of deciding
>> when the clock on a Vantage is unavailable.
>>
>> I think this would explain the many requests for "200 LOOP packets," but
>> it's hard for me to follow the log because of your annotations. They
>> chopped it up into disconnected pieces, with some missing between. Can you
>> just post a continuous log, without annotations?
>>
>> Finally, the archiving service should not attempt to save an archive
>> record until after a specified "archive_delay," (generally 15 seconds), yet
>> your log shows it attempting a save with only a one second delay. Did you
>> modify the default archive_delay?
>>
>> -tk
>>
>> On Fri, Nov 25, 2016 at 7:44 AM, gustl319 <[email protected]> wrote:
>>
>>> Thanks for the fast response.
>>>
>>> Am Freitag, 25. November 2016 02:47:18 UTC+1 schrieb Tom Keffer:
>>>>
>>>> Please read the User's Guide, section 3rd party Vantage connectors
>>>> <http://weewx.com/docs/usersguide.htm#3rd_party_Vantage_connectors> and
>>>> see if that answers your question.
>>>>
>>>
>>> Unfortunately your link didn't answer my question, but changed the
>>> problem :-(
>>> In the 1st part of log everthing seem fine.
>>>
>>> Nov 25 15:54:10 raspberrypi weewx[8932]: engine: Initializing weewx
>>>> version 3.6.1
>>>> Nov 25 15:54:10 raspberrypi weewx[8932]: engine: Using Python 2.7.3
>>>> (default, Mar 18 2014, 05:13:23) #012[GCC 4.6.3]
>>>> Nov 25 15:54:10 raspberrypi weewx[8932]: engine: Platform
>>>> Linux-3.18.7+-armv6l-with-debian-7.8
>>>> Nov 25 15:54:10 raspberrypi weewx[8932]: engine: pid file is
>>>> /var/run/weewx.pid
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: engine: Using configuration
>>>> file /etc/weewx/weewx.conf
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: engine: Initializing engine
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: engine: Loading station type
>>>> Vantage (weewx.drivers.vantage)
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: vantage: driver version is
>>>> 3.0.9
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: vantage: Opened up serial port
>>>> /dev/ttyACM0; baud 19200; timeout 4.00
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: vantage: gentle wake up of
>>>> console successful
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: vantage: _setup; hardware type
>>>> is 17
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.engine.StdConvert
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: engine: StdConvert target unit
>>>> is 0x1
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.engine.StdConvert
>>>> Nov 25 15:54:10 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.engine.StdCalibrate
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.engine.StdCalibrate
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.engine.StdQC
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.engine.StdQC
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.wxservices.StdWXCalculate
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: wxcalculate: The following
>>>> values will be calculated: barometer=prefer_hardware, windchill=prefer_hard
>>>> ware, dewpoint=prefer_hardware, appTemp=prefer_hardware,
>>>> rainRate=prefer_hardware, windrun=prefer_hardware,
>>>> heatindex=prefer_hardware, maxSolar
>>>> Rad=prefer_hardware, humidex=prefer_hardware, pressure=prefer_hardware,
>>>> inDewpoint=prefer_hardware, ET=prefer_hardware, altimeter=prefer_hardwa
>>>> re, cloudbase=prefer_hardware
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: wxcalculate: The following
>>>> algorithms will be used for calculations: altimeter=aaNOAA, maxSolarRad=RS
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.wxservices.StdWXCalculate
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.engine.StdArchive
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Archive will use data
>>>> binding wx_binding
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Record generation will
>>>> be attempted in 'software'
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Using archive interval
>>>> of 300 seconds (specified by hardware)
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Use LOOP data in
>>>> hi/low calculations: 1
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Using binding
>>>> 'wx_binding' to database 'weewx.sdb'
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: manager: Starting backfill of
>>>> daily summaries
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: manager: Daily summaries up to
>>>> date
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.engine.StdArchive
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.restx.StdStationRegistry
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: restx: StationRegistry:
>>>> Registration not requested.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.restx.StdStationRegistry
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.restx.StdWunderground
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: restx: Wunderground: Posting
>>>> not enabled.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.restx.StdWunderground
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.restx.StdPWSweather
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: restx: PWSweather: Posting not
>>>> enabled.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.restx.StdPWSweather
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.restx.StdCWOP
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: restx: CWOP: Posting not
>>>> enabled.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.restx.StdCWOP
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.restx.StdWOW
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: restx: WOW: Posting not
>>>> enabled.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.restx.StdWOW
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.restx.StdAWEKAS
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: restx: AWEKAS: Posting not
>>>> enabled.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.restx.StdAWEKAS
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.engine.StdPrint
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.engine.StdPrint
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Loading service
>>>> weewx.engine.StdReport
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Finished loading
>>>> service weewx.engine.StdReport
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Starting up weewx
>>>> version 3.6.1
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: vantage: Getting archive
>>>> packets since 2016-11-25 15:35:00 CET (1480084500)
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: vantage: gentle wake up of
>>>> console successful
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: vantage: Retrieving 1 page(s);
>>>> starting index= 0
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: vantage: DMPAFT complete: page
>>>> timestamp 2014-02-26 19:25:00 CET (1393439100) less than final timestamp
>>>> 2016-11-25 15:35:00 CET (1480084500)
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: vantage: Catch up complete.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: engine: Starting main packet
>>>> loop.
>>>>
>>>
>>> No I get lots of this:
>>>
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: vantage: gentle wake up of
>>>> console successful
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: vantage: Requesting 200 LOOP
>>>> packets.
>>>>
>>> About 10 times every second. So this would be 2000 packets per second.
>>> Its obvios that this should collect data from the vue. But it seems a bit
>>> much for me. Is this behavior correct?
>>>
>>> During the loop messages some other:
>>>
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: reportengine: Running reports
>>>> for latest time in the database.
>>>> Nov 25 15:54:11 raspberrypi weewx[8936]: reportengine: Running report
>>>> StandardReport
>>>> Nov 25 15:54:12 raspberrypi weewx[8936]: reportengine: Found
>>>> configuration file /etc/weewx/skins/Standard/skin.conf for report
>>>> StandardReport
>>>> Nov 25 15:54:13 raspberrypi weewx[8936]: cheetahgenerator: using search
>>>> list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station
>>>> ', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo',
>>>> 'weewx.cheetahgenerator.Extras']
>>>>
>>>
>>> Now it gets interesting:
>>>
>>>> Nov 25 15:55:01 raspberrypi weewx[8936]: manager: added record
>>>> 2016-11-25 15:55:00 CET (1480085700) to database 'weewx.sdb'
>>>> Nov 25 15:55:01 raspberrypi weewx[8936]: manager: added record
>>>> 2016-11-25 15:55:00 CET (1480085700) to daily summary in 'weewx.sdb'
>>>> Nov 25 15:55:03 raspberrypi weewx[8936]: vantage: Requesting 200 LOOP
>>>> packets.
>>>> Nov 25 15:55:03 raspberrypi weewx[8936]: vantage: rude wake up of
>>>> console successful
>>>> Nov 25 15:55:03 raspberrypi weewx[8936]: manager: unable to add record
>>>> 2016-11-25 15:55:00 CET (1480085700) to database 'weewx.sdb': PRIMARY KEY
>>>> must be unique
>>>>
>>>
>>> Makes sense, because this record has already been added.
>>> Even 40 secs later it ist still the same date and number:
>>>
>>>> Nov 25 15:55:41 raspberrypi weewx[8936]: vantage: Requesting 200 LOOP
>>>> packets.
>>>> Nov 25 15:55:41 raspberrypi weewx[8936]: vantage: gentle wake up of
>>>> console successful
>>>> Nov 25 15:55:42 raspberrypi weewx[8936]: manager: unable to add record
>>>> 2016-11-25 15:55:00 CET (1480085700) to database 'weewx.sdb': PRIMARY KEY
>>>> must be unique
>>>>
>>>
>>> I asume the PRIMARY KEY is the number in brackets. How is this number
>>> generated? The date must come from Raspi. I don't have a RTC in the feather.
>>> I had a look at the data structure Dekays lib sends out. No indication
>>> of a time information. But I still have the feeling that this is all
>>> connected  with a missing RTC.
>>>
>>> So this leads back to my original question: Do I need a RTC in my 3rd
>>> party Vantage connector?
>>>
>>> Thanks, Gustl
>>>
>>>
>>>
>>>
>>> If not, come back, but please post the log.
>>>>
>>>> Another question: I see bursts of 'Requesting 200 LOOP packets' in
>>>>> debug mode after starting. Is this normal behavior?
>>>>
>>>>
>>>> Yes. This is how the data gets pulled off the console.
>>>>
>>>> -tk
>>>>
>>>> On Thu, Nov 24, 2016 at 1:54 PM, gustl319 <[email protected]> wrote:
>>>>
>>>>> Hi there,
>>>>>
>>>>> I have a Vantage Vue. On an Adafruit Feather I run Dekay's lib wich
>>>>> receives the Vantage packets and seams to work fine. Weewx runs on a Raspi
>>>>> with USB to feather. Weewx works well with Simulator. With Vantage I get
>>>>> 'less than final timestamp' messages and no records are stored. I assume
>>>>> this is because Feather has no RTC and I faked the RTC with a constant
>>>>> time.
>>>>> Is it possible to configure weewx to use local timestamps with Vantage
>>>>> data or to ignore the difference in time?
>>>>>
>>>>> Another question: I see bursts of 'Requesting 200 LOOP packets' in
>>>>> debug mode after starting. Is this normal behavior?
>>>>>
>>>>>  Thanks and greetings from Bavaria
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "weewx-user" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "weewx-user" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "weewx-user" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to