WeatherLink driver maintainer contact?

221 views
Skip to first unread message

Scott Shambarger

unread,
Aug 2, 2019, 8:38:53 PM8/2/19
to weewx-development
I have a freshweewx  install - and since I have a WeatherlinkIP based Davis station, I installed/configured the wlink driver (from the wiki link)...

However, it has several bugs that make it "difficult" to use... it fails to start with an empty database (full-sync, but easy to fix in the driver), and for LOOP packets it parses pages that don't exist anymore on weatherlink.com (404 errors).

I tried to locate the original developer (Matthew Wall @ mit.edu), but the links at lancet.mit.edu don't have any contact info for him (anymore, at least).

I've fixed the "full-sync" bug, and am working on getting LOOP packets from the embedded weatherlink pages... however, I don't want to post an updated driver without his permission (there's no license in the code, just his copyright notice).

I could post a diff (github perhaps?), but I'd rather just post a complete driver...

Does anyone have any current contact info for Matthew?

Thanks,
Scott

mwall

unread,
Aug 7, 2019, 9:11:01 AM8/7/19
to weewx-development
On Friday, August 2, 2019 at 8:38:53 PM UTC-4, Scott Shambarger wrote:

I could post a diff (github perhaps?), but I'd rather just post a complete driver...

hello scott,

please post the complete driver here.  i will do the diffs and merge it.

the wlink driver (along with many of the weewx extensions i wrote) are currently living in a private subversion repository.  that is why only the tarball releases are available.  i am converting it to a bunch of gitlab projects, but the process is taking awhile - summertime activities keep getting in the way :)

Scott Shambarger

unread,
Aug 15, 2019, 7:51:59 PM8/15/19
to weewx-development


On Wednesday, August 7, 2019 at 6:11:01 AM UTC-7, mwall wrote:
 
...- summertime activities keep getting in the way :)

Too true... happily I finally had a day or so to work on the driver...

I ended up adding more than just the LOOP packet parsing though, including:
 - pulling station settings from the StationStatus api (archive interval, rain bucket size, and station timezone), so they are optional in the config now...
 - timezone handling for archive packets...added code for both named timezones and fixed-offset ones, but I'm not sure how the fixed-offset are exposed via the API, so that may not work (codes there, and setting them directly in weewx.conf works).
  NOTE: named timezones require pytz, but if it's not installed, then the driver falls-back to the original localtime handling...
 - added support for wee_config
 - added support for wee_driver --info so that the config can be easily tested
 - added test for downloading/parsing archive packets
 - lots of options when running the wlink.py directly for testing...

I've tested it with python 2.6 and 2.7, and tried as many error cases as I could, but i only have the one weather station to test with :)

Let me know if you find any glaring errors...

Thanks,
Scott

wlink.py

Ruben Navarro Huedo

unread,
Aug 20, 2019, 11:18:21 AM8/20/19
to weewx-development
Scott: If it is running i can test it.
Is it getting LOOP data from weatherlink.com ?

Ruben Navarro Huedo

unread,
Aug 20, 2019, 12:21:22 PM8/20/19
to weewx-development
Scott, please...send me an email to runahue at gmail and we make some tests.

Scott Shambarger

unread,
Aug 20, 2019, 3:02:25 PM8/20/19
to weewx-development

On Tuesday, August 20, 2019 at 9:21:22 AM UTC-7, Ruben Navarro Huedo wrote:
Scott, please...send me an email to runahue at gmail and we make some tests.

I've been running it for a couple weeks, and it's been working great.... the driver is attached to msg #3 in this thread, so you can download it from there :)

Thanks,
Scott

Ruben Navarro Huedo

unread,
Aug 20, 2019, 4:28:12 PM8/20/19
to weewx-development
Yes...i did and i have been testing it.

 wee_device --info <-- this is OK, but my db is not updating and weewx is not creating graphs or correct html.

If you want send me an email and i send yoo my user / pass for testing.

Ruben Navarro Huedo

unread,
Aug 21, 2019, 11:59:19 AM8/21/19
to weewx-development
More testing:
I have deleted database and now it is getting archive data.
But it has some error:

Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 11:00:00 CEST (1554022800) to daily summary in 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 11:30:00 CEST (1554024600) to database 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 11:30:00 CEST (1554024600) to daily summary in 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 12:00:00 CEST (1554026400) to database 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 12:00:00 CEST (1554026400) to daily summary in 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 12:30:00 CEST (1554028200) to database 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 12:30:00 CEST (1554028200) to daily summary in 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 13:00:00 CEST (1554030000) to database 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: manager: Added record 2019-03-31 13:00:00 CEST (1554030000) to daily summary in 'weewx.sdb'
Aug 21 17:53:55 satnogs weewx[11775]: engine: Internal error detected. Catchup abandoned
Aug 21 17:53:55 satnogs weewx[11775]: **** Unknown archive type: 0x30
Aug 21 17:53:55 satnogs weewx[11775]: engine: Starting main packet loop.
Aug 21 17:55:59 satnogs weewx[11775]: engine: Internal error detected. Catchup abandoned
Aug 21 17:55:59 satnogs weewx[11775]: **** Unknown archive type: 0x30

Aug 21 17:56:06 satnogs weewx[11775]: cheetahgenerator: Generated 12 files for report SeasonsReport in 6.91 seconds
Aug 21 17:56:13 satnogs weewx[11775]: imagegenerator: Generated 57 images for SeasonsReport in 7.48 seconds
Aug 21 17:56:13 satnogs weewx[11775]: copygenerator: copied 5 files to /var/www/html/weewx

index.html is updated until last archive data before error ( 31/3).
It is not updated with loop data:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Cabo de Santa Pola, Alicante</title>
    <link rel="icon" type="image/png" href="favicon.ico" />
    <link rel="stylesheet" type="text/css" href="seasons.css"/>
    <script src="seasons.js"></script>
  </head>

  <body onload="setup();">

<div id="title_bar">
  <div id="title">
    <h1 class="page_title">Cabo de Santa Pola, Alicante</h1>
    <p class="lastupdate">31/03/19 13:00:00</p>
  </div>
  <div id="rss_link"><a href="rss.xml">RSS</a></div>
  <div id="reports">
    Monthly Reports:
    <select name="reports" onchange="openTabularFile(value)">
      <option value="2018-12">2018-12</option>
      <option value="2019-01">2019-01</option>
      <option value="2019-02">2019-02</option>
      <option value="2019-03">2019-03</option>
      <option selected>- Select Month -</option>
    </select>

Scott Shambarger

unread,
Aug 21, 2019, 6:35:30 PM8/21/19
to weewx-development
OK, I used the login you sent me, and it looks like there's a bad archive record in the Davis database...I've updated wlink to skip bad records (but log them), and the rest of the archive loads fine after that.

I also fixed a bug in the command line date format :)

The LOOP packets come in fine on my setup with your login... so they should be working for you (you might check your report config).

Thanks,
Scott

wlink.py

Ruben Navarro Huedo

unread,
Aug 22, 2019, 9:24:10 AM8/22/19
to weewx-development
A lot of thank's Scott.

I am trying it now.

Will send you the result in some hours.

Ruben Navarro Huedo

unread,
Aug 22, 2019, 9:50:29 AM8/22/19
to weewx-development
It stopped getting data on 15/7 and my console is uploading correctly to weatherlink.com
It updates html and hraph only until 15/7 .... not adding LOOP data.

Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:25:00 CEST (1563186300) to database 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:25:00 CEST (1563186300) to daily summary in 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:30:00 CEST (1563186600) to database 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:30:00 CEST (1563186600) to daily summary in 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:35:00 CEST (1563186900) to database 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:35:00 CEST (1563186900) to daily summary in 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:40:00 CEST (1563187200) to database 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: manager: Added record 2019-07-15 12:40:00 CEST (1563187200) to daily summary in 'weewx.sdb'
Aug 22 15:46:13 satnogs weewx[14733]: engine: Starting main packet loop.

Scott Shambarger

unread,
Aug 22, 2019, 12:17:09 PM8/22/19
to weewx-development

LOOP packets are coming in normally, but Davis isn't updating your archive records past 7/15 (thought you were aware of that :)... I checked the archive headers (use your DID and PW):

Model=17
Records=10240
MaxRecords=10240
ArchiveInt=1
ConsoleVer=Feb  3 2015
VantageTX=0

and select count(*) from archive; in mysql gave me 10239, so basically weewx is getting all the data Davis has... you might need to contact them directly (might be related to the bad record above...)

Re: LOOP packet, are you sure you have a report using live data?  Try installing the Cumulus Real-time extension, see

Thanks,
Scott

Scott Shambarger

unread,
Aug 25, 2019, 4:57:51 PM8/25/19
to weewx-development

Updated driver, added --current and --format args to wee_device

wlink.py

Scott Shambarger

unread,
Sep 1, 2019, 11:58:10 AM9/1/19
to weewx-development
Here's my latest version of the driver... I noticed I was getting archive values for things like soilTemp3 even though I have a Vantage Vue that can't have any extra sensors... so this version adds a config option for extra sensors.   The default action to check the LOOP packet for a list of extra sensors to include in archive packets.

I also added --current and --info to the wlink.py options...

... would be nice if there was someplace I could post updates... Matthew, perhaps you could post a version on github so I could submit pull requests?

Scott

wlink.py

Scott Shambarger

unread,
Jan 15, 2020, 1:09:55 AM1/15/20
to weewx-development


On Wednesday, August 7, 2019 at 8:11:01 AM UTC-5, mwall wrote:

hello scott,

please post the complete driver here.  i will do the diffs and merge it.


Matthew, was there anything else you needed from me?  I posted the driver to the list back in Sept...?

Thanks,
Scott

Reply all
Reply to author
Forward
0 new messages