Here is a sanitized copy of my Weewx.conf. I do have all of my Belchertown
settings in the weewx conf , so it adds a bunch of lines. I'm really not
sure about the synthetic measurements.


# WEEWX CONFIGURATION FILE
#
# Copyright (c) 2009-2019 Tom Keffer <tkef...@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 = 0

# 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 = 4.10.2

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

#   This section is for information about the station.

[Station]

    # Description of the station location
    location = "Riverside Belcamp, MD"

    # Latitude in decimal degrees. Negative for southern hemisphere
    latitude = 39.478306
    # Longitude in decimal degrees. Negative for western hemisphere.
    longitude = -76.252562

    # Altitude of the station, with unit it is in. This is downloaded from
    # from the station if the hardware supports it.
    altitude = 100, foot

    # 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 = AcuRite

    # If you have a website, you may specify an URL
    station_url = https://belcampmdweather.tech/weewx/belchertown/

    # 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

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

[AcuRite]
    # This section is for AcuRite weather stations.

    # The station model, e.g., 'AcuRite 01025' or 'AcuRite 02032C'
    model = AcuRite 02032C

    # The driver to use:
    driver = weewx.drivers.acurite
    use_constants = False
##############################################################################

#   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 = true

    [[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 = ######
        password = #####

    [[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 = true
        station = FW5836

    # 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 = true
        station = KMDBELCA3
        password = #####

    [[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 = KMDBELCA3
        password = ####

        # If you plan on using wunderfixer, set the following
        # to your API key:
        api_key = #######

        # 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

        post_indoor_observations = true

    [[WeatherCloud]]
        id = f########
        key = ##########

    [[MQTT]]
        server_url = mqtt://####:#####@localhost:1883/
        topic = weather
        #server_url = mqtt://broker.hivemq.com:1883/
        #topic = weather/belcamp
        #server_url = mqtt://test.mosquitto.org:1883/
        #topic = weather/belcamp
        unit_system = US
        binding = archive, loop
        aggregation = aggregate

    [[Windy]]
        api_key = ######

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

# Options for 'StdReport'
[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 = True

    # 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 = true
        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 = true
        HTML_ROOT = /var/www/html/weewx/mobile

    [[StandardReport]]
        # This is the old "Standard" skin. By default, it is not enabled.
        skin = Standard
        enable = true
    [[Belchertown]]
        HTML_ROOT = /var/www/html/weewx/belchertown
        skin = Belchertown
        enable = true
        [[[Extras]]]
            belchertown_locale = auto
            theme = dark
            theme_toggle_enabled = 1
            site_title = "Belcamp,MD"
            logo_image =
https://belcampmdweather.tech/weewx/belchertown/images/content/belcamp_md.jpg
            logo_image_dark =
https://belcampmdweather.tech/weewx/belchertown/images/content/belcamp_md_dark1.jpg
            radar_html = <iframe width="650" height="360" src="
https://embed.windy.com/embed2.html?lat=39.451&lon=-76.273&detailLat=39.446&detailLon=-76.271&width=650&height=360&zoom=8&level=surface&overlay=radar&product=radar&menu=&message=&marker=&calendar=now&pressure=&type=map&location=coordinates&detail=&metricWind=mph&metricTemp=%C2%B0F&radarRange=-1";
frameborder="0"></iframe>
            almanac_extras = 1
            forecast_enabled = 1
            forecast_provider = aeris
            forecast_api_id = #####
            forecast_api_secret = #####
            forecast_units = us
            forecast_lang = en
            forecast_stale = 3540
            forecast_aeris_use_metar = 1
            forecast_interval_hours = 3
            forecast_alert_enabled = 1
            forecast_alert_limit = 3
            forecast_show_daily_forecast_link = 1
            forecast_daily_forecast_link =
https://wx.aerisweather.com/local/us/md/belcamp/forecast/YYYY/MM/DD
            aqi_enabled = 1
            aqi_location_enabled = 1
            # Station Observations. Special observation rainWithRainRate
combines Daily Rain with Rain Rate in 1 line
            station_observations = barometer, dewpoint, outHumidity,
rainWithRainRate, visibility, cloud_cover, inTemp

            # Manifest Settings for Mobile Phones
            manifest_name = "Belcamp,MD Weather"
            manifest_short_name = MWW

            # Highcharts settings
            highcharts_enabled = 1
            graph_page_show_all_button = 1
            graph_page_default_graphgroup = all
            highcharts_homepage_graphgroup = day
            highcharts_decimal = auto
            highcharts_thousands = auto

            # Default page headers
            home_page_header = Belcamp MD Weather Conditions
            graphs_page_header = Belcamp MD Weather Observation Graphs
            records_page_header = Belcamp MD Weather Observation Records
            reports_page_header = Belcamp MD Weather Observation Reports
            about_page_header = About This Weather Station
            powered_by = Observations are powered by an Acurite 02032C 5in1
Weather Station

            # MQTT Websockets defaults
            mqtt_websockets_enabled = 1
            mqtt_websockets_host = #######.ddns.net
            mqtt_websockets_port = 9001
            mqtt_websockets_topic = weather/loop
            mqtt_websockets_ssl = 1
            disconnect_live_website_visitor = 0

            # Show an alert if the page updated timestamp is older than
expected with this setting. Does not apply to MQTT Websocket enabled
websites
            # The late time threshold is defined in seconds. This should be
greater than your archive_interval from weewx.conf.
            # Typically you would want this 2 or 3 times archive_interval
            show_last_updated_alert = 0
            last_updated_alert_threshold = 1800

            # If mqtt_websockets_enabled is set to 0, but want the page to
full reload on an interval, specify this below in milliseconds. 300000 = 5
minutes
            webpage_autorefresh = 0

            # Image Reload Section.
            # Set reload_hook_images to 1 to enable, then set the number of
*seconds* for each section to reload.
            # A value of -1 will disable reloading images in that section.
            # radar = the radar image if you used radar_html setting
            # asi = index_hook_after_station_info.inc
            # af = index_hook_after_forecast.inc
            # as = index_hook_after_snapshot.inc
            # ac = index_hook_after_charts.inc
            reload_hook_images = 0
            reload_images_radar = 300
            reload_images_hook_asi = -1
            reload_images_hook_af = -1
            reload_images_hook_as = -1
            reload_images_hook_ac = -1
            # Earthquake defaults
            earthquake_enabled = 1
            earthquake_maxradiuskm = 1000
            earthquake_stale = 10740
            earthquake_server = USGS

            # Social Share Button Defaults. Define the text below under
Labels
            facebook_enabled = 1
            twitter_enabled = 0
            social_share_html =
https://belcampmdweather.tech/weewx/belchertown/

            # This is the display of the Pi Kiosk which is in the /pi folder
            pi_kiosk_bold = false
            pi_theme = auto

            # For help refer to the docs at
https://github.com/poblabs/weewx-belchertown

            #--- General Options ---
            # belchertown_debug = 0
            # belchertown_locale = "auto"
            # theme = light
            # theme_toggle_enabled = 1
            # logo_image = ""
            # logo_image_dark = ""
            # site_title = "My Weather Website"
            # station_observations =
"barometer","dewpoint","outHumidity","rainWithRainRate"
            # beaufort_categoty = 0
            # manifest_name = "My Weather Website"
            # manifest_short_name = "MWW"
            # aeris_map = 0
            # radar_html = ''   #  (default seems to center on your lat/lon)
            # radar_html_dark = None
            # radar_zoom = 8
            # radar_marker = 0
            # almanac_extras = 1
            # highcharts_enabled = 1
            # graph_page_show_all_button = 1
            # graph_page_default_graphgroup = "day"
            # highcharts_homepage_graphgroup = "day"
            # highcharts_decimal = "auto"
            # highcharts_thousands = "auto"
            # googleAnalyticsId = ""
            # pi_kiosk_bold = "false"
            # pi_theme = "auto"
            # webpage_autorefresh = 0
            # reload_hook_images = 0
            # reload_images_radar = 300
            # reload_images_hook_asi = -1
            # reload_images_hook_af = -1
            # reload_images_hook_as = -1
            # reload_images_hook_ac = -1
            # show_last_updated_alert = 0
            # last_updated_alert_threshold = 1800

            #--- Common Titles under Labels Section to Change ---
            # home_page_header = "My Station Weather Conditions"
            # graphs_page_header = "Weather Observation Graphs"
            # reports_page_header = "Weather Observation Reports"
            # records_page_header = "Weather Observation Records"
            # about_page_header = "About This Site"
            # powered_by = 'Observations are powered by a <a href="/about"
target="_blank">Personal Weather Station</a>'
            # footer_copyright_text = "My Weather Website"
            # footer_disclaimer_text = "Never make important decisions
based on info from this website."

            #--- MQTT Websockets (for Real Time Streaming) Options ---
            # mqtt_websockets_enabled = 0
            # mqtt_websockets_host = ""
            # mqtt_websockets_port = 8080
            # mqtt_websockets_ssl = 0
            # mqtt_websockets_topic = ""
            # disconnect_live_website_visitor = 1800000

            #--- Forecast Options ---
            # forecast_enabled = 0
            # forecast_provider = "aeris"
            # forecast_api_id = ""
            # forecast_api_secret = ""
            # forecast_units = "us"
            # forecast_lang = "en"
            # forecast_stale = 3540
            # forecast_aeris_use_metar = 1
            # forecast_interval_hours = 24
            # forecast_alert_enabled = 0
            # forecast_alert_limit = 1
            # forecast_show_daily_forecast_link = 0
            # forecast_daily_forecast_link = ""
            # aqi_enabled = 0
            # aqi_location_enabled = 0

            #--- Earthquake Options ---
            # earthquake_enabled = 0
            # earthquake_maxradiuskm = 1000
            # earthquake_stale = 10740
            # earthquake_server = USGS
            # geonet_mmi = 4

            #--- Social Options ---
            # facebook_enabled = 0
            # twitter_enabled = 0
            # twitter_owner = ""
            # twitter_hashtags = "weewx #weather"
            # social_share_html = ""
            # twitter_text = "Check out my website: My Weather Website
Weather Conditions"
            # twitter_owner = "YourTwitterUsernameHere"
            # twitter_hashtag = "weewx #weather"

            #-------------------------------------------------------------
            #---
            #--- python's ConfigObj has a limitation in how it processes
            #--- comments, so we need to define an 'unused' variable below
            #--- to ensure that this whole stanza makes it into weewx.conf
            #---
            #--- please ignore the following 'unused' variable
            #---
            #-------------------------------------------------------------
            work_around_ConfigObj_limitations = true

    [[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 = ####
        password = ####
        server = ####
        path = ####

        # 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

    ####

    # 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 = foot    # Options are 'foot' or 'meter'
                group_degree_day = degree_F_day    # Options are
'degree_F_day' or 'degree_C_day'
                group_distance = mile    # Options are 'mile' or 'km'
                group_pressure = inHg    # Options are 'inHg', 'mmHg',
'mbar', or 'hPa'
                group_rain = inch    # Options are 'inch', 'cm', or 'mm'
                group_rainrate = inch_per_hour    # Options are
'inch_per_hour', 'cm_per_hour', or 'mm_per_hour'
                group_speed = mile_per_hour    # Options are
'mile_per_hour', 'km_per_hour', 'knot', or 'meter_per_second'
                group_speed2 = mile_per_hour2    # Options are
'mile_per_hour2', 'km_per_hour2', 'knot2', or 'meter_per_second2'
                group_temperature = degree_F    # 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 = %.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"

            # The following section overrides the label used for each type
of unit
            [[[[Labels]]]]

                meter = " meter", " meters"    # You may prefer "metre".
                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, 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

        # 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:

# barometer = barometer - .03
# pressure = pressure - .03

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

#   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
        #beaufort = 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 = 120
    archive_delay = 15
    # 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.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 = /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]
    # The following section specifies which services should be run and in
what order.
    [[Services]]
        prep_services = weewx.engine.StdTimeSynch
        data_services = ,
        process_services = weewx.engine.StdConvert,
weewx.engine.StdCalibrate, weewx.engine.StdQC,
weewx.wxservices.StdWXCalculate, user.crt.CumulusRealTime
        xtype_services = weewx.wxxtypes.StdWXXTypes,
weewx.wxxtypes.StdPressureCooker, weewx.wxxtypes.StdRainRater,
weewx.wxxtypes.StdDelta
        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.mqtt.MQTT, user.windy.Windy
        report_services = weewx.engine.StdPrint, weewx.engine.StdReport

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

# Options for extension 'crt'
[CumulusRealTime]
    filename = /var/tmp/realtime.txt
    unit_system = US
    binding = archive

On Wed, Jan 17, 2024 at 7:25 PM vince <vinceska...@gmail.com> wrote:

> It's not Belchertown.  It's not db size.  I ran many tests.
>
> v5 and Belchertown can easily coexist on a pi3 or so system.  If every
> time through you're exceeding the default archive period you're doing
> something custom to make that happen.  I keep coming back to the known
> issue/slowness with synthetic measurements that Tom mentioned a few times
> recently.
>
> Here's the test I just did with a newly flashed 32-bit pi3+ running a
> fully patched latest raspios...
>
> On a clean pi3+ with weewx v5 via pip and Belchertown installed, using the
> Simulator driver and no old pre-existing db present:
>
> Generated 8 files for report SeasonsReport in 3.45 seconds
> Generated 56 images for report SeasonsReport in 3.43 seconds
> Generated 12 files for report Belchertown in 6.93 seconds
> (elapsed time from writing to the db to Belchertown done was 14 seconds)
>
> I then stopped weewx, overwrote my weewx.sdb with my production system
> data with 17+ years of data, pre-seeded the Seasons NOAA tree so I didn't
> need to wait for them to be regenerated once for this test, then restarted
> weewx.  So it's running the same skins with 17+ years of data, with the
> Seasons NOAA files having been pregenerated and dropped into place....
>
> Generated 8 files for report SeasonsReport in 4.28 seconds
> Generated 44 images for report SeasonsReport in 6.75 seconds
> *Generated 236 files for report Belchertown in 266.59 seconds.  <=====*
> (elapsed time from writing to db to Belchertown done was 4:37 so pretty
> close to a 5-minute default archive period)
>
> Why ?  Because the 'first' Belchertown run generates its 'own' copy of
> the NOAA files down under the Belchertown public_html tree.  It had to do
> that (for me) with 17+ years of month and year files which takes some time
> to complete.   Running htop I saw two virtual cpus pegged at 100%
> throughout until it completed.
>
> After that Belchertown NOAA files are also pre-seeded there too so it's
> just doing normal incremental updates for future report runs.  Each skin
> that generates NOAA files has to work hard once to do so vs. a pre-existing
> db if you start with a legacy db.   You only have to bleed through that
> once.  Subsequent runs should be quick.  Lets see...
>
> So I let it run another cycle.....looks fine
>
> Generated 8 files for report SeasonsReport in 3.05 seconds
> Generated 18 images for report SeasonsReport in 1.22 seconds
> Generated 12 files for report Belchertown in 8.26 seconds
> (elapsed time this cycle was 14 seconds)
>
> And one more cycle.....looks fine
>
> Generated 8 files for report SeasonsReport in 2.94 seconds
> Generated 18 images for report SeasonsReport in 1.68 seconds
> Generated 12 files for report Belchertown in 7.80 seconds
> (elapsed time for this cycle was 14 seconds)
>
> Again - if you are continually exceeding perhaps 15 seconds for
> Belchertown to run on a pi3 or better you are doing something custom to
> make that happen.  I just keep coming beck mentally to Tom's previous
> responses re: synthetic measurements.
>
> The original poster uses an Acurite which I don't know enough about to
> know for certain, but are you using that feature and not even knowing it ?
> Would providing your (sanitized) weewx.conf perhaps be of use in helping
> figure it out ?
>
> --
> 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/7tMPKNiRpZg/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> weewx-user+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/weewx-user/9815dc0c-c883-43a3-b9e4-87f4e3a3986fn%40googlegroups.com
> <https://groups.google.com/d/msgid/weewx-user/9815dc0c-c883-43a3-b9e4-87f4e3a3986fn%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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 weewx-user+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/CAAsGudot7rsmdygEiqDqWCuowEhQx36Cd4Si-Y1CW3qy-SZdtQ%40mail.gmail.com.

Reply via email to