In order to test if the issue is with the GW1000 driver or the weewx
configuration, I modified the gw1000.py driver to internally create a
windGustDir key/value pair each time a windDir key/value appears in a loop
(copying the windDir value).
>From the log below, this moded driver results in the windGustDir now
appearing in the mapped data. But the windGust and windGustDir are still
not being stored in the database records.
Am I correct in assuming this means the issue lies in the weewx.conf
configurations, which somehow I must have broken in a such a way that wind
gust values are no longer recorded, even when both Speed and Dir are
present in LOOP packets. I'm attaching my full weewx.conf file.
Nov 23 19:15:42 raspi weewx[7769] INFO user.gw1000: GatewayService:
Processing loop packet: 2022-11-23 19:15:42 CET (1669227342) {'dateTime':
'1669227342', 'extraBatteryStatus0': '1', 'extraHumid0': '41.0',
'extraTemp0': '25.8', 'usUnits': '16'}
Nov 23 19:15:42 raspi weewx[7769] INFO user.gw1000: GatewayService:
Received queued *sensor data*: 2022-11-23 19:15:27 CET (1669227327)
{'absbarometer': '968.0', 'annual_reset': '0', 'datetime': '1669227327',
'day_reset': '0', 'daymaxwind': '10.7', '*gustspeed*': '5.1', 'inhumid':
'81', 'intemp': '10.6', 'light': '0.0', 'outhumid': '85', 'outtemp':
'10.0', 'rain_source': '1', 'relbarometer': '968.0', 'soilmoist1': '27',
'soilmoist2': '50', 't_rainday': '0.0', 't_rainevent': '0.0', 't_rainhour':
'10.0', 't_rainmonth': '7.5', 't_rainrate': '0.0', 't_rainweek': '5.4',
't_rainyear': '7.5', 'uv': '0.0', 'uvi': '0', 'week_reset': '0',
'wh32_batt': '0', 'wh32_sig': '4', 'wh40_batt': '1.45', 'wh40_sig': '4',
'wh51_ch1_batt': '1.6', 'wh51_ch1_sig': '4', 'wh51_ch2_batt': '1.5',
'wh51_ch2_sig': '4', 'wh68_batt': '1.84', 'wh68_sig': '4', '*winddir*':
'284', '*windspeed*': '2.9'}
Nov 23 19:15:42 raspi weewx[7769] DEBUG weewx.manager: Daily summary
version is 4.0
Nov 23 19:15:42 raspi weewx[7769] INFO user.gw1000: GatewayService: No
queued items to process
Nov 23 19:15:42 raspi weewx[7769] INFO user.gw1000: GatewayService: *Mapped
GW2000 data*: {'batteryStatus3': '1.6', 'batteryStatus4': '1.5',
'daymaxwind': '10.7', 'dayRain': '0.0', 'extraHumid3': '81', 'extraTemp3':
'10.6', 'luminosity': '0.0', 'monthRain': '7.5', 'outHumidity': '85',
'outTemp': '10.0', 'outTempBatteryStatus': '0', 'pressure': '968.0',
'rain': '0.0', 'rainBatteryStatus': '1.45', 'rainRate': '0.0',
'relbarometer': '968.0', 'signal1': '4', 'signal2': '4', 'signal3': '4',
'signal4': '4', 'signal5': '4', 'soilMoist1': '27', 'soilMoist2': '50',
'stormRain': '0.0', 'usUnits': '17', 'UV': '0', 'uvradiation': '0.0',
'weekRain': '5.4', 'windBatteryStatus': '1.84', '*windDir*': '284', '
*windGust*': '5.1', '*windGustDir*': '284', 'windSpeed': '2.9', 'yearRain':
'7.5'}
Nov 23 19:15:42 raspi weewx[7769] INFO user.gw1000: GatewayService: Mapped
data will be used to augment loop packet(2022-11-23 19:15:42 CET
(1669227342))
Nov 23 19:15:42 raspi weewx[7769] INFO user.gw1000: GatewayService: *Converted
GW2000 data*: {'batteryStatus3': '1.6', 'batteryStatus4': '1.5',
'daymaxwind': '10.7', 'dayRain': '0.0', 'extraHumid3': '81', 'extraTemp3':
'10.6', 'luminosity': '0.0', 'monthRain': '0.75', 'outHumidity': '85',
'outTemp': '10.0', 'outTempBatteryStatus': '0', 'pressure': '968.0',
'rain': '0.0', 'rainBatteryStatus': '1.45', 'rainRate': '0.0',
'relbarometer': '968.0', 'signal1': '4', 'signal2': '4', 'signal3': '4',
'signal4': '4', 'signal5': '4', 'soilMoist1': '27', 'soilMoist2': '50',
'stormRain': '0.0', 'UV': '0', 'uvradiation': '0.0', 'weekRain': '5.4',
'windBatteryStatus': '1.84', '*windDir*': '284', '*windGust*': '18.36', '
*windGustDir*': '284', 'windSpeed': '10.44', 'yearRain': '0.75'}
Nov 23 19:15:42 raspi weewx[7769] INFO user.gw1000: *GatewayService:
Augmented packet*: 2022-11-23 19:15:42 CET (1669227342) {'batteryStatus3':
'1.6', 'batteryStatus4': '1.5', 'dateTime': '1669227342', 'daymaxwind':
'10.7', 'dayRain': '0.0', 'extraBatteryStatus0': '1', 'extraHumid0':
'41.0', 'extraHumid3': '81', 'extraTemp0': '25.8', 'extraTemp3': '10.6',
'luminosity': '0.0', 'monthRain': '0.75', 'outHumidity': '85', 'outTemp':
'10.0', 'outTempBatteryStatus': '0', 'pressure': '968.0', 'rain': '0.0',
'rainBatteryStatus': '1.45', 'rainRate': '0.0', 'relbarometer': '968.0',
'signal1': '4', 'signal2': '4', 'signal3': '4', 'signal4': '4', 'signal5':
'4', 'soilMoist1': '27', 'soilMoist2': '50', 'stormRain': '0.0', 'usUnits':
'16', 'UV': '0', 'uvradiation': '0.0', 'weekRain': '5.4',
'windBatteryStatus': '1.84', '*windDir*': '284', '*windGust*': '18.36', '
*windGustDir*': '284', 'windSpeed': '10.44', 'yearRain': '0.75'}
Nov 23 19:15:43 raspi weewx[7769] DEBUG user.gw1000: Next update in 15
seconds
--
You received this message because you are subscribed to the Google Groups
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/weewx-user/f45a0e44-6cd3-47b1-8a97-51e01ccd887en%40googlegroups.com.
# WEEWX CONFIGURATION FILE
#
# Copyright (c) 2009-2022 Tom Keffer <[email protected]>
# 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 = 2
# Root directory of the weewx data file hierarchy for this station
WEEWX_ROOT = /
# Whether to log successful operations. May get overridden below.
log_success = True
# Whether to log unsuccessful operations. May get overridden below.
log_failure = True
# How long to wait before timing out a socket (FTP, HTTP) connection
socket_timeout = 20
#Normally, if the hardware driver fails to load, WeeWX will exit. The
assumption is that there is a configuration problem and so retries are useless.
However, in some cases, drivers can fail to load for intermittent reasons, such
as a network failure. In these cases, it may be useful to have WeeWX do a
retry. Setting this option to 1 will cause WeeWX to keep retrying indefinitely.
loop_on_init = 1
# Do not modify this. It is used when installing and updating weewx.
version = 4.9.1
##############################################################################
# This section is for information about the station.
[Station]
# Description of the station location
location = "Rougiers, France"
# Latitude in decimal degrees. Negative for southern hemisphere
latitude = 43.3923
# Longitude in decimal degrees. Negative for western hemisphere.
longitude = 5.8509
# Altitude of the station, with the unit it is in. This is used only
# if the hardware cannot supply a value.
altitude = 350, meter
# Set to type of station hardware. There must be a corresponding stanza
# in this file, which includes a value for the 'driver' option.
station_type = WMR100
# If you have a website, you may specify an URL. This is required if you
# intend to register your station.
#station_url = http://www.example.com
# 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 = 0
##############################################################################
[WMR100]
# This section is for the Oregon Scientific WMR100
# The station model, e.g., WMR100, WMR100N, WMRS200
model = WMR100
# How long a wind record can be used to calculate wind chill (in seconds)
stale_wind = 360
# The driver to use:
driver = weewx.drivers.wmr100
[[sensor_map]]
#extraTemp1 = temperature_5
pressure2 = pressure
windSpeed2 = wind_speed
windDir2 = wind_dir
windGust2 = wind_gust
windBatteryStatus2 = battery_status_wind
extraTemp0 = temperature_0
extraTemp1 = temperature_1
extraTemp2 = temperature_2
inTemp = temperature_3
extraTemp4 = temperature_4
extraTemp5 = temperature_5
extraTemp6 = temperature_6
extraTemp7 = temperature_7
extraTemp8 = temperature_8
extraHumid0 = humidity_0
extraHumid1 = humidity_1
extraHumid2 = humidity_2
inHumidity = humidity_3
extraHumid4 = humidity_4
extraHumid5 = humidity_5
extraHumid6 = humidity_6
extraHumid7 = humidity_7
extraHumid8 = humidity_8
extraBatteryStatus0 = battery_status_0
extraBatteryStatus1 = battery_status_1
extraBatteryStatus2 = battery_status_2
inTempBatteryStatus = battery_status_3
extraBatteryStatus4 = battery_status_4
extraBatteryStatus5 = battery_status_5
extraBatteryStatus6 = battery_status_6
extraBatteryStatus7 = battery_status_7
extraBatteryStatus8 = battery_status_8
rain2 = rain
rainTotal2 = rain_total
rainRate2 = rain_rate
hourRain2 = rain_hour
rain242 = rain_24
rainBatteryStatus2 = battery_status_rain
UV2 = uv
uvBatteryStatus2 = battery_status_uv
##############################################################################
# This section is for uploading data to Internet sites
[StdRESTful]
# Uncomment and change to override logging for uploading services.
log_success = False
log_failure = False
[[StationRegistry]]
# To register this weather station with weewx, set this to true,
# then fill out option 'station_url', located in the [Station] section
above.
register_this_station = false
[[AWEKAS]]
# This section is for configuring posts to AWEKAS.
# If you wish to post to AWEKAS, set the option 'enable' to true, then
specify a username
# and password. To guard against parsing errors, put the password in
quotes.
enable = false
username = replace_me
password = replace_me
[[CWOP]]
# This section is for configuring posts to CWOP.
# If you wish to post to CWOP, set the option 'enable' to true,
# then specify the station ID (e.g., CW1234).
enable = false
station = replace_me
# If this is an APRS (radio amateur) station, specify the
# passcode (e.g., 12345). Otherwise, ignore.
passcode = replace_me
[[PWSweather]]
# This section is for configuring posts to PWSweather.com.
# If you wish to post to PWSweather.com, set the option 'enable' to
true, then 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 post to WOW, set the option 'enable' to true, then
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 post to the Weather Underground, set the option
'enable' to true, then
# specify a station (e.g., 'KORHOODR3') and password. To guard against
parsing errors, put
# the password in quotes.
enable = false
station = IROUGIER3
password = 8874oqfj
# If you plan on using wunderfixer, set the following
# to your API key:
api_key = f1a27f0554aa4fbea27f0554aaefbe23
# 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
##############################################################################
# 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
# Uncomment and change to override logging for reports
log_success = True
log_failure = True
# The database binding indicates which data should be used in reports.
data_binding = wx_binding
# 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
#HTML_ROOT = /var/www/html/weewx/
[[NeoReport]]
# files are placed in a dedicated subdirectory.
skin = neowx-material
enable = false
HTML_ROOT = /var/www/html/weewx/neo
[[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
[[forecast]]
HTML_ROOT = /var/www/html/weewx/forecast
skin = forecast
enable = false
[[StandardReport]]
# This is the old "Standard" skin. By default, it is not enabled.
skin = Standard
enable = false
[[HTMLPages]]
HTML_ROOT = /var/www/html/weewx/Bootstrap
skin = Bootstrap
enable = false
#[[BigImages]]
# HTML_ROOT = /var/www/html/weewx/Bootstrap/big_images
# skin = Images
# [[[ImageGenerator]]]
# bottom_label_font_size = 14
# axis_label_font_size = 14
# image_width = 900
# top_label_font_size = 18
# image_height = 600
# anti_alias = 2
# unit_label_font_size = 18
#[[SmallImages]]
# HTML_ROOT = /var/www/html/weewx/Bootstrap/images
# skin = Images
[[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 = false
user = replace_me
password = replace_me
server = replace_me # The ftp server name, e.g, www.myserver.org
path = replace_me # The destination directory, e.g., /weather
# Set to True for an FTP over TLS (FTPS) connection. Not all servers
# support this.
secure_ftp = False
# 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
# Options in the [[Defaults]] section below will apply to all reports.
# What follows are a few of the more popular options you may want to
# uncomment, then change.
[[Defaults]]
# Which language to use for all reports. Not all skins support all
languages.
# You can override this for individual reports.
lang = fr
# Which unit system to use for all reports. Choices are 'us', 'metric',
or 'metricwx'.
# You can override this for individual reports.
unit_system = us
[[[Units]]]
# Option "unit_system" above sets the general unit system, but
overriding specific unit
# groups is possible. These are popular choices. Uncomment and set
as appropriate.
# 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_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_temperature = degree_C # Options are
'degree_C', 'degree_F', or 'degree_K'
group_speed = km_per_hour # Options are
'mile_per_hour', 'km_per_hour', 'knot', or 'meter_per_second'
group_speed2 = km_per_hour2 # Options are
'mile_per_hour2', 'km_per_hour2', 'knot2', or 'meter_per_second2'
# The following line is used to keep the above lines indented
properly.
# It can be ignored.
unused = unused
# 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 = %.1f
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 = %.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"
# Uncommenting the following section frequently results in more
# attractive formatting of times and dates, but may not work in
# your locale.
[[[[TimeFormats]]]]
day = %H:%M
week = %H:%M on %A
month = %d-%b-%Y %H:%M
year = %d-%b-%Y %H:%M
rainyear = %d-%b-%Y %H:%M
current = %d-%b-%Y %H:%M
ephem_day = %H:%M
ephem_year = %d-%b-%Y %H:%M
# 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.
#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
# The following line is used to keep the above lines indented
properly.
# It can be ignored.
unused = unused
[[[Labels]]]
# Users frequently change the labels for these observation types
meter = " mètre", " mètres" # You may prefer "metre".
day = " jour", " jours"
hour = " heure", " heures"
minute = " minute", " minutes"
second = " seconde", " secondes"
NONE = ""
# 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]]]]
# inHumidity = Inside Humidity
# inTemp = Inside Temperature
# outHumidity = Outside Humidity
# outTemp = Outside Temperature
# extraTemp1 = Temperature1
# extraTemp2 = Temperature2
# extraTemp3 = Temperature3
barometer = Baromètre
dewpoint = Point de rosée
ET = ET
#heatindex = Heat Index
inHumidity = Hygrométrie entrée
inTemp = Température entrée
outHumidity = Hygrométrie potager
outTemp = Température potager
radiation = Luminosité
rain = Pluie
rainRate = Taux pluie
#UV = UV Index
windDir = Direction du vent
windGust = Vitesse rafales
windGustDir = Direction rafales
windSpeed = Vitesse du vent
windchill = Facteur vent
windgustvec = Vecteur rafales
windvec = Vecteur vent
extraTemp0 = Température Console
extraTemp1 = Température Chambre
extraHumid1 = Hygrométrie Chambre
extraTemp2 = Température Linky
extraHumid2 = Hygrométrie Linky
extraTemp3 = Temperature Serre
extraHumid3 = Hygrométrie Serre
# Sensor status indicators
#rxCheckPercent = Qualité signal
#txBatteryStatus = Transmitter Battery
#windBatteryStatus = Wind Battery
#rainBatteryStatus = Rain Battery
#outTempBatteryStatus = Out Temp Battery
#inTempBatteryStatus = In Temp Battery
#consBatteryVoltage = Console Battery
#heatingVoltage = Heating Battery
#supplyVoltage = Supply Voltage
#referenceVoltage = Reference Voltage
# The following line is used to keep the above lines indented
properly.
# It can be ignored.
unused = unused
[[[[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, cooling, and growing 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
# Base temperature for growing days, with unit:
growing_base = 50, 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
[[[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
radiation = luminosity/126.7 if luminosity is not None else None
#windGustDir = windDir if windDir is not None else None
##############################################################################
# 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]]
pressure = 24, 34.5, inHg
outHumidity = 0, 100
inHumidity = 0, 100
barometer = 23, 35, inHg
outTemp = -30, 60, degree_C
inTemp = 0, 50, degree_C
windSpeed = 0, 130, km_per_hour
windGust = 0, 200, km_per_hour
rain = 0, 1000, mm
##############################################################################
# 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
altimeter = prefer_hardware
appTemp = prefer_hardware
barometer = prefer_hardware
cloudbase = prefer_hardware
dewpoint = prefer_hardware
ET = prefer_hardware
heatindex = prefer_hardware
humidex = prefer_hardware
inDewpoint = prefer_hardware
maxSolarRad = prefer_hardware
rainRate = prefer_hardware
windchill = prefer_hardware
windrun = prefer_hardware
#windGustDir = software
##############################################################################
# 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 = 300
# 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 = software
# Whether to include LOOP data in hi/low statistics
loop_hilo = False
# Uncomment and change to override logging for archive operations
log_success = True
log_failure = 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.manager.DaySummaryManager
# The schema defines the structure of the database.
# It is *only* used when the database is created.
schema = schemas.wview_extended.schema
[[forecast_binding]]
manager = weewx.manager.Manager
database = forecast_sqlite
table_name = archive
schema = user.forecast.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
[[forecast_sqlite]]
database_name = forecast.sdb
database_type = SQLite
[[forecast_mysql]]
database_type = MySql
database_name = forecast
##############################################################################
# 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 (use quotes to guard against parsing errors)
password = weewx
##############################################################################
# This section configures the internal weewx engine.
[Engine]
# The following section specifies which services should be run and in what
order.
[[Services]]
prep_services = weewx.engine.StdTimeSynch
data_services = user.gw1000.GatewayService
process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate,
weewx.engine.StdQC, weewx.wxservices.StdWXCalculate
xtype_services = weewx.wxxtypes.StdWXXTypes,
weewx.wxxtypes.StdPressureCooker, weewx.wxxtypes.StdRainRater,
weewx.wxxtypes.StdDelta
archive_services = weewx.engine.StdArchive, user.forecast.OWMForecast
#restful_services = weewx.restx.StdStationRegistry,
weewx.restx.StdWunderground, weewx.restx.StdPWSweather, weewx.restx.StdCWOP,
weewx.restx.StdWOW, weewx.restx.StdAWEKAS
restful_services = ,
report_services = weewx.engine.StdPrint, weewx.engine.StdReport
# Options for extension 'forecast'
[Forecast]
data_binding = forecast_binding
# How often to calculate/download the forecast, in seconds
interval = 1800
#interval = 60
# How long to keep old forecasts, in seconds. use None to keep forever.
max_age = 604800
[[XTide]]
location = MARSEILLE
[[Zambretti]]
hemisphere = NORTH
[[WU]]
#api_key = b63d78150841473ebd78150841a73ee6
[[NWS]]
lid = "INSERT_LOCATION_ID_HERE (e.g., MAZ014)"
foid = "INSERT_FORECAST_OFFICE_ID_HERE (e.g., BOX)"
[[OWM]]
api_key = 70173d210d6e03aac730b95a45237163
# There are two types of forecast available, 5-day/3-hour and
# 16-day/daily. Only the 5-day/3-hour forecasts are supported.
forecast_type = 5day3hour
# How often to download the forecast, in seconds
interval = 1800
#interval = 60
[[WWO]]
api_key = INSERT_WWO_API_KEY_HERE
[[UKMO]]
api_key = INSERT_UKMO_API_KEY_HERE
location = INSERT_UK_LOCATION_HERE
[[Aeris]]
client_secret = INSERT_AERIS_CLIENT_SECRET_HERE
client_id = INSERT_AERIS_CLIENT_ID_HERE
[[DS]]
api_key = INSERT_DS_API_KEY_HERE
[GW1000]
# This section is for the Ecowitt Gateway driver.
# How often to poll the API, default is every 20 seconds:
poll_interval = 15
# The driver to use:
driver = user.gw1000
ip_address = 192.168.10.31
max_tries = 2
retry_wait = 5
wh32 = True
log_unknown_fields = True
debug_rain = False
debug_wind = True
debug_sensors = True
debug_loop = True
max_age = 60
lost_contact_log_period = 3600
[[field_map_extensions]]
extraHumid3 = inhumid
extraTemp3 = intemp
outTempBatteryStatus = wh32_batt
signal5 = wh32_sig
#radiation = light
windBatteryStatus = wh68_batt
signal1 = wh68_sig
rainBatteryStatus = wh40_batt
signal2 = wh40_sig
batteryStatus3 = wh51_ch1_batt
signal3 = wh51_ch1_sig
batteryStatus4 = wh51_ch2_batt
signal4 = wh51_ch2_sig
windGust = gustspeed
windGustDir = windgustdir
[Accumulator]
# Start Ecowitt Gateway driver extractors
[[daymaxwind]]
extractor = last
[[lightning_distance]]
extractor = last
[[lightning_strike_count]]
extractor = sum
[[lightningcount]]
extractor = last
[[lightning_last_det_time]]
extractor = last
[[stormRain]]
extractor = last
[[hourRain]]
extractor = last
[[dayRain]]
extractor = last
[[weekRain]]
extractor = last
[[monthRain]]
extractor = last
[[yearRain]]
extractor = last
[[totalRain]]
extractor = last
[[p_rain]]
extractor = sum
[[p_stormRain]]
extractor = last
[[p_dayRain]]
extractor = last
[[p_weekRain]]
extractor = last
[[p_monthRain]]
extractor = last
[[p_yearRain]]
extractor = last
[[t_rain]]
extractor = sum
[[t_stormRain]]
extractor = last
[[t_dayRain]]
extractor = last
[[t_weekRain]]
extractor = last
[[_monthRain]]
extractor = last
[[t_yearRain]]
extractor = last
[[pm2_51_24h_avg]]
extractor = last
[[pm2_52_24h_avg]]
extractor = last
[[pm2_53_24h_avg]]
extractor = last
[[pm2_54_24h_avg]]
extractor = last
[[pm2_55_24h_avg]]
extractor = last
[[pm10_24h_avg]]
extractor = last
[[co2_24h_avg]]
extractor = last
[[wh40_batt]]
extractor = last
[[wh26_batt]]
extractor = last
[[wh25_batt]]
extractor = last
[[wh24_batt]]
extractor = last
[[wh65_batt]]
extractor = last
[[wh31_ch1_batt]]
extractor = last
[[wh31_ch2_batt]]
extractor = last
[[wh31_ch3_batt]]
extractor = last
[[wh31_ch4_batt]]
extractor = last
[[wh31_ch5_batt]]
extractor = last
[[wh31_ch6_batt]]
extractor = last
[[wh31_ch7_batt]]
extractor = last
[[wh31_ch8_batt]]
extractor = last
[[wn34_ch1_batt]]
extractor = last
[[wn34_ch2_batt]]
extractor = last
[[wn34_ch3_batt]]
extractor = last
[[wn34_ch4_batt]]
extractor = last
[[wn34_ch5_batt]]
extractor = last
[[wn34_ch6_batt]]
extractor = last
[[wn34_ch7_batt]]
extractor = last
[[wn34_ch8_batt]]
extractor = last
[[wn35_ch1_batt]]
extractor = last
[[wn35_ch2_batt]]
extractor = last
[[wn35_ch3_batt]]
extractor = last
[[wn35_ch4_batt]]
extractor = last
[[wn35_ch5_batt]]
extractor = last
[[wn35_ch6_batt]]
extractor = last
[[wn35_ch7_batt]]
extractor = last
[[wn35_ch8_batt]]
extractor = last
[[wh41_ch1_batt]]
extractor = last
[[wh41_ch2_batt]]
extractor = last
[[wh41_ch3_batt]]
extractor = last
[[wh41_ch4_batt]]
extractor = last
[[wh45_batt]]
extractor = last
[[wh51_ch1_batt]]
extractor = last
[[wh51_ch2_batt]]
extractor = last
[[wh51_ch3_batt]]
extractor = last
[[wh51_ch4_batt]]
extractor = last
[[wh51_ch5_batt]]
extractor = last
[[wh51_ch6_batt]]
extractor = last
[[wh51_ch7_batt]]
extractor = last
[[wh51_ch8_batt]]
extractor = last
[[wh51_ch9_batt]]
extractor = last
[[wh51_ch10_batt]]
extractor = last
[[wh51_ch11_batt]]
extractor = last
[[wh51_ch12_batt]]
extractor = last
[[wh51_ch13_batt]]
extractor = last
[[wh51_ch14_batt]]
extractor = last
[[wh51_ch15_batt]]
extractor = last
[[wh51_ch16_batt]]
extractor = last
[[wh55_ch1_batt]]
extractor = last
[[wh55_ch2_batt]]
extractor = last
[[wh55_ch3_batt]]
extractor = last
[[wh55_ch4_batt]]
extractor = last
[[wh57_batt]]
extractor = last
[[wh68_batt]]
extractor = last
[[ws80_batt]]
extractor = last
[[ws90_batt]]
extractor = last
[[wh40_sig]]
extractor = last
[[wh26_sig]]
extractor = last
[[wh25_sig]]
extractor = last
[[wh24_sig]]
extractor = last
[[wh65_sig]]
extractor = last
[[wh31_ch1_sig]]
extractor = last
[[wh31_ch2_sig]]
extractor = last
[[wh31_ch3_sig]]
extractor = last
[[wh31_ch4_sig]]
extractor = last
[[wh31_ch5_sig]]
extractor = last
[[wh31_ch6_sig]]
extractor = last
[[wh31_ch7_sig]]
extractor = last
[[wh31_ch8_sig]]
extractor = last
[[wn34_ch1_sig]]
extractor = last
[[wn34_ch2_sig]]
extractor = last
[[wn34_ch3_sig]]
extractor = last
[[wn34_ch4_sig]]
extractor = last
[[wn34_ch5_sig]]
extractor = last
[[wn34_ch6_sig]]
extractor = last
[[wn34_ch7_sig]]
extractor = last
[[wn34_ch8_sig]]
extractor = last
[[wn35_ch1_sig]]
extractor = last
[[wn35_ch2_sig]]
extractor = last
[[wn35_ch3_sig]]
extractor = last
[[wn35_ch4_sig]]
extractor = last
[[wn35_ch5_sig]]
extractor = last
[[wn35_ch6_sig]]
extractor = last
[[wn35_ch7_sig]]
extractor = last
[[wn35_ch8_sig]]
extractor = last
[[wh41_ch1_sig]]
extractor = last
[[wh41_ch2_sig]]
extractor = last
[[wh41_ch3_sig]]
extractor = last
[[wh41_ch4_sig]]
extractor = last
[[wh45_sig]]
extractor = last
[[wh51_ch1_sig]]
extractor = last
[[wh51_ch2_sig]]
extractor = last
[[wh51_ch3_sig]]
extractor = last
[[wh51_ch4_sig]]
extractor = last
[[wh51_ch5_sig]]
extractor = last
[[wh51_ch6_sig]]
extractor = last
[[wh51_ch7_sig]]
extractor = last
[[wh51_ch8_sig]]
extractor = last
[[wh51_ch9_sig]]
extractor = last
[[wh51_ch10_sig]]
extractor = last
[[wh51_ch11_sig]]
extractor = last
[[wh51_ch12_sig]]
extractor = last
[[wh51_ch13_sig]]
extractor = last
[[wh51_ch14_sig]]
extractor = last
[[wh51_ch15_sig]]
extractor = last
[[wh51_ch16_sig]]
extractor = last
[[wh55_ch1_sig]]
extractor = last
[[wh55_ch2_sig]]
extractor = last
[[wh55_ch3_sig]]
extractor = last
[[wh55_ch4_sig]]
extractor = last
[[wh57_sig]]
extractor = last
[[wh68_sig]]
extractor = last
[[ws80_sig]]
extractor = last
[[ws90_sig]]
extractor = last