Here is a copy of my full weewx.conf file, I have removed some data and
replaced with xxx where it would show my location/API keys etc.
Not sure if useful or not but at least you have it :)
Thanks
Mike
On Saturday, 8 April 2023 at 09:23:09 UTC+1 Mike wrote:
> Hi,
> 1. I have attached the log as a text file as its quite large. Also the
> service stopping at the end is me so I know where the log starts and ends.
> 2. If I put the sensor on top a running microwave and spark a piezo
> lighter I can gernerate a strike count on the ecowitt.
> 3. This is code being used
> "lightning":
> {
>
> "lightning last distance": {"value":
> "$alltime.lightning_distance.lastnonzero.format(add_label=False,
> $localize=False)"},
> "lightning last time": {"at": "$alltime.signal7.lastnonzero.raw"},
> "lightning last hour": {"value":
> "$hour.lightning_strike_count.sum"},
> ## Last value can't end with a comma
> "void_end": null
> },
> 4. The webui on the GW1000 live data screen shows the correct amount,
> example below.
> [image: ecowitt.jpg]
>
> Thanks
> Mike
>
>
>
> On Saturday, 8 April 2023 at 02:28:54 UTC+1 gjr80 wrote:
>
>> I have just run a similar configuration (simulator with 2 sec loop
>> interval and Ecowitt gateway driver as a service with a 20 sec poll
>> interval) and I received the expected results. Not saying there is no
>> issue, but I did not notice it on my test. To look into this further I am
>> going to need some more information:
>>
>> 1. provide a debug startup log - edit weewx.conf, set debug = 1, save
>> weewx.conf and restart WeeWX. Take a log extract showing the full WeeWX
>> startup sequence and post it here without alteration.
>>
>> 2. '*I have found a way to generate test lightning*' - what does this
>> mean and exactly what have you done to generate this test data?
>>
>> 3. '*the numbers recorded in the database*' - what field in the
>> database? are you manually querying the database - if so with what query,
>> or are you using a report - if so with what tags/content?
>>
>> 4. '*the gw1000 interface report*s' - what does this mean?
>>
>> Gary
>> On Saturday, 8 April 2023 at 01:07:09 UTC+10 Mike wrote:
>>
>>> Hi,
>>> I have a davis weather station which is polled roughly every 2 seconds.
>>> I have recently purchased an ecowitt wh57 lightning sensor and gw1000
>>> gateway which I am polling using the user.gw1000 driver found here:
>>> https://github.com/gjr80/weewx-gw1000 as a service in weewx. I have
>>> found a way to generate test lightning and have noticed that the numbers
>>> recorded in the database are higher than the gw1000 interface reports. All
>>> other entries such as distance and time are recorded correctly.
>>>
>>> For example 1 strike would be recorded in the db as 10 strikes.
>>>
>>> After some messing around I noticed that 10 is basically the number of
>>> loops my davis was doing in the 20 second window between the gw1000
>>> polling. To confirm this I have set the gw1000 polling to 1 second and now
>>> 1 strike is counted as 1 in the DB. If I set the polling to 4 seconds 1
>>> strike is counted as 2.
>>>
>>> Is this something that can be resolved in code or is the fix to simply
>>> poll the gw1000 every 1 second?
>>>
>>> Many Thanks
>>> Mike
>>>
>>
--
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/24752ef2-9c56-4cff-973f-4d67379004abn%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 = 0
# Root directory of the weewx data file hierarchy for this station
WEEWX_ROOT = /home/weewx
# Whether to log successful operations. May get overridden below.
log_success = True
# Whether to log unsuccessful operations. May get overridden below.
log_failure = True
# Do not modify this. It is used when installing and updating weewx.
version = 4.10.2
##############################################################################
# This section is for information about the station.
[Station]
# Description of the station location
location = ""
# Latitude in decimal degrees. Negative for southern hemisphere
latitude = 51.xxx
# Longitude in decimal degrees. Negative for western hemisphere.
longitude = -3.xxx
# Altitude of the station, with the unit it is in. This is used only
# if the hardware cannot supply a value.
altitude = 27, meter # Choose 'foot' or 'meter' for unit
# 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 = Vantage
# 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 = 6
##############################################################################
[Vantage]
# This section is for the Davis Vantage series of weather stations.
# Connection type: serial or ethernet
# serial (the classic VantagePro)
# ethernet (the WeatherLinkIP or Serial-Ethernet bridge)
type = serial
# If the connection type is serial, a port must be specified:
# Debian, Ubuntu, Redhat, Fedora, and SuSE:
# /dev/ttyUSB0 is a common USB port name
# /dev/ttyS0 is a common serial port name
# BSD:
# /dev/cuaU0 is a common serial port name
port = /dev/ttyUSB_DEVICE1
# If the connection type is ethernet, an IP Address/hostname is required:
host = 1.2.3.4
######################################################
# The rest of this section rarely needs any attention.
# You can safely leave it "as is."
######################################################
# Serial baud rate (usually 19200)
baudrate = 19200
# TCP port (when using the WeatherLinkIP)
tcp_port = 22222
# TCP send delay (when using the WeatherLinkIP):
tcp_send_delay = 0.5
# The type of LOOP packet to request: 1 = LOOP1; 2 = LOOP2; 3 = both
loop_request = 1
# The id of your ISS station (usually 1). If you use a wind meter connected
# to a anemometer transmitter kit, use its id
iss_id = 1
# How long to wait for a response from the station before giving up (in
# seconds; must be greater than 2)
timeout = 4
# How long to wait before trying again (in seconds)
wait_before_retry = 1.2
# How many times to try before giving up:
max_tries = 4
# Vantage model Type: 1 = Vantage Pro; 2 = Vantage Pro2
model_type = 2
# The driver to use:
driver = weewx.drivers.vantage
##############################################################################
# This section is for uploading data to Internet sites
[StdRESTful]
# Uncomment and change to override logging for uploading services.
# log_success = True
# log_failure = True
[[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 = true
station = FWxxxx
# 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 = true
station = xxxx
password = xxxx
[[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 = true
station = xxx
password = xxx
[[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 = true
station = xxxx
password = xxxx
# If you plan on using wunderfixer, set the following
# to your API key:
api_key = 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 = true
[[WeatherCloud]]
id = xxxx
key = xxxx
[[Windy]]
api_key = xxxx
##############################################################################
# This section specifies what reports, using which skins, to generate.
[StdReport]
# Where the skins reside, relative to WEEWX_ROOT
SKIN_ROOT = 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
[[SmartphoneReport]]
# The SmartphoneReport uses the 'Smartphone' skin, and the images and
# files are placed in a dedicated subdirectory.
skin = Smartphone
enable = false
HTML_ROOT = public_html/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 = public_html/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 = 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 = public_html
# 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 = public_html
# 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 = en
# Which unit system to use for all reports. Choices are 'us', 'metric',
or 'metricwx'.
# You can override this for individual reports.
unit_system = metricwx
[[[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'
# The following line is used to keep the above lines indented
properly.
# It can be ignored.
unused = unused
# 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 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
[[[[Generic]]]]
# inHumidity = Inside Humidity
# inTemp = Inside Temperature
# outHumidity = Outside Humidity
# outTemp = Outside Temperature
# extraTemp1 = Temperature1
# extraTemp2 = Temperature2
# extraTemp3 = Temperature3
# The following line is used to keep the above lines indented
properly.
# It can be ignored.
unused = unused
#
################################################################################
[[DivumWXReport]]
skin = DivumWX
HTML_ROOT = /var/www/html/weewx/divumwx/
[[[Units]]]
[[[[Groups]]]]
group_altitude = meter
group_degree_day = degree_C_day
group_pressure = hPa
group_rain = mm
group_rainrate = mm_per_hour
group_speed = meter_per_second
group_speed2 = meter_per_second2
group_temperature = degree_C
#
################################################################################
[[dvmHighcharts]]
HTML_ROOT = /var/www/html/weewx/divumwx/dvmhighcharts
skin = dvmHighcharts
enable = true
[[[CheetahGenerator]]]
[[[[ToDate]]]]
[[[[[YearJSON]]]]]
stale_age = 600
[[[Units]]]
[[[[StringFormats]]]]
centibar = %.0f
cm = %.2f
cm_per_hour = %.2f
degree_C = %.1f
degree_F = %.1f
degree_compass = %.0f
foot = %.0f
hPa = %.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
uv_index = %.1f
volt = %.1f
watt_per_meter_squared = %.0f
NONE = N/A
[[[[Labels]]]]
centibar = cb
cm = cm
cm_per_hour = cm/hr
degree_C = ° C
degree_F = ° F
degree_compass = °
foot = feet
hPa = hPa
inHg = inHg
inch = in
inch_per_hour = in/hr
km_per_hour = km/hr
km_per_hour2 = km/hr
knot = knots
knot2 = knots
mbar = mbar
meter = meters
meter_per_second = m/s
meter_per_second2 = m/s
mile_per_hour = mph
mile_per_hour2 = mph
mm = mm
mmHg = mmHg
mm_per_hour = mm/hr
percent = %
uv_index = Index
volt = V
watt_per_meter_squared = W/m²
NONE = ""
[[[Extras]]]
numYears = 5
[[[[MinRange]]]]
outTemp = 10, degree_C
windchill = 10, degree_C
barometer = 20, hPa
windSpeed = 10
rain = 5, mm
radiation = 500
UV = 16
[[[[WindRose]]]]
title = Wind Rose
source = windSpeed
period = 3600, 86400, 604800, month, year
aggregate_type = ""
aggregate_interval = ""
petals = 16
petal_colors = aqua, 0x0099FF, 0x0033FF, 0x009900, 0x00CC00,
0x33FF33, 0xCCFF00
speedfactor = 0.0, 0.1, 0.2, 0.3, 0.5, 0.7, 1.0
legend_title = True
band_percent = True
bullseye_percent = True
precision = 1
bullseye_size = 20
bullseye_color = 0xFFFACD
calm_limit = 0.1
#
################################################################################
[[LoopDataReport]]
skin = LoopData
HTML_ROOT = /var/www/html/weewx/divumwx/jsondata
enable = True
[[[Units]]]
[[[[Extras]]]]
loop_data_file = dvmSensorData.json
expiration_time = 4
page_update_pwd = foobar
googleAnalyticsId = ""
analytics_host = ""
##############################################################################
# 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
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
##############################################################################
# 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 = hardware
# Whether to include LOOP data in hi/low statistics
loop_hilo = True
# 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
##############################################################################
# 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 = %(WEEWX_ROOT)s/archive
# 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.filepile.FilePile, user.gw1000.GatewayService
process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate,
weewx.engine.StdQC, weewx.wxservices.StdWXCalculate,
user.divumwx.DivumWXRealTime
xtype_services = weewx.wxxtypes.StdWXXTypes,
weewx.wxxtypes.StdPressureCooker, weewx.wxxtypes.StdRainRater,
weewx.wxxtypes.StdDelta, user.divumwx.LastNonZeroService
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.wcloud.WeatherCloud,
user.windy.Windy
report_services = weewx.engine.StdPrint, weewx.engine.StdReport,
user.divumwx.LoopData
#
################################################################################
[LastNonZero]
algorithm = simple
#
################################################################################
[LoopData]
[[FileSpec]]
loop_data_dir = /var/www/html/weewx/divumwx/jsondata
filename = dvmSensorData.json
[[LoopFrequency]]
seconds = 2
[[RsyncSpec]]
enable = false
remote_server = www.foobar.com
remote_user = root
remote_dir = /home/weewx/sensor-data
compress = false
log_success = false
ssh_options = -o ConnectTimeout=1
timeout = 1
skip_if_older_than = 3
[[Include]]
fields = unit.label.barometer, current.barometer.formatted,
trend.barometer.code, trend.barometer.desc, 24h.barometer.max.formatted,
24h.barometer.maxtime.raw, 24h.barometer.min.formatted,
24h.barometer.mintime.raw, day.barometer.max.formatted,
day.barometer.maxtime.raw, day.barometer.min.formatted,
day.barometer.mintime.raw, month.barometer.max.formatted,
month.barometer.maxtime.raw, month.barometer.min.formatted,
month.barometer.mintime.raw, year.barometer.max.formatted,
year.barometer.maxtime.raw, year.barometer.min.formatted,
year.barometer.mintime.raw, alltime.barometer.max.formatted,
alltime.barometer.maxtime.raw, alltime.barometer.min.formatted,
alltime.barometer.mintime.raw, current.cloudbase.formatted,
current.dewpoint.formatted, trend.dewpoint.formatted,
24h.dewpoint.max.formatted, 24h.dewpoint.maxtime.raw,
24h.dewpoint.min.formatted, 24h.dewpoint.mintime.raw,
day.dewpoint.max.formatted, day.dewpoint.maxtime.raw,
day.dewpoint.min.formatted, day.dewpoint.mintime.raw,
month.dewpoint.max.formatted, month.dewpoint.maxtime.raw,
month.dewpoint.min.formatted, month.dewpoint.mintime.raw,
year.dewpoint.max.formatted, year.dewpoint.maxtime.raw,
year.dewpoint.min.formatted, year.dewpoint.mintime.raw,
alltime.dewpoint.max.formatted, alltime.dewpoint.maxtime.raw,
alltime.dewpoint.min.formatted, alltime.dewpoint.mintime.raw,
current.outHumidity.formatted, trend.outHumidity.formatted,
24h.outHumidity.max.formatted, 24h.outHumidity.maxtime.raw,
24h.outHumidity.min.formatted, 24h.outHumidity.mintime.raw,
day.outHumidity.max.formatted, day.outHumidity.maxtime.raw,
day.outHumidity.min.formatted, day.outHumidity.mintime.raw,
month.outHumidity.max.formatted, month.outHumidity.maxtime.raw,
month.outHumidity.min.formatted, month.outHumidity.mintime.raw,
year.outHumidity.max.formatted, year.outHumidity.maxtime.raw,
year.outHumidity.min.formatted, year.outHumidity.mintime.raw,
alltime.outHumidity.max.formatted, alltime.outHumidity.maxtime.raw,
alltime.outHumidity.min.formatted, alltime.outHumidity.mintime.raw,
current.inHumidity.formatted, trend.inHumidity.formatted,
24h.inHumidity.max.formatted, 24h.inHumidity.maxtime.raw,
24h.inHumidity.min.formatted, 24h.inHumidity.mintime.raw,
day.inHumidity.max.formatted, day.inHumidity.maxtime.raw,
day.inHumidity.min.formatted, day.inHumidity.mintime.raw,
month.inHumidity.max.formatted, month.inHumidity.maxtime.raw,
month.inHumidity.min.formatted, month.inHumidity.mintime.raw,
year.inHumidity.max.formatted, year.inHumidity.maxtime.raw,
year.inHumidity.min.formatted, year.inHumidity.mintime.raw,
alltime.inHumidity.max.formatted, alltime.inHumidity.maxtime.raw,
alltime.inHumidity.min.formatted, alltime.inHumidity.mintime.raw,
current.luminosity.formatted, day.luminosity.formatted,
current.cloudbase.formatted, current.maxSolarRad.formatted,
day.maxSolarRad.max.formatted, day.maxSolarRad.maxtime.raw,
24h.maxSolarRad.max.formatted, 24h.maxSolarRad.maxtime.raw,
month.maxSolarRad.max.formatted, month.maxSolarRad.maxtime.raw,
year.maxSolarRad.max.formatted, year.maxSolarRad.maxtime.raw,
alltime.maxSolarRad.max.formatted, alltime.maxSolarRad.maxtime.raw,
unit.label.outTemp, current.inTemp.formatted, trend.inTemp.formatted,
day.inTemp.max.formatted, day.inTemp.maxtime, day.inTemp.min.formatted,
day.inTemp.mintime, current.outTemp.formatted, trend.outTemp.formatted,
current.appTemp.formatted, current.heatindex.formatted,
current.windchill.formatted, current.humidex.formatted,
day.outTemp.avg.formatted, hour.outTemp.avg.formatted,
24h.outTemp.max.formatted, 24h.outTemp.maxtime.raw, 24h.outTemp.min.formatted,
24h.outTemp.mintime.raw, day.outTemp.max.formatted, day.outTemp.maxtime.raw,
day.outTemp.min.formatted, day.outTemp.mintime.raw,
month.outTemp.max.formatted, month.outTemp.maxtime.raw,
month.outTemp.min.formatted, month.outTemp.mintime.raw,
year.outTemp.max.formatted, year.outTemp.maxtime.raw,
year.outTemp.min.formatted, year.outTemp.mintime.raw,
alltime.outTemp.max.formatted, alltime.outTemp.maxtime.raw,
alltime.outTemp.min.formatted, alltime.outTemp.mintime.raw,
current.UV.formatted, day.UV.max.formatted, day.UV.maxtime.raw,
24h.UV.max.formatted, 24h.UV.maxtime.raw, month.UV.max.formatted,
month.UV.maxtime.raw, year.UV.max.formatted, year.UV.maxtime.raw,
alltime.UV.max.formatted, alltime.UV.maxtime.raw, current.beaufort.formatted,
unit.label.windSpeed, day.windSpeed.avg.formatted, current.windDir.formatted,
current.windDir.ordinal_compass, 10m.windDir.avg.formatted,
hour.windDir.avg.formatted, day.windDir.avg.formatted,
current.windSpeed.formatted, 10m.windSpeed.max.formatted,
hour.windSpeed.max.formatted, 10m.windSpeed.avg.formatted,
10m.windGust.avg.formatted, current.windGust.formatted,
10m.windGust.max.formatted, hour.windGust.max.formatted,
day.windSpeed.max.formatted, day.windSpeed.maxtime.raw,
day.windGust.max.formatted, day.windGust.maxtime.raw,
24h.windSpeed.max.formatted, 24h.windSpeed.maxtime.raw,
24h.windGust.max.formatted, 24h.windGust.maxtime.raw,
month.windSpeed.max.formatted, month.windSpeed.maxtime.raw,
month.windGust.max.formatted, month.windGust.maxtime.raw,
year.windSpeed.max.formatted, year.windSpeed.maxtime.raw,
year.windGust.max.formatted, year.windGust.maxtime.raw,
alltime.windSpeed.max.formatted, alltime.windSpeed.maxtime.raw,
alltime.windGust.max.formatted, alltime.windGust.maxtime.raw,
day.windrun.sum.formatted, trend.windDir.formatted, unit.label.rain,
unit.label.rainRate, current.rainRate.formatted, 24h.rainRate.max.formatted,
24h.rainRate.maxtime.raw, day.rainRate.max.formatted, day.rainRate.maxtime.raw,
month.rainRate.max.formatted, month.rainRate.maxtime.raw,
year.rainRate.max.formatted, year.rainRate.maxtime.raw,
alltime.rainRate.max.formatted, alltime.rainRate.maxtime.raw,
10m.rain.sum.formatted, hour.rain.sum.formatted, day.rain.sum.formatted,
24h.rain.sum.formatted, month.rain.sum.formatted, year.rain.sum.formatted,
alltime.rain.sum.formatted, current.lightning_strike_count,
2m.lightning_strike_count.sum, 10m.lightning_strike_count.sum,
hour.lightning_strike_count.sum, day.lightning_strike_count.sum,
month.lightning_strike_count.sum, year.lightning_strike_count.sum,
alltime.lightning_strike_count.sum, current.lightning_distance.formatted
[[BarometerTrendDescriptions]]
RISING_VERY_RAPIDLY = Rising Very Rapidly
RISING_QUICKLY = Rising Quickly
RISING = Rising
RISING_SLOWLY = Rising Slowly
STEADY = Steady
FALLING_SLOWLY = Falling Slowly
FALLING = Falling
FALLING_QUICKLY = Falling Quickly
FALLING_VERY_RAPIDLY = Falling Very Rapidly
#
################################################################################
[DivumWXRealTime]
realtime_path_only = ""
unit_system = METRICWX
exclude_fields = rain
cache_enable = True
cache_stale_time = 900
weewx_port = 25252
webserver_address = ""
weewxserver_address = ""
weewx_file_transfer = ""
HTML_ROOT = ""
#
################################################################################
# Air quality, your own latitude, longitude, token and interval in seconds are
required
# Weather Underground, your own latitude, longitude, API key, language, units
and interval in seconds required
# Weather Underground Units key e = US, m = METRIC, s = SI(with m/s
Scandinavia), h = UK(with mph)
# Example
https://api.weather.com/v3/wx/forecast/daily/5day?geocode=51.94,-0.987&language=en&format=json&units=h&apiKey=yourapikeyhere
# Earthquake reports interval in seconds required
# K-Index reports interval in seconds required
# Metar reports airport code, API Key and interval in seconds required
# Example https://api.checkwx.com/metar/EGTK/decoded
# Example X-API-Key:yourapikeyhere
# Purpleair reports device ID and interval in seconds required
# Example https://www.purpleair.com/json?show=38365
# Select the services you require by creating a string of the services above
# Example services = ds.me.eq.ki.wu.aq.al.ah.ao.aa.pu
# Select your preferred time interval in seconds for each service
[DivumWXWebServices]
aq_url = https://api.waqi.info/feed/geo:51.xxx;-3.xxx/?token=xxx
aq_interval = 3600
awc_url = https://api.aerisapi.com/conditions/51.xxx,
-3.xxx?format=json&filter=1min&plimit=1&client_id=xxx&client_secret=xxx
awc_interval = 300
awh_url = https://api.aerisapi.com/forecasts/51.xxx,
-3.xxx?filter=1hr&limit=24&client_id=xxx&client_secret=xxx
awh_interval = 1800
awd_url = https://api.aerisapi.com/forecasts/51.xxx,
-3.xxx?filter=daynight&limit=16&client_id=xxx&client_secret=xxx
awd_interval = 1800
awp_url = https://api.aerisapi.com/phrases/summary/51.xxx,
-3.xxx?client_id=xxx&client_secret=xxx
awp_interval = 1800
awa_url = https://api.aerisapi.com/alerts/51.xxx,
-3.11276?format=json&limit=10&lang=it&client_id=xxx&client_secret=xxx
awa_interval = 1800
wu_url = https://api.weather.com/v3/wx/forecast/daily/5day?geocode=51.xxx,
-3.xxx&language=en&format=json&units=h&apiKey=xxx
wu_interval = 3600
eq_url =
https://www.seismicportal.eu/fdsnws/event/1/query?limit=50&lat=51.xxx&lon=-3.xxx&maxradius=180&format=json&minmag=2
eq_interval = 3600
ki_url =
https://services.swpc.noaa.gov/products/noaa-planetary-k-index-forecast.json
ki_interval = 21600
me_url = https://api.checkwx.com/metar/xxx/decoded
me_header = X-API-Key:xxx
me_interval = 3600
pu_url = https://www.purpleair.com/json?show=
pu_interval = 3600
ns_url = http://www.bom.gov.au/fwo/
ns_interval = 900
uk_url =
https://metoffice.gov.uk/public/data/PWSCache/WarningsRSS/Region/xxx
uk_interval = 3600
no_url =
https://api.met.no/weatherapi/locationforecast/2.0/compact?lat=51.xxx&lon=-3.xxx&altitude=27
no_interval = 1800
services = aq.awc.awh.awd.awp.awa.eq.ki.me.uk.no
#
################################################################################
# Apply your own latitude and longitude and continent to the URLs in this
section
[DivumWXCloudCover]
enable = True
db_field = signal8
cc_interval = 300
cc1_url =
https://api.sat24.com/crop?type=visual5hdcomplete&lat=51.xxx&lon=-3.xxx&width=300&height=300&zoom=1.00&continent=eu
cc1_filename = /tmp/sat1.png
cc2_url =
https://api.sat24.com/crop?type=infraPolair&lat=51.xxx&lon=-3.xxx&width=300&height=300&zoom=1.00&continent=eu
cc2_filename = /tmp/sat2.png
[DivumWXSkyObject]
enable = True
so_interval = 3600
so1_url =
https://www.fourmilab.ch/cgi-bin/Earth?img=NASAmMM.evif&imgsize=320&dynimg=y&opt=-l&lat=51.xxx&ns=North&lon=3.xxx&ew=West&alt=35785&tle=&date=0&utc=&jd=/Earth.jpg
so1_filename = /var/www/html/weewx/divumwx/img/earth-1.jpg
so2_url =
https://www.fourmilab.ch/cgi-bin/Earth?img=LRO_100m.evif&imgsize=320&dynimg=y&gamma=1.32&opt=-l&lat=51.xxx&ns=North&lon=3.xxx&ew=West&alt=5000&tle=&date=0&utc=&jd=/Earth.jpg
so2_filename = /var/www/html/weewx/divumwx/img/moon-1.jpg
[GW1000]
# This section is for the Ecowitt Gateway driver.
ip_address = 192.168.40.2
# How often to poll the API, default is every 20 seconds:
poll_interval = 20
# The driver to use:
driver = user.gw1000
[[field_map_extensions]]
#signal7 = lightningdettime
#Discard Data Below Here
DoNotLog1 = inhumid
DoNotLog2 = absbarometer
DoNotLog3 = intemp
DoNotLog4 = relbarometer
DoNotLog5 = rain_priority
# The driver to use:
driver = user.gw1000
[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
[FilePile]
# Where to find the incoming new data:
filename = /var/www/html/weewx/divumwx/jsondata/aqi.txt
# What unit system they will be in.
# Choices are 'US', 'METRIC', or 'METRICWX'
unit_system = US
# Map from incoming names, to WeeWX names.
[[label_map]]
# Example: incoming observation 'filelabel1' will be mapped to
'extraTemp4'
pm25 = pm2_5
pm10 = pm10_0