Ambient WS-2000 + ATMOCOM weewx rain way too high

231 views
Skip to first unread message

Glenn Szlagowski

unread,
Dec 10, 2019, 8:06:55 AM12/10/19
to weewx-user
Background info:

Using the ATMOCOM driver on a RaspberryPi plus CRT extension

Correct rainfall is here: http://weather.glenns.ca

rainfall reported by weewx is here: http://weewx.glenns.ca
(way too high) You will see huge spike in temp due to my changing weewx_conf ATMOCOM driver to metric resulting in outside limit errors. see syslog.

output of ATMOCOM interceptor device: view-source:http://glenns.ca/atmocom/wxloader.php?id=ITEHKUMM2&fmt=j

Is it a conversion issue or a U.S. vs metric setting somewhere? Driver setting or ATMOCOM issue?

I am in Canada so I prefer metric readings.

Any help would be greatly appreciated!
 
---
comparison of a few weeks rainfall data in Oct 2019:
   
WEEWX    ACTUAL
RAIN         RAIN
-------   
1.3    0.25
4.8    0.76
40.6    5.84
23.6    3.05
52.8    5.33
120.6    8.64
81.5    9.14
102.6    9.14
254.5    14.48
719.1    35.81
24.4    2.54
77.2    6.86
55.4    4.32
---
   
mylog:

Dec  9 18:42:29 raspberrypi weewx[24807]:     ****    File "/usr/share/weewx/weewx/engine.py", line 188, in run
Dec  9 18:42:29 raspberrypi weewx[24807]:     ****      for packet in self.console.genLoopPackets():
Dec  9 18:42:29 raspberrypi weewx[24807]:     ****    File "/usr/share/weewx/user/atmocomudp.py", line 277, in genLoopPackets
Dec  9 18:42:29 raspberrypi weewx[24807]:     ****      m=s.recvfrom(1024)
Dec  9 18:42:29 raspberrypi weewx[24807]:     ****    File "/usr/share/weewx/weewx/engine.py", line 812, in sigTERMhandler
Dec  9 18:42:29 raspberrypi weewx[24807]:     ****      raise Terminate
Dec  9 18:42:29 raspberrypi weewx[24807]:     ****  Terminate
Dec  9 18:42:34 raspberrypi weewx[26682]: Stopping weewx weather system: weewx..
Dec  9 18:42:34 raspberrypi systemd[1]: weewx.service: Succeeded.
Dec  9 18:42:34 raspberrypi systemd[1]: Stopped LSB: weewx weather system.
Dec  9 18:42:52 raspberrypi systemd[1]: Starting LSB: weewx weather system...
Dec  9 18:42:52 raspberrypi weewx[26820]: engine: Initializing weewx version 3.9.2
Dec  9 18:42:52 raspberrypi weewx[26820]: engine: Using Python 2.7.16 (default, Oct 10 2019, 22:02:15) #012[GCC 8.3.0]
Dec  9 18:42:52 raspberrypi weewx[26820]: engine: Platform Linux-4.19.75-v7+-armv7l-with-debian-10.2
Dec  9 18:42:52 raspberrypi weewx[26820]: engine: Locale is 'en_CA.UTF-8'
Dec  9 18:42:52 raspberrypi weewx[26820]: engine: pid file is /var/run/weewx.pid
Dec  9 18:42:52 raspberrypi weewx[26808]: Starting weewx weather system: weewx.
Dec  9 18:42:52 raspberrypi systemd[1]: Started LSB: weewx weather system.
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Using configuration file /etc/weewx/weewx.conf
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Debug is 1
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Initializing engine
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading station type AtmocomUDP (user.atmocomudp)
Dec  9 18:42:52 raspberrypi weewx[26824]: atmocomudp: MainThread: driver version is 1.20
Dec  9 18:42:52 raspberrypi weewx[26824]: atmocomudp: MainThread: sensor map is {'outTemp': 'tempf.ITEHKUMM2', 'outHumidity': 'humidity.ITEHKUMM2', 'UV': 'UV.ITEHKUMM2', 'radiation': 'solarradiation.ITEHKUMM2', 'rain': 'rainindelta.ITEHKUMM2', 'windDir': 'winddir.ITEHKUMM2', 'pressure': 'absbaromin.ITEHKUMM2', 'windSpeed': 'windspeedmph.ITEHKUMM2', 'inHumidity': 'indoorhumidity.ITEHKUMM2', 'inTemp': 'indoortempf.ITEHKUMM2', 'windGust': 'windgustmph.ITEHKUMM2'}
Dec  9 18:42:52 raspberrypi weewx[26824]: atmocomudp: MainThread: *** Sensor names per packet type
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.engine.StdTimeSynch
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.engine.StdTimeSynch
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.engine.StdConvert
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: StdConvert target unit is 0x1
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.engine.StdConvert
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.engine.StdCalibrate
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.engine.StdCalibrate
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.engine.StdQC
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.engine.StdQC
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.wxservices.StdWXCalculate
Dec  9 18:42:52 raspberrypi weewx[26824]: wxcalculate: The following values will be calculated: barometer=prefer_hardware, windchill=prefer_hardware, dewpoint=prefer_hardware, appTemp=prefer_hardware, rainRate=prefer_hardware, windrun=prefer_hardware, heatindex=prefer_hardware, maxSolarRad=prefer_hardware, humidex=prefer_hardware, pressure=prefer_hardware, inDewpoint=prefer_hardware, ET=prefer_hardware, altimeter=prefer_hardware, cloudbase=prefer_hardware
Dec  9 18:42:52 raspberrypi weewx[26824]: wxcalculate: The following algorithms will be used for calculations: altimeter=aaNOAA, maxSolarRad=RS
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.wxservices.StdWXCalculate
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service user.crt.CumulusRealTime
Dec  9 18:42:52 raspberrypi weewx[26824]: crt: service version is 0.18
Dec  9 18:42:52 raspberrypi weewx[26824]: crt: output goes to /var/www/html/weewx/realtime.txt
Dec  9 18:42:52 raspberrypi weewx[26824]: crt: 'None' values will be displayed as NULL
Dec  9 18:42:52 raspberrypi weewx[26824]: crt: units will be displayed as METRIC
Dec  9 18:42:52 raspberrypi weewx[26824]: crt: zambretti forecast: False
Dec  9 18:42:52 raspberrypi weewx[26824]: crt: binding is loop
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service user.crt.CumulusRealTime
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.engine.StdArchive
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Archive will use data binding wx_binding
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Record generation will be attempted in 'hardware'
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Using archive interval of 120 seconds (specified in weewx configuration)
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Use LOOP data in hi/low calculations: 1
Dec  9 18:42:52 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Using binding 'wx_binding' to database 'weewx.sdb'
Dec  9 18:42:52 raspberrypi weewx[26824]: manager: Starting backfill of daily summaries
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.engine.StdArchive
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.restx.StdStationRegistry
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: StationRegistry: Registration not requested.
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.restx.StdStationRegistry
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.restx.StdWunderground
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: Wunderground: Posting not enabled.
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.restx.StdWunderground
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.restx.StdPWSweather
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: PWSweather: Posting not enabled.
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.restx.StdPWSweather
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.restx.StdCWOP
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: CWOP: Posting not enabled.
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.restx.StdCWOP
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.restx.StdWOW
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: WOW: Posting not enabled.
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.restx.StdWOW
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.restx.StdAWEKAS
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: AWEKAS: Data will be uploaded for user gszlag
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.restx.StdAWEKAS
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service user.windy.Windy
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: Windy: version is 0.4
Dec  9 18:42:52 raspberrypi weewx[26824]: restx: Windy: Data will be uploaded to https://stations.windy.com/pws/update
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service user.windy.Windy
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.engine.StdPrint
Dec  9 18:42:52 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.engine.StdPrint
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Loading service weewx.engine.StdReport
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Finished loading service weewx.engine.StdReport
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Starting up weewx version 3.9.2
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Station does not support reading the time
Dec  9 18:42:52 raspberrypi weewx[26824]: engine: Starting main packet loop.
Dec  9 18:42:52 raspberrypi weewx[26824]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 18:42:52 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:44:38 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:44:00 EST (1575935040) to database 'weewx.sdb'
Dec  9 18:44:38 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:44:00 EST (1575935040) to daily summary in 'weewx.sdb'
Dec  9 18:44:38 raspberrypi weewx[26824]: reportengine: Running reports for latest time in the database.
Dec  9 18:44:38 raspberrypi weewx[26824]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 18:44:38 raspberrypi weewx[26824]: reportengine: Running report 'SeasonsReport'
Dec  9 18:44:38 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Dec  9 18:44:39 raspberrypi weewx[26824]: cheetahgenerator: using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras']
Dec  9 18:44:39 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:44:39 raspberrypi weewx[26824]: restx: AWEKAS: Failed to publish record 2019-12-09 18:44:00 EST (1575935040): server returned ' - Niederschlag administrativ gesperrt  - Transfer OK'
Dec  9 18:44:39 raspberrypi weewx[26824]: restx: Windy: Published record 2019-12-09 18:44:00 EST (1575935040)
Dec  9 18:44:43 raspberrypi weewx[26824]: cheetahgenerator: Generated 8 files for report SeasonsReport in 4.34 seconds
Dec  9 18:44:43 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:44:45 raspberrypi weewx[26824]: imagegenerator: Generated 14 images for SeasonsReport in 1.53 seconds
Dec  9 18:44:45 raspberrypi weewx[26824]: copygenerator: copied 5 files to /var/www/html/weewx
Dec  9 18:44:45 raspberrypi weewx[26824]: reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Dec  9 18:44:45 raspberrypi weewx[26824]: reportengine: Report 'MobileReport' not enabled. Skipping.
Dec  9 18:44:45 raspberrypi weewx[26824]: reportengine: Report 'StandardReport' not enabled. Skipping.
Dec  9 18:44:45 raspberrypi weewx[26824]: reportengine: Running report 'FTP'
Dec  9 18:44:45 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Ftp/skin.conf for report 'FTP'
Dec  9 18:44:45 raspberrypi weewx[26824]: ftpupload: Attempting secure connection to ftp.glenns.ca
Dec  9 18:44:45 raspberrypi weewx[26824]: ftpupload: Secure data connection to ftp.glenns.ca
Dec  9 18:44:46 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrx.png
Dec  9 18:44:47 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/seasons.js
Dec  9 18:44:48 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/favicon.ico
Dec  9 18:44:49 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywind.png
Dec  9 18:44:50 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/celestial.html
Dec  9 18:44:50 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/tabular.html
Dec  9 18:44:51 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytemp.png
Dec  9 18:44:52 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayradiation.png
Dec  9 18:44:53 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/telemetry.html
Dec  9 18:44:54 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayvolt.png
Dec  9 18:44:54 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/seasons.css
Dec  9 18:44:55 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/index.html
Dec  9 18:44:56 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/rss.xml
Dec  9 18:44:57 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daybarometer.png
Dec  9 18:44:58 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayuv.png
Dec  9 18:44:59 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempin.png
Dec  9 18:44:59 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywinddir.png
Dec  9 18:45:00 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayhum.png
Dec  9 18:45:01 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywindvec.png
Dec  9 18:45:02 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/statistics.html
Dec  9 18:45:03 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/realtime.txt
Dec  9 18:45:03 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempfeel.png
Dec  9 18:45:04 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempdew.png
Dec  9 18:45:05 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrain.png
Dec  9 18:45:06 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019.txt
Dec  9 18:45:07 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019-12.txt
Dec  9 18:45:08 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/font/OpenSans.woff
Dec  9 18:45:09 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/font/OpenSans.woff2
Dec  9 18:45:09 raspberrypi weewx[26824]: ftpgenerator: ftp'd 28 files in 24.18 seconds
Dec  9 18:45:09 raspberrypi weewx[26824]: reportengine: Report 'RSYNC' not enabled. Skipping.
Dec  9 18:46:30 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:46:00 EST (1575935160) to database 'weewx.sdb'
Dec  9 18:46:30 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:46:00 EST (1575935160) to daily summary in 'weewx.sdb'
Dec  9 18:46:30 raspberrypi weewx[26824]: restx: AWEKAS: wait interval (120 < 300) has not passed for record 2019-12-09 18:46:00 EST (1575935160)
Dec  9 18:46:30 raspberrypi weewx[26824]: reportengine: Running reports for latest time in the database.
Dec  9 18:46:30 raspberrypi weewx[26824]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 18:46:30 raspberrypi weewx[26824]: reportengine: Running report 'SeasonsReport'
Dec  9 18:46:30 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Dec  9 18:46:31 raspberrypi weewx[26824]: cheetahgenerator: using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras']
Dec  9 18:46:31 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:46:31 raspberrypi weewx[26824]: restx: Windy: Published record 2019-12-09 18:46:00 EST (1575935160)
Dec  9 18:46:33 raspberrypi weewx[26824]: cheetahgenerator: Generated 8 files for report SeasonsReport in 2.03 seconds
Dec  9 18:46:33 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:46:34 raspberrypi weewx[26824]: imagegenerator: Generated 14 images for SeasonsReport in 1.38 seconds
Dec  9 18:46:34 raspberrypi weewx[26824]: copygenerator: copied 0 files to /var/www/html/weewx
Dec  9 18:46:34 raspberrypi weewx[26824]: reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Dec  9 18:46:34 raspberrypi weewx[26824]: reportengine: Report 'MobileReport' not enabled. Skipping.
Dec  9 18:46:34 raspberrypi weewx[26824]: reportengine: Report 'StandardReport' not enabled. Skipping.
Dec  9 18:46:34 raspberrypi weewx[26824]: reportengine: Running report 'FTP'
Dec  9 18:46:34 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Ftp/skin.conf for report 'FTP'
Dec  9 18:46:34 raspberrypi weewx[26824]: ftpupload: Attempting secure connection to ftp.glenns.ca
Dec  9 18:46:35 raspberrypi weewx[26824]: ftpupload: Secure data connection to ftp.glenns.ca
Dec  9 18:46:36 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrx.png
Dec  9 18:46:36 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywind.png
Dec  9 18:46:37 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/celestial.html
Dec  9 18:46:38 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/tabular.html
Dec  9 18:46:39 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytemp.png
Dec  9 18:46:40 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayradiation.png
Dec  9 18:46:40 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/telemetry.html
Dec  9 18:46:41 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayvolt.png
Dec  9 18:46:42 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/index.html
Dec  9 18:46:43 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/rss.xml
Dec  9 18:46:44 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daybarometer.png
Dec  9 18:46:45 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayuv.png
Dec  9 18:46:45 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempin.png
Dec  9 18:46:46 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywinddir.png
Dec  9 18:46:47 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayhum.png
Dec  9 18:46:48 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywindvec.png
Dec  9 18:46:49 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/statistics.html
Dec  9 18:46:49 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/realtime.txt
Dec  9 18:46:50 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempfeel.png
Dec  9 18:46:51 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempdew.png
Dec  9 18:46:52 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrain.png
Dec  9 18:46:53 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019.txt
Dec  9 18:46:54 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019-12.txt
Dec  9 18:46:54 raspberrypi weewx[26824]: ftpgenerator: ftp'd 23 files in 19.87 seconds
Dec  9 18:46:54 raspberrypi weewx[26824]: reportengine: Report 'RSYNC' not enabled. Skipping.
Dec  9 18:48:38 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:48:00 EST (1575935280) to database 'weewx.sdb'
Dec  9 18:48:38 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:48:00 EST (1575935280) to daily summary in 'weewx.sdb'
Dec  9 18:48:38 raspberrypi weewx[26824]: reportengine: Running reports for latest time in the database.
Dec  9 18:48:38 raspberrypi weewx[26824]: restx: AWEKAS: wait interval (240 < 300) has not passed for record 2019-12-09 18:48:00 EST (1575935280)
Dec  9 18:48:38 raspberrypi weewx[26824]: reportengine: Running report 'SeasonsReport'
Dec  9 18:48:38 raspberrypi weewx[26824]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 18:48:38 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Dec  9 18:48:38 raspberrypi weewx[26824]: cheetahgenerator: using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras']
Dec  9 18:48:38 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:48:38 raspberrypi weewx[26824]: restx: Windy: Published record 2019-12-09 18:48:00 EST (1575935280)
Dec  9 18:48:40 raspberrypi weewx[26824]: cheetahgenerator: Generated 8 files for report SeasonsReport in 2.10 seconds
Dec  9 18:48:40 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:48:41 raspberrypi weewx[26824]: imagegenerator: Generated 14 images for SeasonsReport in 1.37 seconds
Dec  9 18:48:41 raspberrypi weewx[26824]: copygenerator: copied 0 files to /var/www/html/weewx
Dec  9 18:48:41 raspberrypi weewx[26824]: reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Dec  9 18:48:41 raspberrypi weewx[26824]: reportengine: Report 'MobileReport' not enabled. Skipping.
Dec  9 18:48:41 raspberrypi weewx[26824]: reportengine: Report 'StandardReport' not enabled. Skipping.
Dec  9 18:48:41 raspberrypi weewx[26824]: reportengine: Running report 'FTP'
Dec  9 18:48:41 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Ftp/skin.conf for report 'FTP'
Dec  9 18:48:41 raspberrypi weewx[26824]: ftpupload: Attempting secure connection to ftp.glenns.ca
Dec  9 18:48:42 raspberrypi weewx[26824]: ftpupload: Secure data connection to ftp.glenns.ca
Dec  9 18:48:43 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrx.png
Dec  9 18:48:44 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywind.png
Dec  9 18:48:45 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/celestial.html
Dec  9 18:48:46 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/tabular.html
Dec  9 18:48:46 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytemp.png
Dec  9 18:48:47 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayradiation.png
Dec  9 18:48:48 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/telemetry.html
Dec  9 18:48:49 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayvolt.png
Dec  9 18:48:50 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/index.html
Dec  9 18:48:50 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/rss.xml
Dec  9 18:48:51 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daybarometer.png
Dec  9 18:48:52 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayuv.png
Dec  9 18:48:53 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempin.png
Dec  9 18:48:53 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywinddir.png
Dec  9 18:48:54 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayhum.png
Dec  9 18:48:55 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywindvec.png
Dec  9 18:48:56 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/statistics.html
Dec  9 18:48:57 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/realtime.txt
Dec  9 18:48:58 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempfeel.png
Dec  9 18:48:58 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempdew.png
Dec  9 18:48:59 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrain.png
Dec  9 18:49:00 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019.txt
Dec  9 18:49:01 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019-12.txt
Dec  9 18:49:01 raspberrypi weewx[26824]: ftpgenerator: ftp'd 23 files in 19.70 seconds
Dec  9 18:49:01 raspberrypi weewx[26824]: reportengine: Report 'RSYNC' not enabled. Skipping.
Dec  9 18:50:30 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:50:00 EST (1575935400) to database 'weewx.sdb'
Dec  9 18:50:30 raspberrypi weewx[26824]: manager: Added record 2019-12-09 18:50:00 EST (1575935400) to daily summary in 'weewx.sdb'
Dec  9 18:50:30 raspberrypi weewx[26824]: reportengine: Running reports for latest time in the database.
Dec  9 18:50:30 raspberrypi weewx[26824]: reportengine: Running report 'SeasonsReport'
Dec  9 18:50:30 raspberrypi weewx[26824]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 18:50:30 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Dec  9 18:50:30 raspberrypi weewx[26824]: cheetahgenerator: using search list ['weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo', 'weewx.cheetahgenerator.Extras']
Dec  9 18:50:30 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:50:30 raspberrypi weewx[26824]: restx: Windy: Published record 2019-12-09 18:50:00 EST (1575935400)
Dec  9 18:50:30 raspberrypi weewx[26824]: restx: AWEKAS: Failed to publish record 2019-12-09 18:50:00 EST (1575935400): server returned ' - Niederschlag administrativ gesperrt  - Transfer OK'
Dec  9 18:50:32 raspberrypi weewx[26824]: cheetahgenerator: Generated 8 files for report SeasonsReport in 2.12 seconds
Dec  9 18:50:32 raspberrypi weewx[26824]: manager: Daily summary version is 2.0
Dec  9 18:50:34 raspberrypi weewx[26824]: imagegenerator: Generated 14 images for SeasonsReport in 1.40 seconds
Dec  9 18:50:34 raspberrypi weewx[26824]: copygenerator: copied 0 files to /var/www/html/weewx
Dec  9 18:50:34 raspberrypi weewx[26824]: reportengine: Report 'SmartphoneReport' not enabled. Skipping.
Dec  9 18:50:34 raspberrypi weewx[26824]: reportengine: Report 'MobileReport' not enabled. Skipping.
Dec  9 18:50:34 raspberrypi weewx[26824]: reportengine: Report 'StandardReport' not enabled. Skipping.
Dec  9 18:50:34 raspberrypi weewx[26824]: reportengine: Running report 'FTP'
Dec  9 18:50:34 raspberrypi weewx[26824]: reportengine: Found configuration file /etc/weewx/skins/Ftp/skin.conf for report 'FTP'
Dec  9 18:50:34 raspberrypi weewx[26824]: ftpupload: Attempting secure connection to ftp.glenns.ca
Dec  9 18:50:34 raspberrypi weewx[26824]: ftpupload: Secure data connection to ftp.glenns.ca
Dec  9 18:50:35 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrx.png
Dec  9 18:50:36 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywind.png
Dec  9 18:50:37 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/celestial.html
Dec  9 18:50:38 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/tabular.html
Dec  9 18:50:38 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytemp.png
Dec  9 18:50:39 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayradiation.png
Dec  9 18:50:40 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/telemetry.html
Dec  9 18:50:41 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayvolt.png
Dec  9 18:50:42 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/index.html
Dec  9 18:50:42 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/rss.xml
Dec  9 18:50:43 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daybarometer.png
Dec  9 18:50:44 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayuv.png
Dec  9 18:50:45 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempin.png
Dec  9 18:50:46 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywinddir.png
Dec  9 18:50:46 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayhum.png
Dec  9 18:50:47 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daywindvec.png
Dec  9 18:50:48 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/statistics.html
Dec  9 18:50:49 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/realtime.txt
Dec  9 18:50:50 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempfeel.png
Dec  9 18:50:51 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/daytempdew.png
Dec  9 18:50:51 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/dayrain.png
Dec  9 18:50:52 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019.txt
Dec  9 18:50:53 raspberrypi weewx[26824]: ftpupload: Uploaded file /weewx/NOAA/NOAA-2019-12.txt
Dec  9 18:50:53 raspberrypi weewx[26824]: ftpgenerator: ftp'd 23 files in 19.68 seconds
Dec  9 18:50:53 raspberrypi weewx[26824]: reportengine: Report 'RSYNC' not enabled. Skipping.
---


weewx_conf:

# WEEWX CONFIGURATION FILE
#
# Copyright (c) 2009-2019 Tom Keffer <tke...@gmail.com>
# See the file LICENSE.txt for your rights.

##############################################################################

# This section is for general configuration information.

# Set to 1 for extra debug info, otherwise comment it out or set to zero
debug = 1

# Root directory of the weewx data file hierarchy for this station
WEEWX_ROOT = /

# Whether to log successful operations
log_success = True

# Whether to log unsuccessful operations
log_failure = True

# How long to wait before timing out a socket (FTP, HTTP) connection
socket_timeout = 20

# Do not modify this. It is used when installing and updating weewx.
version = 3.9.2

##############################################################################

#   This section is for information about the station.

[Station]
  
    # Description of the station location
    location = Michael's Bay - Tehkummah
  
    # Latitude and longitude in decimal degrees
    latitude = 45.633
    longitude = -82.090
  
    # Altitude of the station, with unit it is in. This is downloaded from
    # from the station if the hardware supports it.
    altitude = 195, meter
  
    # Set to type of station hardware. There must be a corresponding stanza
    # in this file with a 'driver' parameter indicating the driver to be used.
    station_type = AtmocomUDP
  
    # If you have a website, you may specify an URL
    #station_url = http://weewx.glenns.ca
  
    # The start of the rain year (1=January; 10=October, etc.). This is
    # downloaded from the station if the hardware supports it.
    rain_year_start = 1
  
    # Start of week (0=Monday, 6=Sunday)
    week_start = 6

##############################################################################

[AtmocomUDP]
    driver = user.atmocomudp
    udp_address = 0.0.0.0
    udp_port = 12000
    udp_timeout = 90
    share_socket = True
    station_units = weewx.US
    log_raw_packets = False
  
    [[sensor_map]]
        outTemp = tempf.ITEHKUMM2
        outHumidity = humidity.ITEHKUMM2
        UV = UV.ITEHKUMM2
        radiation = solarradiation.ITEHKUMM2
        rain = rainindelta.ITEHKUMM2
        windDir = winddir.ITEHKUMM2
        pressure = absbaromin.ITEHKUMM2
        windSpeed = windspeedmph.ITEHKUMM2
        inHumidity = indoorhumidity.ITEHKUMM2
        inTemp = indoortempf.ITEHKUMM2
        windGust = windgustmph.ITEHKUMM2

##############################################################################

[Simulator]
    # This section is for the weewx weather station simulator
  
    # The time (in seconds) between LOOP packets.
    loop_interval = 2.5
  
    # The simulator mode can be either 'simulator' or 'generator'.
    # Real-time simulator. Sleep between each LOOP packet.
    mode = simulator
    # Generator.  Emit LOOP packets as fast as possible (useful for testing).
    #mode = generator
  
    # The start time. Format is YYYY-mm-ddTHH:MM. If not specified, the default
    # is to use the present time.
    #start = 2011-01-01T00:00
  
    # The driver to use:
    driver = weewx.drivers.simulator

##############################################################################

#   This section is for uploading data to Internet sites

[StdRESTful]
  
    [[StationRegistry]]
        # To register this weather station with weewx, set this to true
        register_this_station = false
  
    [[AWEKAS]]
        # This section is for configuring posts to AWEKAS.
      
        # If you wish to do this, set the option 'enable' to true,
        # and specify a username and password.
        # To guard against parsing errors, put the password in quotes.
        enable = true
        username = xxxxxx
        password = xxxxxx
  
    [[CWOP]]
        # This section is for configuring posts to CWOP.
      
        # If you wish to do this, set the option 'enable' to true,
        # and specify the station ID (e.g., CW1234).
        enable = false
        station = replace_me
  
    # If this is an APRS (radio amateur) station, uncomment
    # the following and replace with a passcode (e.g., 12345).
    #passcode = replace_me (APRS stations only)
  
    [[PWSweather]]
        # This section is for configuring posts to PWSweather.com.
      
        # If you wish to do this, set the option 'enable' to true,
        # and specify a station and password.
        # To guard against parsing errors, put the password in quotes.
        enable = false
        station = replace_me
        password = replace_me
  
    [[WOW]]
        # This section is for configuring posts to WOW.
      
        # If you wish to do this, set the option 'enable' to true,
        # and specify a station and password.
        # To guard against parsing errors, put the password in quotes.
        enable = false
        station = replace_me
        password = replace_me
  
    [[Wunderground]]
        # This section is for configuring posts to the Weather Underground.
      
        # If you wish to do this, set the option 'enable' to true,
        # and specify a station (e.g., 'KORHOODR3') and password.
        # To guard against parsing errors, put the password in quotes.
        enable = false
        station = replace_me
        password = replace_me
      
        # Set the following to True to have weewx use the WU "Rapidfire"
        # protocol. Not all hardware can support it. See the User's Guide.
        rapidfire = False
    [[Windy]]
        api_key = xxxxxx
      
##############################################################################

#   This section specifies what reports, using which skins, to generate.

[StdReport]
  
    # Where the skins reside, relative to WEEWX_ROOT
    SKIN_ROOT = /etc/weewx/skins
  
    # Where the generated reports should go, relative to WEEWX_ROOT
    HTML_ROOT = /var/www/html/weewx
  
    # The database binding indicates which data should be used in reports.
    data_binding = wx_binding
  
    # Whether to log a successful operation
    log_success = True
  
    # Whether to log an unsuccessful operation
    log_failure = False
  
    # Each of the following subsections defines a report that will be run.
    # See the customizing guide to change the units, plot types and line
    # colors, modify the fonts, display additional sensor data, and other
    # customizations. Many of those changes can be made here by overriding
    # parameters, or by modifying templates within the skin itself.
  
    [[SeasonsReport]]
        # The SeasonsReport uses the 'Seasons' skin, which contains the
        # images, templates and plots for the report.
        skin = Seasons
        enable = true
  
    [[SmartphoneReport]]
        # The SmartphoneReport uses the 'Smartphone' skin, and the images and
        # files are placed in a dedicated subdirectory.
        skin = Smartphone
        enable = false
        HTML_ROOT = /var/www/html/weewx/smartphone
  
    [[MobileReport]]
        # The MobileReport uses the 'Mobile' skin, and the images and files
        # are placed in a dedicated subdirectory.
        skin = Mobile
        enable = false
        HTML_ROOT = /var/www/html/weewx/mobile
  
    [[StandardReport]]
        # This is the old "Standard" skin. By default, it is not enabled.
        skin = Standard
        enable = false
  
    [[FTP]]
        # FTP'ing the results to a webserver is treated as just another report,
        # albeit one with an unusual report generator!
        skin = Ftp
      
        # If you wish to use FTP, set "enable" to "true", then
        # fill out the next four lines.
        # Use quotes around passwords to guard against parsing errors.
        enable = true
        user = xxxxxx
        password = xxxxxx
        server = xxxxxx    # The ftp server name, e.g, www.myserver.org
        path = /weewx    # The destination directory, e.g., /weather
      
        # Set to True for an FTP over TLS (FTPS) connection. Not all servers
        # support this.
        secure_ftp = True
      
        # To upload files from something other than what HTML_ROOT is set
        # to above, specify a different HTML_ROOT here.
        #HTML_ROOT = /var/www/html/weewx
      
        # Most FTP servers use port 21
        port = 21
      
        # Set to 1 to use passive mode, zero for active mode
        passive = 1
  
    [[RSYNC]]
        # rsync'ing to a webserver is treated as just another report
        skin = Rsync
      
        # If you wish to use rsync, you must configure passwordless ssh using
        # public/private key authentication from the user account that weewx
        # runs to the user account on the remote machine where the files
        # will be copied.
        #
        # If you wish to use rsync, set "enable" to "true", then
        # fill out server, user, and path.
        # The server should appear in your .ssh/config file.
        # The user is the username used in the identity file.
        # The path is the destination directory, such as /var/www/html/weather.
        # Be sure that the user has write permissions on the destination!
        enable = false
        server = replace_me
        user = replace_me
        path = replace_me
      
        # To upload files from something other than what HTML_ROOT is set
        # to above, specify a different HTML_ROOT here.
        #HTML_ROOT = /var/www/html/weewx
      
        # Rsync can be configured to remove files from the remote server if
        # they don't exist under HTML_ROOT locally. USE WITH CAUTION: if you
        # make a mistake in the remote path, you could could unintentionally
        # cause unrelated files to be deleted. Set to 1 to enable remote file
        # deletion, zero to allow files to accumulate remotely.
        delete = 0
  
    ####
  
    # Various options for customizing your reports.
  
    [[Defaults]]
      
        [[[Units]]]
          
            # The following section sets what unit to use for each unit group.
            # NB: The unit is always in the singular. I.e., 'mile_per_hour',
            # NOT 'miles_per_hour'
            [[[[Groups]]]]
              
                group_altitude = meter    # Options are 'foot' or 'meter'
                group_degree_day = degree_C_day    # Options are 'degree_F_day' or 'degree_C_day'
                group_pressure = mbar    # Options are 'inHg', 'mmHg', 'mbar', or 'hPa'
                group_rain = mm    # Options are 'inch', 'cm', or 'mm'
                group_rainrate = mm_per_hour    # Options are 'inch_per_hour', 'cm_per_hour', or 'mm_per_hour'
                group_speed = meter_per_second    # Options are 'mile_per_hour', 'km_per_hour', 'knot', or 'meter_per_second'
                group_speed2 = meter_per_second2    # Options are 'mile_per_hour2', 'km_per_hour2', 'knot2', or 'meter_per_second2'
                group_temperature = degree_C    # Options are 'degree_F' or 'degree_C'
          
            # The following section sets the formatting for each type of unit.
            [[[[StringFormats]]]]
              
                centibar = %.0f
                cm = %.2f
                cm_per_hour = %.2f
                degree_C = %.1f
                degree_F = %.1f
                degree_compass = %.0f
                foot = %.0f
                hPa = %.1f
                hour = %.1f
                inHg = %.3f
                inch = %.2f
                inch_per_hour = %.2f
                km_per_hour = %.0f
                km_per_hour2 = %.1f
                knot = %.0f
                knot2 = %.1f
                mbar = %.1f
                meter = %.0f
                meter_per_second = %.1f
                meter_per_second2 = %.1f
                mile_per_hour = %.0f
                mile_per_hour2 = %.1f
                mm = %.1f
                mmHg = %.1f
                mm_per_hour = %.1f
                percent = %.0f
                second = %.0f
                uv_index = %.1f
                volt = %.1f
                watt_per_meter_squared = %.0f
                NONE = "   N/A"
          
            # The following section sets the label for each type of unit
            [[[[Labels]]]]
              
                day = " day", " days"
                hour = " hour", " hours"
                minute = " minute", " minutes"
                second = " second", " seconds"
                NONE = ""
          
            # The following section sets the format for each time scale.
            # The values below will work in every locale, but they may not look
            # particularly attractive.
            [[[[TimeFormats]]]]
              
                hour = %H:%M
                day = %X
                week = %X (%A)
                month = %x %X
                year = %x %X
                rainyear = %x %X
                current = %x %X
                ephem_day = %X
                ephem_year = %x %X
          
            [[[[Ordinates]]]]
              
                # Ordinal directions. The last one is for no wind direction
                directions = N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW, N/A
              
                # The following section sets the base temperatures used for the
                #  calculation of heating and cooling degree-days.
                [[[[[DegreeDays]]]]]
                  
                    # Base temperature for heating days, with unit:
                    heating_base = 65, degree_F
                    # Base temperature for cooling days, with unit:
                    cooling_base = 65, degree_F
              
                # A trend takes a difference across a time period. The following
                # section sets the time period, and how big an error is allowed to
                # still be counted as the start or end of a period.
                [[[[[Trend]]]]]
                  
                    time_delta = 10800    # 3 hours
                    time_grace = 300    # 5 minutes
      
        # The labels to be used for each observation type
        [[[Labels]]]
          
            # Set to hemisphere abbreviations suitable for your location:
            hemispheres = N, S, E, W
          
            # Formats to be used for latitude whole degrees, longitude whole
            # degrees, and minutes:
            latlon_formats = %02d, %03d, %05.2f
          
            # Generic labels, keyed by an observation type.
            [[[[Generic]]]]
                barometer = Barometer
                dewpoint = Dew Point
                ET = ET
                heatindex = Heat Index
                inHumidity = Inside Humidity
                inTemp = Inside Temperature
                outHumidity = Humidity
                outTemp = Outside Temperature
                radiation = Radiation
                rain = Rain
                rainRate = Rain Rate
                UV = UV Index
                windDir = Wind Direction
                windGust = Gust Speed
                windGustDir = Gust Direction
                windSpeed = Wind Speed
                windchill = Wind Chill
                windgustvec = Gust Vector
                windvec = Wind Vector
                extraTemp1 = Temperature1
                extraTemp2 = Temperature2
                extraTemp3 = Temperature3
              
                # Sensor status indicators
              
                rxCheckPercent = Signal Quality
                txBatteryStatus = Transmitter Battery
                windBatteryStatus = Wind Battery
                rainBatteryStatus = Rain Battery
                outTempBatteryStatus = Outside Temperature Battery
                inTempBatteryStatus = Inside Temperature Battery
                consBatteryVoltage = Console Battery
                heatingVoltage = Heating Battery
                supplyVoltage = Supply Voltage
                referenceVoltage = Reference Voltage
      
        [[[Almanac]]]
          
            # The labels to be used for the phases of the moon:
            moon_phases = New, Waxing crescent, First quarter, Waxing gibbous, Full, Waning gibbous, Last quarter, Waning crescent

##############################################################################

#   This service acts as a filter, converting the unit system coming from
#   the hardware to a unit system in the database.

[StdConvert]
  
    # The target_unit affects only the unit system in the database. Once
    # chosen it cannot be changed without converting the entire database.
    # Modification of target_unit after starting weewx will result in
    # corrupt data - the database will contain a mix of US and METRIC data.
    #
    # The value of target_unit does not affect the unit system for
    # reporting - reports can display US, Metric, or any combination of units.
    #
    # In most cases, target_unit should be left as the default: US
    #
    # In particular, those migrating from a standard wview installation
    # should use US since that is what the wview database contains.
  
    # DO NOT MODIFY THIS VALUE UNLESS YOU KNOW WHAT YOU ARE DOING!
    target_unit = US    # Options are 'US', 'METRICWX', or 'METRIC'

##############################################################################

#   This section can adjust data using calibration expressions.

[StdCalibrate]
  
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        foo = foo + 0.2

##############################################################################

#   This section is for quality control checks. If units are not specified,
#   values must be in the units defined in the StdConvert section.

[StdQC]
  
    [[MinMax]]
        barometer = 26, 32.5, inHg
        pressure = 24, 34.5, inHg
        outTemp = -40, 120, degree_F
        inTemp = 10, 120, degree_F
        outHumidity = 0, 100
        inHumidity = 0, 100
        windSpeed = 0, 120, mile_per_hour
        rain = 0, 10, inch

##############################################################################

#   This section controls the origin of derived values.

[StdWXCalculate]
  
    [[Calculations]]
        # How to calculate derived quantities.  Possible values are:
        #  hardware        - use the value provided by hardware
        #  software        - use the value calculated by weewx
        #  prefer_hardware - use value provide by hardware if available,
        #                      otherwise use value calculated by weewx
      
        pressure = prefer_hardware
        barometer = prefer_hardware
        altimeter = prefer_hardware
        windchill = prefer_hardware
        heatindex = prefer_hardware
        dewpoint = prefer_hardware
        inDewpoint = prefer_hardware
        rainRate = prefer_hardware

##############################################################################

#   For hardware that supports it, this section controls how often the
#   onboard clock gets updated.

[StdTimeSynch]
  
    # How often to check the weather station clock for drift (in seconds)
    clock_check = 14400
  
    # How much it can drift before we will correct it (in seconds)
    max_drift = 5

##############################################################################

#   This section is for configuring the archive service.

[StdArchive]
  
    # If the station hardware supports data logging then the archive interval
    # will be downloaded from the station. Otherwise, specify it (in seconds).
    archive_interval = 120
  
    # If possible, new archive records are downloaded from the station
    # hardware. If the hardware does not support this, then new archive
    # records will be generated in software.
    # Set the following to "software" to force software record generation.
    record_generation = hardware
  
    # Whether to include LOOP data in hi/low statistics
    loop_hilo = True
  
    # The data binding used to save archive records
    data_binding = wx_binding

##############################################################################

#   This section binds a data store to a database.

[DataBindings]
  
    [[wx_binding]]
        # The database must match one of the sections in [Databases].
        # This is likely to be the only option you would want to change.
        database = archive_sqlite
        # The name of the table within the database
        table_name = archive
        # The manager handles aggregation of data for historical summaries
        manager = weewx.wxmanager.WXDaySummaryManager
        # The schema defines the structure of the database.
        # It is *only* used when the database is created.
        schema = schemas.wview.schema

##############################################################################

#   This section defines various databases.

[Databases]
  
    # A SQLite database is simply a single file
    [[archive_sqlite]]
        database_name = weewx.sdb
        database_type = SQLite
  
    # MySQL
    [[archive_mysql]]
        database_name = weewx
        database_type = MySQL

##############################################################################

#   This section defines defaults for the different types of databases.

[DatabaseTypes]
  
    # Defaults for SQLite databases
    [[SQLite]]
        driver = weedb.sqlite
        # Directory in which the database files are located
        SQLITE_ROOT = /var/lib/weewx
  
    # Defaults for MySQL databases
    [[MySQL]]
        driver = weedb.mysql
        # The host where the database is located
        host = localhost
        # The user name for logging in to the host
        user = weewx
        # The password for the user name (quotes guard against parsing errors)
        password = weewx

##############################################################################

#   This section configures the internal weewx engine.

[Engine]
  
    [[Services]]
        # This section specifies the services that should be run. They are
        # grouped by type, and the order of services within each group
        # determines the order in which the services will be run.
        prep_services = weewx.engine.StdTimeSynch
        data_services = ,
        process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate, weewx.engine.StdQC, weewx.wxservices.StdWXCalculate, user.crt.CumulusRealTime
        archive_services = weewx.engine.StdArchive
        restful_services = weewx.restx.StdStationRegistry, weewx.restx.StdWunderground, weewx.restx.StdPWSweather, weewx.restx.StdCWOP, weewx.restx.StdWOW, weewx.restx.StdAWEKAS, user.windy.Windy
        report_services = weewx.engine.StdPrint, weewx.engine.StdReport

##############################################################################

# Options for extension 'crt'
[CumulusRealTime]
    filename = /var/www/html/weewx/realtime.txt
    unit_system = METRIC
---

syslog: (AWEKAS upload is turned off until precip issue is sorted out.)

Dec  9 18:55:05 raspberrypi weewx[28101]: restx: CWOP: Posting not enabled.
Dec  9 18:55:05 raspberrypi weewx[28101]: restx: WOW: Posting not enabled.
Dec  9 18:55:05 raspberrypi weewx[28101]: restx: AWEKAS: Data will be uploaded for user gszlag
Dec  9 18:55:05 raspberrypi weewx[28101]: restx: Windy: version is 0.4
Dec  9 18:55:05 raspberrypi weewx[28101]: restx: Windy: Data will be uploaded to https://stations.windy.com/pws/update
Dec  9 18:55:05 raspberrypi weewx[28101]: engine: Starting up weewx version 3.9.2
Dec  9 18:55:05 raspberrypi weewx[28101]: engine: Starting main packet loop.
Dec  9 18:55:05 raspberrypi weewx[28101]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 18:55:18 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:08 EST (1575935708) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:55:18 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:08 EST (1575935708) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:55:33 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:24 EST (1575935724) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:55:33 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:24 EST (1575935724) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:55:49 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:40 EST (1575935740) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:55:49 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:40 EST (1575935740) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:56:05 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:56 EST (1575935756) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:56:05 raspberrypi weewx[28101]: engine: 2019-12-09 18:55:56 EST (1575935756) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:56:22 raspberrypi weewx[28101]: engine: 2019-12-09 18:56:12 EST (1575935772) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:56:22 raspberrypi weewx[28101]: engine: 2019-12-09 18:56:12 EST (1575935772) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:56:37 raspberrypi weewx[28101]: engine: 2019-12-09 18:56:28 EST (1575935788) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:56:37 raspberrypi weewx[28101]: engine: 2019-12-09 18:56:28 EST (1575935788) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:56:37 raspberrypi weewx[28101]: manager: Added record 2019-12-09 18:56:00 EST (1575935760) to database 'weewx.sdb'
Dec  9 18:56:37 raspberrypi weewx[28101]: manager: Added record 2019-12-09 18:56:00 EST (1575935760) to daily summary in 'weewx.sdb'
Dec  9 18:56:38 raspberrypi weewx[28101]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 18:56:38 raspberrypi weewx[28101]: restx: Windy: Unexpected exception of type <type 'exceptions.TypeError'>
Dec  9 18:56:38 raspberrypi weewx[28101]: restx: Windy: Thread exiting. Reason: unsupported operand type(s) for *: 'float' and 'NoneType'
Dec  9 18:56:38 raspberrypi weewx[28101]: restx: AWEKAS: Failed to publish record 2019-12-09 18:56:00 EST (1575935760): server returned ' - Niederschlag administrativ gesperrt  - Transfer OK'
Dec  9 18:56:42 raspberrypi weewx[28101]: cheetahgenerator: Generated 8 files for report SeasonsReport in 4.04 seconds
Dec  9 18:56:43 raspberrypi weewx[28101]: imagegenerator: Generated 14 images for SeasonsReport in 1.40 seconds
Dec  9 18:56:43 raspberrypi weewx[28101]: copygenerator: copied 5 files to /var/www/html/weewx
Dec  9 18:56:53 raspberrypi weewx[28101]: engine: 2019-12-09 18:56:44 EST (1575935804) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:56:53 raspberrypi weewx[28101]: engine: 2019-12-09 18:56:44 EST (1575935804) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:57:07 raspberrypi weewx[28101]: ftpgenerator: ftp'd 28 files in 24.07 seconds
Dec  9 18:57:09 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:00 EST (1575935820) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:57:09 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:00 EST (1575935820) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:57:25 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:16 EST (1575935836) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:57:25 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:16 EST (1575935836) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:57:41 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:32 EST (1575935852) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:57:41 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:32 EST (1575935852) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:57:57 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:48 EST (1575935868) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:57:57 raspberrypi weewx[28101]: engine: 2019-12-09 18:57:48 EST (1575935868) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:58:13 raspberrypi weewx[28101]: engine: 2019-12-09 18:58:04 EST (1575935884) LOOP value 'pressure' 0.84514824225 outside limits (24.0, 34.5)
Dec  9 18:58:13 raspberrypi weewx[28101]: engine: 2019-12-09 18:58:04 EST (1575935884) LOOP value 'inTemp' 158.9 outside limits (10.0, 120.0)
Dec  9 18:58:28 raspberrypi systemd[1]: Stopping LSB: weewx weather system...
Dec  9 18:58:28 raspberrypi weewx[28101]: engine: Main loop exiting. Shutting engine down.
Dec  9 18:58:28 raspberrypi weewx[28101]: engine: Shutting down StdReport thread
Dec  9 18:58:29 raspberrypi weewx[28101]: engine: Terminating weewx version 3.9.2
Dec  9 18:58:34 raspberrypi weewx[28469]: Stopping weewx weather system: weewx..
Dec  9 18:58:34 raspberrypi systemd[1]: weewx.service: Succeeded.
Dec  9 18:58:34 raspberrypi systemd[1]: Stopped LSB: weewx weather system.
Dec  9 19:01:48 raspberrypi systemd[1]: Starting LSB: weewx weather system...
Dec  9 19:01:48 raspberrypi weewx[28857]: engine: Initializing weewx version 3.9.2
Dec  9 19:01:48 raspberrypi weewx[28857]: engine: Using Python 2.7.16 (default, Oct 10 2019, 22:02:15) #012[GCC 8.3.0]
Dec  9 19:01:48 raspberrypi weewx[28857]: engine: Platform Linux-4.19.75-v7+-armv7l-with-debian-10.2
Dec  9 19:01:48 raspberrypi weewx[28857]: engine: Locale is 'en_CA.UTF-8'
Dec  9 19:01:48 raspberrypi weewx[28857]: engine: pid file is /var/run/weewx.pid
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Using configuration file /etc/weewx/weewx.conf
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Loading station type AtmocomUDP (user.atmocomudp)
Dec  9 19:01:48 raspberrypi weewx[28846]: Starting weewx weather system: weewx.
Dec  9 19:01:48 raspberrypi systemd[1]: Started LSB: weewx weather system.
Dec  9 19:01:48 raspberrypi weewx[28861]: atmocomudp: MainThread: driver version is 1.20
Dec  9 19:01:48 raspberrypi weewx[28861]: atmocomudp: MainThread: sensor map is {'outTemp': 'tempf.ITEHKUMM2', 'outHumidity': 'humidity.ITEHKUMM2', 'UV': 'UV.ITEHKUMM2', 'radiation': 'solarradiation.ITEHKUMM2', 'rain': 'rainindelta.ITEHKUMM2', 'windDir': 'winddir.ITEHKUMM2', 'pressure': 'absbaromin.ITEHKUMM2', 'windSpeed': 'windspeedmph.ITEHKUMM2', 'inHumidity': 'indoorhumidity.ITEHKUMM2', 'inTemp': 'indoortempf.ITEHKUMM2', 'windGust': 'windgustmph.ITEHKUMM2'}
Dec  9 19:01:48 raspberrypi weewx[28861]: atmocomudp: MainThread: *** Sensor names per packet type
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: StdConvert target unit is 0x1
Dec  9 19:01:48 raspberrypi weewx[28861]: wxcalculate: The following values will be calculated: barometer=prefer_hardware, windchill=prefer_hardware, dewpoint=prefer_hardware, appTemp=prefer_hardware, rainRate=prefer_hardware, windrun=prefer_hardware, heatindex=prefer_hardware, maxSolarRad=prefer_hardware, humidex=prefer_hardware, pressure=prefer_hardware, inDewpoint=prefer_hardware, ET=prefer_hardware, altimeter=prefer_hardware, cloudbase=prefer_hardware
Dec  9 19:01:48 raspberrypi weewx[28861]: wxcalculate: The following algorithms will be used for calculations: altimeter=aaNOAA, maxSolarRad=RS
Dec  9 19:01:48 raspberrypi weewx[28861]: crt: service version is 0.18
Dec  9 19:01:48 raspberrypi weewx[28861]: crt: output goes to /var/www/html/weewx/realtime.txt
Dec  9 19:01:48 raspberrypi weewx[28861]: crt: 'None' values will be displayed as NULL
Dec  9 19:01:48 raspberrypi weewx[28861]: crt: units will be displayed as METRIC
Dec  9 19:01:48 raspberrypi weewx[28861]: crt: zambretti forecast: False
Dec  9 19:01:48 raspberrypi weewx[28861]: crt: binding is loop
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Archive will use data binding wx_binding
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Record generation will be attempted in 'hardware'
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Using archive interval of 120 seconds (specified in weewx configuration)
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Using binding 'wx_binding' to database 'weewx.sdb'
Dec  9 19:01:48 raspberrypi weewx[28861]: manager: Starting backfill of daily summaries
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: StationRegistry: Registration not requested.
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: Wunderground: Posting not enabled.
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: PWSweather: Posting not enabled.
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: CWOP: Posting not enabled.
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: WOW: Posting not enabled.
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: AWEKAS: Posting not enabled.
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: Windy: version is 0.4
Dec  9 19:01:48 raspberrypi weewx[28861]: restx: Windy: Data will be uploaded to https://stations.windy.com/pws/update
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Starting up weewx version 3.9.2
Dec  9 19:01:48 raspberrypi weewx[28861]: engine: Starting main packet loop.
Dec  9 19:01:48 raspberrypi weewx[28861]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 19:02:29 raspberrypi weewx[28861]: manager: Added record 2019-12-09 19:02:00 EST (1575936120) to database 'weewx.sdb'
Dec  9 19:02:29 raspberrypi weewx[28861]: manager: Added record 2019-12-09 19:02:00 EST (1575936120) to daily summary in 'weewx.sdb'
Dec  9 19:02:29 raspberrypi weewx[28861]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 19:02:30 raspberrypi weewx[28861]: restx: Windy: Published record 2019-12-09 19:02:00 EST (1575936120)
Dec  9 19:02:34 raspberrypi weewx[28861]: cheetahgenerator: Generated 8 files for report SeasonsReport in 4.20 seconds
Dec  9 19:02:36 raspberrypi rngd[362]: stats: bits received from HRNG source: 7220064
Dec  9 19:02:36 raspberrypi rngd[362]: stats: bits sent to kernel pool: 7168192
Dec  9 19:02:36 raspberrypi rngd[362]: stats: entropy added to kernel pool: 7168192
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS 140-2 successes: 361
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS 140-2 failures: 0
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS 140-2(2001-10-10) Monobit: 0
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS 140-2(2001-10-10) Poker: 0
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS 140-2(2001-10-10) Runs: 0
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS 140-2(2001-10-10) Long run: 0
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS 140-2(2001-10-10) Continuous run: 0
Dec  9 19:02:36 raspberrypi rngd[362]: stats: HRNG source speed: (min=438.599; avg=789.072; max=951.166)Kibits/s
Dec  9 19:02:36 raspberrypi rngd[362]: stats: FIPS tests speed: (min=6.295; avg=7.308; max=16.600)Mibits/s
Dec  9 19:02:36 raspberrypi rngd[362]: stats: Lowest ready-buffers level: 2
Dec  9 19:02:36 raspberrypi rngd[362]: stats: Entropy starvations: 0
Dec  9 19:02:36 raspberrypi rngd[362]: stats: Time spent starving for entropy: (min=0; avg=0.000; max=0)us
Dec  9 19:02:38 raspberrypi weewx[28861]: imagegenerator: Generated 28 images for SeasonsReport in 3.85 seconds
Dec  9 19:02:38 raspberrypi weewx[28861]: copygenerator: copied 5 files to /var/www/html/weewx
Dec  9 19:03:13 raspberrypi weewx[28861]: ftpgenerator: ftp'd 42 files in 35.58 seconds
Dec  9 19:04:37 raspberrypi weewx[28861]: manager: Added record 2019-12-09 19:04:00 EST (1575936240) to database 'weewx.sdb'
Dec  9 19:04:37 raspberrypi weewx[28861]: manager: Added record 2019-12-09 19:04:00 EST (1575936240) to daily summary in 'weewx.sdb'
Dec  9 19:04:37 raspberrypi weewx[28861]: atmocomudp: MainThread: Listening for UDP broadcasts to IP address 0.0.0.0 on port 12000, with timeout 90 and share_socket True...
Dec  9 19:04:37 raspberrypi weewx[28861]: restx: Windy: Published record 2019-12-09 19:04:00 EST (1575936240)
Dec  9 19:04:40 raspberrypi weewx[28861]: cheetahgenerator: Generated 8 files for report SeasonsReport in 2.52 seconds
Dec  9 19:04:41 raspberrypi weewx[28861]: imagegenerator: Generated 14 images for SeasonsReport in 1.34 seconds
Dec  9 19:04:41 raspberrypi weewx[28861]: copygenerator: copied 0 files to /var/www/html/weewx
Dec  9 19:05:01 raspberrypi weewx[28861]: ftpgenerator: ftp'd 23 files in 19.78 seconds
Dec  9 19:06:29 raspberrypi weewx[28861]: manager: Added record 2019-12-09 19:06:00 EST (1575936360) to database 'weewx.sdb'
Dec  9 19:06:29
---
---




Message has been deleted

Michi Kaa

unread,
Dec 11, 2019, 3:26:32 AM12/11/19
to weewx-user
Take your and the other Measurements (which, I suppose, are measure on another place nearby, where the real amount of rainfall may vary to your place more or less) yout measurements are off with ~factor 10.

so you could configure:

[StdCalibrate]

[[Corrections]]

rain
= rain / 10


If it is really off by a certain factor, you could do so.

To check that, place a bucket near the rain sensor, then compare your measure value to the value your sensor delivers. The amount of mm is the amount of water in liters divided by the area of the opening of the bucket in square meters. Or the amount of water in kilograms divided by the is the area of the opening of the bucket in m².

Glenn Szlagowski

unread,
Dec 11, 2019, 8:30:33 AM12/11/19
to weewx-user
Thanks Michi for your help.
Good tip for verifying the accuracy of a rain gauge. As a relatively new weewx user (several months), I was wondering how to implement a conversion factor in the config file.

My weather station uploads simultaneously to Ambient weather and Weather Underground. Those are the "actual numbers" that I mentioned in my post. Those numbers correspond to what I am seeing on my Ambient Ws-2000 display console.

However, i must be overlooking something regarding conversion factors.
For instance in the last 3 rain events here is what I got:

                Ambient       Weewx        conversion
Date        Rain mm*    Rain mm        factor

2019-12-09    25.9      352.8        13.62162162
2019-12-08    1.8        10.9             6.055555556
2019-12-04    2.0        12.2             6.1
                   
* as reported by  ambientweather.net

The conversion factors are all different so if I put in a conversion factor of 10 what would happen to the weewx reported numbers?

Thanks..Glenn
--

Michi Kaa

unread,
Dec 11, 2019, 11:28:48 AM12/11/19
to weewx-user
Ok, so all readings are from the same source. Howare you uploading to WU an AW? Using weewx?

Glenn Szlagowski

unread,
Dec 11, 2019, 2:32:07 PM12/11/19
to weewx-user


Uploading to WU and Ambient is done directly from the Ambient WS-2000 hardware console/display.

Uploading to Windy and AWEKAS is done through weewx. Weewx also uploads to some of my weather34 templates so if weewx is not reporting rain correctly, any template using weewx is also incorrect.

The only accurate template is Ken True's Cumulus template but that one is a special ATMOCOM version.

--

gjr80

unread,
Dec 11, 2019, 4:57:03 PM12/11/19
to weewx-user
A word of advice, be very, very careful if taking this approach to correct an apparently wrong observation. Whilst the resulting number may be correct for that particular observation such a correction may well result in errors being introduced elsewhere. If a driver is reporting an incorrectly converted or scaled observation the correct (and safe) solution is to fix the driver.

Gary

Michi Kaa

unread,
Dec 11, 2019, 11:34:40 PM12/11/19
to weewx-user
Given the clarification that all data is from the same source, my first approach is invalid. The next thing to try is to run the station from a fresh vanilla weewx installation without anything else and sie what happens. With a (second) raspberryPi (who doesn't have at least half a dozwn raspberries at home? ;) ) thats a matter of minutes (ok, an hour or so)

Michi Kaa

unread,
Dec 11, 2019, 11:52:04 PM12/11/19
to weewx-user
And: only th Pi should query the station in this test period, no other applicaton or service.

Glenn Szlagowski

unread,
Dec 13, 2019, 12:56:12 PM12/13/19
to weewx-user
.Already have done a fresh install on the rpi..a few times, and the result is the same - rain is way too high.. I do have my old test bed weewx  3.9.1 running on another machine under Ubuntu 18.04. I have disabled  ftp uploads to my web host and there is just the ATMOCOM driver running locally.
It will be difficult to get some liquid water to test as we are solidly in winter now.
Might get some snowmelt in the rain gauge today if I'm lucky.

Will report back.

--

Gábor Szabados

unread,
Dec 14, 2019, 10:08:02 AM12/14/19
to weewx-user
Hi,

Look at the days when you see rain. Does it distribute the same way on WeeWX and WU?

Let's say WU is correct and the ATMOCOM driver has an issue. So WeeWX receives a wrong value or amount of values.

I have seen before with interceptor, that it has received old packets for some reason. It caused the daily total rain value to jump let's say from 0.3 to 0.2 what shouldn't happen in reality. The Interceptor driver was written to handle it as a change of day or change of year, it wasn't expecting similar in any other case. The worst part was that when from 0.2 it received a 0.3 value, so it has triggered another +0.1 for WeeWX's daily count. It caused the WeeWX values to increase/change in a different way than the WU values.
WU showed the rain stopped at 10AM, meanwhile WeeWX showed rain all day long.

Solution in my case was to add an extra line to the interceptor to check time stamps of the packets and refuse the old ones to be processed.

Best Regards,

Gabor Szabados

Glenn Szlagowski

unread,
Dec 14, 2019, 11:21:38 AM12/14/19
to weewx-user
Hi Gabor

Thanks for your help.
I just came in from outside after tipping about a 1 ml of water into my rain gauge as an experiment.

I wanted to see what my test bed weewx would report. On the rpi it shows 6.1 mm and on my old linux notebook it showed the identical 6.1 mm rain...a fail once again..

Considering that my weather station is 3m above the ground, I taped a measuring cup onto a long pole and tipped the water in.

You mentioned that there was a possibility of an extended rain event that might alter the rain data so I checked out one of my weather templates.
Charting is done by WU:

Capture.PNG



Note on the chart that rain is 1 ml and rain rate is 6.1 mm.
Could it be that weewx is reporting rain rate instead of daily rain?

weewx capture.PNG

We can  assume WU is correct because it corresponds to what my weather station display console is showing.

Here is the ATMOCOM driver in weewx_conf:

AtmocomUDP]
    driver = user.atmocomudp
    udp_address = 0.0.0.0
    udp_port = 12000
    udp_timeout = 90
    share_socket = True
    station_units = weewx.US
    log_raw_packets = False
   
    [[sensor_map]]
        outTemp = tempf.ITEHKUMM2
        outHumidity = humidity.ITEHKUMM2
        UV = UV.ITEHKUMM2
        radiation = solarradiation.ITEHKUMM2
        rain = rainindelta.ITEHKUMM2
        windDir = winddir.ITEHKUMM2
        pressure = absbaromin.ITEHKUMM2
        windSpeed = windspeedmph.ITEHKUMM2
        inHumidity = indoorhumidity.ITEHKUMM2
        inTemp = indoortempf.ITEHKUMM2
        windGust = windgustmph.ITEHKUMM2

Unfortunately when I try to enable log raw packets weewx crashes so I can't determine the correct header for daily rain or total rain.

---

gjr80

unread,
Dec 14, 2019, 3:44:17 PM12/14/19
to weewx-user
Hi,

I think you are going to need to see those raw packets to fix this. I just looked at the driver code and the log raw packets code is pretty basic. When you set log_raw_packets = True what do you see in the log? This part should be easy to fix.

When posting the log make sure you include from WeeWX startup through until the error hits.

Gary

Glenn Szlagowski

unread,
Dec 14, 2019, 6:15:18 PM12/14/19
to weewx-user
Hi Gary,

Thanks for your help.

Getting the log entries was hard fought as the usual sudo tail -f /var/log/syslog was stopped dead in its tracks.

I managed to get the following from Ubuntu:

6:09:18 glenn weewx[1134]: engine: Main loop exiting. Shutting engine down.
Dec 14 16:09:18 glenn weewx[1134]: engine: Caught unrecoverable exception in engine:
Dec 14 16:09:18 glenn weewx[1134]:     ****  not all arguments converted during string formatting
Dec 14 16:09:18 glenn weewx[1134]:     ****  Traceback (most recent call last):
Dec 14 16:09:18 glenn weewx[1134]:     ****    File 
"/usr/share/weewx/weewx/engine.py", line 894, in main
Dec 14 16:09:18 glenn weewx[1134]:     ****      engine.run()
Dec 14 16:09:18 glenn weewx[1134]:     ****    File 
"/usr/share/weewx/weewx/engine.py", line 188, in run
Dec 14 16:09:18 glenn weewx[1134]:     ****      for packet in self.console.genLoopPackets():
Dec 14 16:09:18 glenn weewx[1134]:     ****    File 
"/usr/share/weewx/user/atmocomudp.py", line 283, in genLoopPackets
Dec 14 16:09:18 glenn weewx[1134]:     ****      loginf('raw packet: %s' % m)
Dec 14 16:09:18 glenn weewx[1134]:     ****  TypeError: not all arguments converted during string formatting
Dec 14 16:09:18 glenn weewx[1134]:     ****  Exiting.

---

Glenn Szlagowski

unread,
Dec 14, 2019, 6:37:39 PM12/14/19
to weewx-user
I ran the ATMOCOM data logger/parser and this is what it is seeing.(see below)

This should be in WU format and it looks like it is in all US units.
The 0.04 inches of rain is about 1 mm which is what I dumped into the rain gauge this morning.
I have edited things for readability.

('192.168.1.8', 12000) b'passkey=xxxxxx&
rev=0x2E708&
data=/weatherstation/updateweatherstation.php?ID=ITEHKUMM2&
PASSWORD=xxxxxx&
indoortempf=72.1&
tempf=34.2&
dewptf=33.8&
windchillf=34.2&
indoorhumidity=49&
humidity=99&
windspeedmph=0.2&
windgustmph=1.1&
winddir=56&
absbaromin=28.92&
baromin=29.58&
rainin=0.00&
dailyrainin=0.04&
weeklyrainin=1.24&
monthlyrainin=1.32&
yearlyrainin=38.87&
solarradiation=73.65&
UV=0&
dateutc=2019-12-14%2016:45:2&
softwaretype=AMBWeatherV4.0.2&
action=updateraw&
realtime=1&
rtfreq=5 '

On Saturday, December 14, 2019 at 3:44:17 PM UTC-5, gjr80 wrote:

gjr80

unread,
Dec 14, 2019, 7:17:57 PM12/14/19
to weewx-user
Glenn,

Ok, I see the raw packet issue (should have seen it before actually). Are you up for making a slight change to atmocomudp.py? If so first make a backup copy of /usr/share/weewx/user/atmocomudp.py then open /usr/share/weewx/user/atmocomudp.py in a text editor and change line 283 from:

loginf('raw packet: %s' % m)

to

loginf('raw packet: %s' % (m,))

Save atmocomudp.py, set log_raw_packets = True in weeewx.conf and restart WeeWX. Check your log.

Gary


Glenn Szlagowski

unread,
Dec 14, 2019, 10:43:39 PM12/14/19
to weewx-user
Success!
Thanks for your help-greatly appreciated!

There are two types of packets..looks like one goes to ambient weather and the other one goes to WU. Interestingly only every fourth packet goes to ambient.

Note that the ambient packet contains extra fields.

Here are some samples (sans passwords):

Dec 14 21:54:54 glenn weewx[5373]: atmocomudp: MainThread: raw packet: 
('passkey=xxxxxx&rev=0x2E708&data=/weatherstation/updateweatherstation.php?ID=ITEHKUMM2&PASSWORD=xxxxxx&indoortempf=70.5&tempf=32.0&dewptf=29.7&windchillf=32.0&indoorhumidity=50&humidity=91&windspeedmph=1.3&windgustmph=2.2&winddir=210&absbaromin=28.84&baromin=29.50&rainin=0.00&dailyrainin=0.04&weeklyrainin=1.24&monthlyrainin=1.32&yearlyrainin=38.87&solarradiation=0.00&UV=0&dateutc=2019-12-15%202:54:44&softwaretype=AMBWeatherV4.0.2&action=updateraw&realtime=1&rtfreq=5 
', ('192.168.1.8', 12000))

Dec 14 21:55:33 glenn weewx[5373]: atmocomudp: MainThread: raw packet: 
('passkey=xxxxxx&rev=0x2E708&data=/endpoint?stationtype=AMBWeatherV4.0.2&PASSKEY=xxxxxx&dateutc=2019-12-15+02:55:32&winddir=330&windspeedmph=1.3&windgustmph=2.2&maxdailygust=11.4&tempf=32.0&hourlyrainin=0.00&eventrainin=0.04&dailyrainin=0.04&weeklyrainin=1.24&monthlyrainin=1.32&yearlyrainin=38.87&baromrelin=29.51&baromabsin=28.85&humidity=92&tempinf=70.5&humidityin=50&uv=0&solarradiation=0.00 
', ('192.168.1.8', 12000))

If I change the ATMOCOM sensor mapping to dailyrainin, would that work?

---

Gábor Szabados

unread,
Dec 15, 2019, 1:00:42 AM12/15/19
to weewx...@googlegroups.com
Hi Glenn,

I would uses the dailyrainin. I had an issue once during a storm, when a power outage occurred, that the internal unit forgot the yearlyrainin value and set it back not to 0 but some earlier state of the week/month. I could work, but if the two packets has different values that can cause different issues, similar what I have explained before. 

Probably your best solution is to turn off one of your services in the weather station. (WU or Ambient) Do a run for a short time and see what happens then when you do the same test.

Or you can send a mail to the guy who developed ATMOCOM, asking what is the solution for this problem. It really should interpret only one of the packets and not both. Probaly WU is the better choice.

Best Regards, 

Gabor Szabados 

--
You received this message because you are subscribed to a topic in the Google Groups "weewx-user" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/weewx-user/3f3zakgAEOc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/f9f3fc89-4b12-44fb-aff0-b34f1bb48f88%40googlegroups.com.

Gábor Szabados

unread,
Dec 15, 2019, 1:42:57 AM12/15/19
to weewx...@googlegroups.com
Glenn,

It should be dailyrainindelta. 

Best Regards, 

Gabor

gjr80

unread,
Dec 15, 2019, 1:44:29 AM12/15/19
to weewx-user
Glenn,

I've spent some time working through the atmocom driver and I think I have a basic understanding of it now. You are correct in that you need to map run to dailyrainin (or one of the other cumulative rain fields). 

Your sensor map is using fields from the WU posts so you can ignore the Ambient posts (whether you continue to allow your station to post to Ambient is up to you, in your current config WeeWX will do nothing with the Ambient data). As far as WU is concerned rainin is the rainfall occurring in the last hour, you could consider this to be the rain rate. When mapping rainin to WeeWX field rain the atmocom driver attempts to take the delta between successive rainin values to determine the rainfall in the period. This works fine for a source data field that holds the cumulative rain such as a daily or yearly rain total but the problem with using rainin as a source is that since it is rainfall over the last hour you have rainfall dropping off because it fell over an hour ago and rainfall being added that just fell in the last period. It is impossible to tell the rainfall in the last period without some complexing processing. If you did use rainin everything would be fine while there is no rain but once it does start raining you will see your rain data going all over the place, certainly not something that can be fixed by a simple scaling factor (as you found out).

Try changing you sensor map, restart WeeWX and then either manually stimulate your rain gauge or wait for some rain.

One you get some consistent/explainable rain data you may well still have a units problem (reading the driver code it is not very units aware) but hopefully this will only be a display issue rather than an underlying data issue.

Gary

Glenn Szlagowski

unread,
Dec 15, 2019, 2:04:55 PM12/15/19
to weewx-user
Thanks Gabor for your help on this.

The ATMOCOM driver allows you to use WU sensor mapping or the Ambient mapping if you have a Fine Offset or clone weather station ( but not both) so I should be OK.

dailyrainin created a 2 separate hourly unrealistic high rainfall> 200mm  just before midnight last night so something went awry there. My other machine recorded no such rain event. I will try the dailyrainindelta as you have suggested.

The ATMOCOM hardware device inventor supports a custom weather34 weather template that works pretty good but he does not specialize in anything related to weewx.

I may have to contact the developer of the ATMOCOM weewx udp driver (he's on gitHub) if we can't figure things out here.

---

--
To unsubscribe from this group and all its topics, send an email to weewx...@googlegroups.com.

Glenn Szlagowski

unread,
Dec 15, 2019, 2:23:40 PM12/15/19
to weewx-user
Thanks for spending all this time in looking at this issue.

As mentioned to Gabor, dailyrainin may have created a phantom rain event so I am trying dailyrainindelta.
This looks promising as I did another experiment and dumped water in the rain gauge to simulate a rain event. and weewx reported 1 mm (Rain Today)

I'll try doing another simulated rainfall except it is -6C at the moment!

--

gjr80

unread,
Dec 15, 2019, 3:36:19 PM12/15/19
to weewx-user
I should have clarified, Gabor is exactly right, you originally had the following in your sensor map:

rain = rainindelta.ITEHKUMM2

this uses a synthetic rainindelta field created by the driver based on the WU rainin. You need use a similar synthetic field based on dailyrainin (or some other cumulative rain field). Such a map would be:

rain = dailyrainindelta.ITEHKUMM2

Gary

Arthur Emerson

unread,
Dec 18, 2019, 9:11:52 AM12/18/19
to weewx-user
FYI, there is a detailed explanation of the various rain measurements and why the default sensor map value was chosen in the weewx-atmocom-udp station driver's README file:


Rain Delta Calculations:

   
Weewx likes its "rain" value passed from station drivers to be the amount
    of rain counted since the
last LOOP packet was received.  

   
Weather Underground (and clones) receives one or more rainfall totals,
    based on
fixed time periods:

       rainin
       dailyrainin
       weeklyrainin
       monthlyrainin
       yearlyrainin

   
While one would hope that "rainin" would be the total since the last packet
   
(like weewx needs), we would not be so lucky.  There is actually conflicting
   information on the web
, with some saying that "rainin" is the rain total
   
for the past hour and others saying that it is rain total for the last 60
   minutes
.  Yes, there are 60 minutes in an hour, but saying it is the last
   
60 minutes implies a sliding time window...and not from when the big hand
   
is on the 12 until it returns to the 12.  If that's not confusing enough,
   the Weather Underground protocol also allows for specifying observation
   time as "now" for stations without a clock.  I'
m going to stop here, and
   take some aspirin to numb the headache I
'm getting just thinking about
   how the station knows when a day/month/year starts with no clock.

   To give a no-code option for everyone, I have parsed every single rain
   figure into separate delta variables in the returned LOOP packet:

       rainindelta
       dailyrainindelta
       weeklyrainindelta
       monthlyrainindelta
       yearlyrainindelta

   The default sensor_map entry is created as follows:

      rain = rainindelta.WUStationID

   Because of the sliding time window ambiguity with rainin, I strongly
   suggest editing weewx.conf and mapping rain to yearlyrainindelta or
   whatever is the longest time period observation your station is sending.
   I would really, really, really like to set the default as yearlyrainindelta,
   but fear that there is a station out there without a clock that does not
   send anything but rainin...and hopefully not as a sliding 60-minute
   time window!



Reply all
Reply to author
Forward
0 new messages