diff --git a/TODO.md b/TODO.md index 7a8c6461..8d904b03 100644 --- a/TODO.md +++ b/TODO.md @@ -4,4 +4,4 @@ Documentation needs to be updated. - Change references to Standard skin to Seasons. - Mention the Mobile and Smartphone skins. -Check whether we can support Python 2.6 \ No newline at end of file +Document the dropping of Python 2.5. \ No newline at end of file diff --git a/docs/usersguide.htm b/docs/usersguide.htm index 4a2f57c6..93d6c2e1 100644 --- a/docs/usersguide.htm +++ b/docs/usersguide.htm @@ -2,7 +2,7 @@ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-This is the complete guide to installing, configuring, and - troubleshooting weeWX. + troubleshooting WeeWX.
-WeeWX is software, written in Python, that @@ -81,14 +81,14 @@ Version: 3.9
WeeWX includes support for many types of weather stations. In addition to hardware - support, weeWX comes with a software + support, WeeWX comes with a software simulator, useful for testing and evaluation.
The driver compatibility table in the hardware guide has a detailed list of the manufacturers and models supported by the drivers that come with - weeWX. If you do + WeeWX. If you do not see your hardware in this table, check the list of supported hardware; the pictures may help you identify the manufacturer and/or model. @@ -111,7 +111,7 @@ Version: 3.9 language. Nevertheless, it is "fast enough" on just about any hardware. It has been run on everything from an early MacBook to a router!
-I run weeWX on a Fit-PC with a 500 MHz AMD +
I run WeeWX on a Fit-PC with a 500 MHz AMD Geode processor and 512 MB of memory. Configured this way, it consumes about 5% of the CPU, 100 MB of virtual memory, and 20 MB of real memory.
@@ -130,9 +130,9 @@ Version: 3.9 as the Weather Underground.The time on some stations is automatically synchronized with the - weeWX server nominally every four hours. + WeeWX server nominally every four hours. The synchronization frequency can be adjusted in the - weeWX configuration.
+ WeeWX configuration.There are a few places where permissions affect weeWX: +
There are a few places where permissions affect WeeWX:
Normally weeWX is installed and run with +
Normally WeeWX is installed and run with administrative (root) permissions. However, it is not uncommon to - install and run weeWX as a generic - non-root user, or even as a user created specifically to run weeWX. + install and run WeeWX as a generic + non-root user, or even as a user created specifically to run WeeWX.
-In the world of open-source hobbyist software, - weeWX is pretty easy to install and + WeeWX is pretty easy to install and configure. There are not many package dependencies, the configuration is simple, and this guide includes extensive instructions. @@ -191,7 +191,7 @@ Version: 3.9 permissions and running commands;
This is an outline of the process to install, configure, and run - weeWX:
+ WeeWX:- Weewx can be installed from a DEB (Debian) or RPM + WeeWX can be installed from a DEB (Debian) or RPM (Redhat, SUSE) package, or it can be installed using the standard Python utility setup.py.
@@ -242,7 +242,7 @@ Version: 3.9The DEB or RPM package approach is simpler and is the recommended method for beginners. However, it requires root privileges, and will install the - bits and pieces of weeWX in standard + bits and pieces of WeeWX in standard operating system locations across the file system instead of in a single directory. The net effect is that configuration files, templates, and code will all be installed in separate locations, most @@ -252,13 +252,13 @@ Version: 3.9
Installation using setup.py is the recommended method for those who plan to write custom services and - reports for weeWX. It will put everything + reports for WeeWX. It will put everything in a single directory, specified by the parameter home in the setup.cfg file, making it - easier to modify weeWX. This file is not + easier to modify WeeWX. This file is not used by the other installation methods. If the user installing - weeWX has permission to write to the directory, root privileges - will not be required to install, run, or modify weeWX. + WeeWX has permission to write to the directory, root privileges + will not be required to install, run, or modify WeeWX.
For all other operating systems, follow the setup.py instructions. This method can also be used on Debian-, Redhat-, and SUSE-based operating systems as well, - and may be a better choice if you intend to heavily customize weeWX. + and may be a better choice if you intend to heavily customize WeeWX.
WeeWX can be run either directly, or as a daemon. When first trying - weeWX, it is best to run it directly + WeeWX, it is best to run it directly because you will be able to see sensor output and diagnostics, as well as log messages. Once everything is working properly, run it as a daemon.
To run weeWX directly, invoke +
To run WeeWX directly, invoke the main program, weewxd, giving the configuration file as its only parameter:
sudo weewxd weewx.conf@@ -601,7 +601,7 @@ Version: 3.9 once every two seconds for a Vantage station, or considerably longer for some other stations. -
You can tell a running instance of weeWX to +
You can tell a running instance of WeeWX to reread its configuration file by sending it the HUP signal. First run ps to find out the Process ID (PID) @@ -613,7 +613,7 @@ Version: 3.9
For unattended operations it is best to have weeWX +
For unattended operations it is best to have WeeWX run as a daemon, started automatically when the server is rebooted.
If you use a packaged install from a DEB or RPM distribution, this is @@ -638,7 +638,7 @@ Version: 3.9
Check the chosen script to make sure the variable WEEWX_ROOT has been set to the proper root directory for your - weeWX installation (it should have been set to the correct value automatically + WeeWX installation (it should have been set to the correct value automatically by the install process, but it is worth checking).
Copy it to the proper location for your system:
@@ -687,12 +687,12 @@ Version: 3.9WeeWX will now start automatically whenever your system is booted. - You can also manually start, stop, and restart the weeWX daemon: + You can also manually start, stop, and restart the WeeWX daemon:
sudo /etc/init.d/weewx start sudo /etc/init.d/weewx stop sudo /etc/init.d/weewx restart-
By default, the scripts are designed to have weeWX +
By default, the scripts are designed to have WeeWX run at run levels 2, 3, 4 and 5. Incidentally, a nice tool for setting run levels with Debian (Ubuntu, Mint) systems is sysv-rc-conf. It uses a curses @@ -701,12 +701,12 @@ sudo /etc/init.d/weewx restart Center, then look for Systems Services (Runlevel). Pick "Expert" mode to see the run levels.
-You can also tell weeWX to reread its configuration +
You can also tell WeeWX to reread its configuration file without stopping by using the 'reload' option:
sudo /etc/init.d/weewx reload-
WeeWX logs many events to the system log. On Debian systems, this is /var/log/syslog, @@ -729,10 +729,10 @@ sudo /etc/init.d/weewx restart
The reports generated by weeWX can be +
The reports generated by WeeWX can be served by a web server running on the same computer as - weeWX. These are instructions for making - weeWX reports available via the Apache + WeeWX. These are instructions for making + WeeWX reports available via the Apache web server. The process is similar for other web servers such as nginx or lighthttpd.
@@ -740,16 +740,16 @@ sudo /etc/init.d/weewx restartInstall the Apache web server on the computer on which - weeWX is running. For example, on Debian systems:
+ WeeWX is running. For example, on Debian systems:sudo apt-get install apache2
Configure Apache to see the weeWX reports.
+Configure Apache to see the WeeWX reports.
If weeWX was installed from DEB or RPM package, no +
If WeeWX was installed from DEB or RPM package, no configuration should be necessary since the reports are placed in the directory /var/www/html/weewx, @@ -757,9 +757,9 @@ sudo /etc/init.d/weewx restart /var/www/html
If weeWX was installed using +
If WeeWX was installed using setup.py, you must tell - Apache where to find the weeWX reports. + Apache where to find the WeeWX reports. One method is to install an Apache configuration snippet:
@@ -768,7 +768,7 @@ sudo /etc/init.d/weewx restartBe sure that the path in the Apache configuration snippet matches the HTML_ROOT defined in the - weeWX configuration file. For example, + WeeWX configuration file. For example, the path for a default setup.py installation would look like this:
@@ -786,18 +786,18 @@ sudo /etc/init.d/weewx restartOpen the weeWX URL in a web browser:
+Open the WeeWX URL in a web browser:
http://localhost/weewx
Use FTP or RSYNC to transfer the files generated by weeWX to your - remote server. In weeWX, FTP and RSYNC +
Use FTP or RSYNC to transfer the files generated by WeeWX to your + remote server. In WeeWX, FTP and RSYNC are implemented as reports. They are configured in the [StdReport] section of the - weeWX configuration file.
+ WeeWX configuration file.For example, the following configuration would use RSYNC to copy the html and images files from the standard report to a folder /var/www/html/weewx on the server @@ -829,17 +829,17 @@ sudo /etc/init.d/weewx restart
- To backup a weeWX installation, you will need to make a copy of + To backup a WeeWX installation, you will need to make a copy of
It is not necessary to backup the generated images, HTML files, or - NOAA reports since weeWX will easily + NOAA reports since WeeWX will easily create these again.
@@ -921,8 +921,8 @@ sudo /etc/init.d/weewx restart Do not make the copy of the SQLite database while in the middle of a transaction! Schedule the backup for immediately after an archive record is written, and then make sure the backup completes - before the next archive record arrives. Alternatively, stop weeWX, - perform the backup, then restart weeWX. + before the next archive record arrives. Alternatively, stop WeeWX, + perform the backup, then restart WeeWX.@@ -933,8 +933,8 @@ sudo /etc/init.d/weewx restart
To restore from backup, do a fresh install of - weeWX, replace the default files with - those from a backup, then start weeWX. + WeeWX, replace the default files with + those from a backup, then start WeeWX.
@@ -956,8 +956,8 @@ sudo /etc/init.d/weewx restartsudo apt-get install python-mysqldb-
Next, change the weeWX configuration to use MySQL instead of - SQLite. In the weeWX configuration file, change the +
Next, change the WeeWX configuration to use MySQL instead of
+ SQLite. In the WeeWX configuration file, change the
[[wx_binding]]
section to point to the MySQL database,
archive_mysql,
@@ -1002,7 +1002,7 @@ mysql> GRANT select, update, create, delete, insert, drop O
The SQLite archive database used by weeWX
+ The SQLite archive database used by WeeWX
(nominally, weewx.sdb) is completely
compatible with the database used by
wview (usually called
@@ -1011,7 +1011,7 @@ mysql> GRANT select, update, create, delete, insert, drop O
If you have data from wview, you can
- 'import' them into weeWX by simply copying the
+ 'import' them into WeeWX by simply copying the
SQLite database file. Assuming that the wview
data are in file
/var/wview/archive/wview-archive.sdb,
Internally, within the weewx.sdb database,
- weeWX also maintains a "daily summary" of all the statistics. This
+ WeeWX also maintains a "daily summary" of all the statistics. This
is done for performance reasons. The daily summary will
automatically be built on the first startup. This could take
a few minutes if the wview archive contains
@@ -1040,13 +1040,13 @@ sudo /etc/init.d/weewx start
The MySQL archive database used by wview is "almost" compatible with
- weeWX. The one difference is that in wview, the column interval
is named arcInt (presumably because
interval is a keyword in MySQL, although it can
still be used by surrounding the word with backquotes). To change the column name to what weeWX uses, namely To change the column name to what WeeWX uses, namely interval,
use the utility mysql and issue the command: The configuration file weewx.conf is a big
text file that holds the configuration information about your
- installation of weeWX. This includes things such as:sqlite3
- MySQL
mysql> ALTER TABLE your-wview-archive-name CHANGE arcInt `interval` INTEGER NOT NULL;
@@ -1067,7 +1067,7 @@ sudo /etc/init.d/weewx start
Default values are provided for many options, meaning that if they are not listed in the configuration file at all, - weeWX will pick sensible values. When the + WeeWX will pick sensible values. When the documentation below gives a "default value" this is what it means.
@@ -1121,7 +1121,7 @@ sudo /etc/init.d/weewx startWEEWX_ROOT
-Set to the root directory of the weeWX file hierarchy for this +
Set to the root directory of the WeeWX file hierarchy for this station. Normally, this is set automatically by the installation process. Required. No default.
@@ -1140,11 +1140,11 @@ sudo /etc/init.d/weewx startloop_on_init
-Normally, if the hardware driver fails to load, weewx will exit. The assumption +
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. + WeeWX do a retry. Setting this option to 1 will cause WeeWX to keep retrying indefinitely.
If you have a website, you may optionally specify an URL for its HTML server. It will be included in the RSS file generated - by weeWX and, if you choose to opt into the station + by WeeWX and, if you choose to opt into the station registry, it will also be included in the - map of weewx stations.
+ map of WeeWX stations.Example:
station_url = http://www.mywebsite.com@@ -1280,7 +1280,7 @@ longitude = -77.0366
This section is for options relating to the software weather - station simulator that comes with weeWX.
+ station simulator that comes with WeeWX.loop_interval
@@ -1346,7 +1346,7 @@ longitude = -77.0366polling_interval
The polling_interval determines how often - weeWX will query the station for data. The default is 1 second. + WeeWX will query the station for data. The default is 1 second.
sensor_map
@@ -1394,10 +1394,10 @@ longitude = -77.0366One of PERIODIC or
ADAPTIVE. In
PERIODIC mode,
- weeWX queries the console at regular intervals
+ WeeWX queries the console at regular intervals
determined by the polling_interval.
In ADAPTIVE mode,
- weeWX attempts to query the
+ WeeWX attempts to query the
console at times when it is not reading data from the sensors or writing
data to memory. See the section
@@ -1406,7 +1406,7 @@ longitude = -77.0366
polling_interval The frequency, in seconds, at which weeWX will
+ The frequency, in seconds, at which WeeWX will
poll the console for data. Default is 60. This setting applies only
when the polling_mode is
PERIODIC.
The wmr200 hardware records archive data at an immutable rate of 60 - seconds. This field may be set to a higher value enabling the weeWX + seconds. This field may be set to a higher value enabling the WeeWX engine to coalesce live data packets. However, when the wmr200 is not - connected to a system via USB or if the weeWX software is not running, + connected to a system via USB or if the WeeWX software is not running, the wmr200 console will continue to store weather data in onboard console memory at a fixed rate of 60 seconds.
@@ -1724,7 +1724,7 @@ longitude = -77.0366polling_interval
The polling_interval determines how often - weeWX will query the station for data. The + WeeWX will query the station for data. The default is 1 second.
@@ -1748,9 +1748,9 @@ longitude = -77.0366polling_interval
The polling_interval determines how often - weeWX will query the station for data. If no + WeeWX will query the station for data. If no polling_interval is specified (the default), - weeWX will automatically use a polling interval + WeeWX will automatically use a polling interval based on the type of connection between the station and the sensors (wired or wireless). When connected with a wire, the console updates sensor data every 8 seconds. When connected wirelessly, the console @@ -1784,7 +1784,7 @@ longitude = -77.0366
A registry of weeWX weather stations +
A registry of WeeWX weather stations is maintained at weewx.com. Stations are displayed on a map and a list at http://weewx.com/stations.html @@ -1793,7 +1793,7 @@ longitude = -77.0366
How does the registry work? Individual weather stations periodically contact the registry. Each station provides a URL to identify itself, plus other information such as the station type - and weeWX version. No personal information, nor + and WeeWX version. No personal information, nor any meteorological data, is sent.
To add your station to this list, you must do two things:
@@ -1937,7 +1937,7 @@ longitude = -77.0366How old a record can be before it will not be used for a catch up. CWOP does not use the timestamp on a posted record. Instead, they use the wall clock time that it came in. This means that if your station is off the - air for a long period of time, then when weeWX + air for a long period of time, then when WeeWX attempts a catch up, old data could be interpreted as the current conditions. Optional. Default is 600 seconds.
@@ -2077,7 +2077,7 @@ longitude = -77.0366rapidfire
- Set to True to have weeWX + Set to True to have WeeWX post using the Weather Underground's "Rapidfire" protocol. This will send a post to the @@ -2094,7 +2094,7 @@ longitude = -77.0366
archive_post
- This option tells weeWX to post on every + This option tells WeeWX to post on every archive record, which is the normal "PWS" mode for the Weather Underground. Because they prefer that you either use their "Rapidfire" protocol, or their PWS mode, but not both, the default @@ -2105,7 +2105,7 @@ longitude = -77.0366
post_indoor_observations
-In the interest of respecting your privacy, weeWX does not +
In the interest of respecting your privacy, WeeWX does not post indoor temperature or humidity to the Weather Underground unless you set this option to True. Default is False. @@ -2352,7 +2352,7 @@ longitude = -77.0366
If you wish to use rsync, you must configure passwordless ssh using - public/private key authentication from the user account that weewx + 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. @@ -2632,7 +2632,7 @@ longitude = -77.0366
For example, if your weather station calculates windchill using the pre-2001 algorithm, and you prefer to have - weeWX calculate it using a current algorithm, + WeeWX calculate it using a current algorithm, specify the following:
[StdWXCalculate] @@ -2665,9 +2665,9 @@ longitude = -77.0366
Set to whether records should be downloaded off the hardware (recommended), or generated in software. If set to hardware, then - weeWX tries to download archive records from your + WeeWX tries to download archive records from your station. However, not all types of stations support this, in which case - weeWX falls back to software generation. A setting + WeeWX falls back to software generation. A setting of hardware will work for most users. A notable exception is users who have cobbled together homebrew serial interfaces for the Vantage stations @@ -2901,9 +2901,9 @@ longitude = -77.0366
This section is used to configure the internal service engine in - weeWX. It is for advanced customization. Details + WeeWX. It is for advanced customization. Details on how to do this can be found in the section - Customizing the weeWX + Customizing the WeeWX service engine of the Customization Guide.
@@ -2912,14 +2912,14 @@ longitude = -77.0366- Internally, weeWX consists of many services, + Internally, WeeWX consists of many services, each responsible for some aspect of the program's functionality. After an event happens, such as the arrival of a new LOOP packet, any interested service gets a chance to do some useful work on the event. For example, a service might manipulate the packet, print it out, store it in a database, etc. This section controls which services are loaded and in what - order they get their opportunity to do that work. Before weeWX + order they get their opportunity to do that work. Before WeeWX v2.6, this section held one, looong option called service_list, which held the names of all the services that should be run. Since then, this @@ -2980,7 +2980,7 @@ report_services = weewx.engine.StdPrint, weewx.engine.StdReport
This section lists some common problems installing and running - weeWX. If you are stuck, be sure to:
+ WeeWX. If you are stuck, be sure to:If you are unable to get anything out of weeWX +
If you are unable to get anything out of WeeWX first check that you have connectivity to your weather station. For the Davis stations, you can use a terminal emulator to run a simple test. Set it up to communicate using the appropriate port and baudrate. I @@ -3081,7 +3081,7 @@ report_services = weewx.engine.StdPrint, weewx.engine.StdReport
The USB converter used in the Davis VantagePro is known to have some "noise" problems. The symptom is that the Linux kernel will disconnect from your old USB port claiming "EMI noise", and reconnect to a new and different - port, where weeWX cannot find it. Here is a + port, where WeeWX cannot find it. Here is a typical log output:
Nov 29 10:40:21 hummingbird kernel: [6661624.786792] hub 2-0:1.0: port 3 disabled by hub (EMI?) re-enabling...
@@ -3165,7 +3165,7 @@ ACTION=="add",ATTRS{idVendor}=="05ad",ATTRS{idProduct}=="0fba",MODE="0666",SYMLI
I have tested this system many times. You can yank the USB port out of the
machine and then plug it back in while also pulling out the network connection
- in the middle of an FTP upload: weeWX will recover.
+ in the middle of an FTP upload: WeeWX will recover.
Or, at least, it should!
@@ -3184,7 +3184,7 @@ ACTION=="add",ATTRS{idVendor}=="05ad",ATTRS{idProduct}=="0fba",MODE="0666",SYMLI
in the future, then records from the station that are older than that
future date will be ignored. How can the database contain records from
the future? Sometimes the computer clock is not set correctly. For
- example, the raspberry pi has no clock, so if weeWX saves data before
+ example, the raspberry pi has no clock, so if WeeWX saves data before
the pi has synchronized its clock with internet time servers, the
records will have incorrect time stamps, some of which might be in the
future.
@@ -3204,7 +3204,7 @@ sqlite> .exit
If you have a Vantage station, the problem might be because the data on board your console has become garbled. The way the Davis Vantage series - works is that the software (weeWX in this case) + works is that the software (WeeWX in this case) asks the console for all archive data "since" some time. The console then downloads the records one at a time. After it gets to the very last one, the memory wraps around, and the timestamp will suddenly @@ -3213,7 +3213,7 @@ sqlite> .exit
However, if the internal memory gets garbled, the console will immediately return archives in the past, and so it looks like the timestamps have decreased - in value and so weeWX figures that is it: there is + in value and so WeeWX figures that is it: there is no more data. Here is what the log typically looks like (with debug=1):
Nov 26 14:20:15 raspberrypi weewx[3849]: vantage: Getting archive packets since 2016-11-25 19:55:00 CET (1480100100) @@ -3233,11 +3233,11 @@ Nov 26 14:20:20 raspberrypi weewx[3849]: reportengine: copied 9 files to /var/ww Nov 26 14:20:20 raspberrypi weewx[3849]: reportengine: Running report FTP Nov 26 14:20:20 raspberrypi weewx[3849]: reportengine: Found configuration file /etc/weewx/skins/Ftp/skin.conf for report FTP-
Note how weeWX did a DMPAFT command +
Note how WeeWX did a DMPAFT command ("Getting archive packets since 2016-11-25 19:55:00"). The console responded that it has lots of records after that time ("Retrieving 45 page(s); starting index= 1"), - but when weeWX actually tries to retrieve them, they are all before the requested time. + but when WeeWX actually tries to retrieve them, they are all before the requested time.
There seems to be two fixes:
For these interfaces, you must set record generation to software. - Without this information, weeWX is unable to detect + Without this information, WeeWX is unable to detect the absence of onboard memory. If you do not do this, you will get errors that look like the following in your syslog:
Nov 27 20:30:21 rpi weewx[5607]: reportengine: Caught unrecoverable exception in generator weewx.filegenerator.FileGenerator
@@ -3301,7 +3301,7 @@ Nov 27 20:30:23 rpi weewx[5607]: genimages: Generated 11 images in 2.53 seconds<
See the Wiki
for up-to-date information on
- Running weeWX on a Raspberry Pi.
+ Running WeeWX on a Raspberry Pi.
Fine Offset USB lockups
@@ -3319,7 +3319,7 @@ Nov 27 20:30:23 rpi weewx[5607]: genimages: Generated 11 images in 2.53 seconds<
message. Unfortunately, we have not found a software cure for
this. Instead, you must power cycle the unit. Remove the
batteries and unplug the USB, then put it back together. No
- need to restart weeWX.
+ need to restart WeeWX.
More details about Fine Offset lockups
can be found in the
@@ -3329,9 +3329,9 @@ Nov 27 20:30:23 rpi weewx[5607]: genimages: Generated 11 images in 2.53 seconds<
Most hardware with data-logging includes a parameter to specify
the archive interval used by the logger. If the hardware and driver
- support it, weeWX will use this interval
+ support it, WeeWX will use this interval
as the archive_interval. If not,
- weeWX will fall back to the
+ WeeWX will fall back to the
archive_interval specified in
[StdArchive].
The default fallback value is 300 seconds (5 minutes).
@@ -3339,10 +3339,10 @@ Nov 27 20:30:23 rpi weewx[5607]: genimages: Generated 11 images in 2.53 seconds<
If the hardware archive interval is large, it will take a
long time before anything shows up in the
- weeWX reports. For example, WS23xx stations
+ WeeWX reports. For example, WS23xx stations
ship with an archive interval of 60 minutes, and Fine Offset stations
ship with an archive interval of 30 minutes.
- If you run weeWX with a WS23xx station in
+ If you run WeeWX with a WS23xx station in
its factory default configuration, it will take 60 minutes before the
first data point shows up, then another 60 minutes until the next one,
and so on.
@@ -3365,7 +3365,7 @@ Nov 27 20:30:23 rpi weewx[5607]: genimages: Generated 11 images in 2.53 seconds<
Nothing in the log file
- As it is running, weeWX periodically sends
+
As it is running, WeeWX periodically sends
status information, failures, and other things to your system's logging
facility. They typically look something like this:
-DATE- --TIME-- HOST weewx[-PID-]: LOG_MESSAGE
@@ -3381,7 +3381,7 @@ Jan 1 09:46:32 saga weewx[15292]: wxengine: pid file is /var/run/weewx.pid
However, some systems default to saving only warning or
critical information, so the info
- messages from weeWX may not appear.
+ messages from WeeWX may not appear.
If this happens to you, check your system logging configuration.
On Debian systems, look
in /etc/rsyslog.conf. On Redhat
@@ -3391,7 +3391,7 @@ Jan 1 09:46:32 saga weewx[15292]: wxengine: pid file is /var/run/weewx.pidThese are errors in the configuration file. Two are very common.
Incidentally, these errors are far easier to diagnose when
- weeWX is run directly than when it is run
+ WeeWX is run directly than when it is run
as a daemon.
you have a tag in your template that weeWX +
you have a tag in your template that WeeWX does not recognize. In this example, it is the tag $fubar in the template /home/weewx/skins/Standard/index.html.tmpl. @@ -3494,14 +3494,14 @@ Jan 18 20:39:09 rpi weewx[5977]: **** Expected to read 99 chars; got 2 in Jan 18 20:39:14 rpi weewx[5977]: VantagePro: LOOP #15; read error. Try #4 Jan 18 20:39:14 rpi weewx[5977]: **** Expected to read 99 chars; got 2 instead
If you look closely at the log above, you'll see that there are - multiple instances of weeWX running + multiple instances of WeeWX running simultaneously (process IDs 5977, 6024, and 7543). They are contending with each other for control of the console, resulting in missed packets and records.
The cure is simple: kill all but one of them. Or, better yet, - kill them all, then start weeWX.
+ kill them all, then start WeeWX.As for the archive interval, check the log file for an entry like this - soon after weeWX starts up:
+ soon after WeeWX starts up:Dec 30 10:54:17 saga weewx[10035]: wxengine: The archive interval in the configuration file (300) does not match the station hardware interval (1800). Dec 30 10:54:17 saga weewx[10035]: wxengine: Using archive interval of 1800@@ -3526,7 +3526,7 @@ Dec 30 10:54:17 saga weewx[10035]: wxengine: Using archive interval of 1800In this example, interval in weewx.conf is 5 minutes, but the station interval is 30 minutes. When the interval in weewx.conf does not match the station's - hardware interval, weeWX defers to the + hardware interval, WeeWX defers to the station's interval.
Use the wee_device utility to change @@ -3557,7 +3557,7 @@ Dec 30 10:54:17 saga weewx[10035]: wxengine: Using archive interval of 1800
cp weewx.sdb weewx-YYMMDD.sdb
sqlite> update archive set windSpeed=NULL where outTemp > 1000; sqlite> update archive set outTemp=NULL where outTemp > 1000;
sudo wee_database --drop-daily
If you modify the SQLite archive database using an editing tool, occasionally strings will get embedded in it, causing - weeWX to raise + WeeWX to raise an exception. This is only a problem with SQLite. There is no analogous problem with MySQL databases. You will see errors in the system log that look something like this:
@@ -3648,7 +3648,7 @@ Dec 31 17:01:06 arm weewx[18141]: **** Exiting.WeeWX should work with Python version 2.5, but it will take some fiddling.
The version of pysqlite that comes with Python 2.5 does not support the "with" - statement, which is required by weeWX. Unfortunately, the most modern version + statement, which is required by WeeWX. Unfortunately, the most modern version of pysqlite no longer supports Python 2.5, so you will have to install an "intermediate" version. I found that version 2.5.6, which can be downloaded from PyPI, works well. Download it, unpack the tarball, then use the included @@ -3671,7 +3671,7 @@ Dec 31 17:01:06 arm weewx[18141]: **** Exiting. apt-get install libsqlite3-dev Then rerun the installation of pysqlite.
File "/usr/lib/python2.5/site-packages/PIL-1.1.7-py2.5-linux-x86_64.egg/ImageFont.py", line 218, in truetype
return FreeTypeFont(filename, size, index, encoding)
@@ -3733,7 +3733,7 @@ port = /dev/cuaU0
specified for the option
unit_label_font_path in your
skin.conf file and, instead,
- weeWX is substituting a default font, which does not
+ WeeWX is substituting a default font, which does not
support the Unicode character necessary to make a degree sign. Look in
section [ImageGenerator] for a line
that looks like:
@@ -3786,7 +3786,7 @@ May 14 13:35:23 web weewx[5633]: **** Generator terminated...
If weeWX appears to be running normally but +
If WeeWX appears to be running normally but some or all reports are not being run, either all the time or periodically, the problem could be the inadvertant use or incorrect setting of the report_timing option in @@ -3838,7 +3838,7 @@ May 14 13:35:23 web weewx[5633]: **** Generator terminated...
@@ -3850,21 +3850,21 @@ May 14 13:35:23 web weewx[5633]: **** Generator terminated... The Station Pressure (SP), which is the raw, absolute pressure measured by the station. This is pressure in - weeWX packets and archive records. + WeeWX packets and archive records.
Be sure that the calibration is applied to the correct quantity. @@ -3901,16 +3901,16 @@ May 14 13:35:23 web weewx[5633]: **** Generator terminated... if the hardware is a Vantage station, the correction must be applied to barometer since the Vantage station reports barometer and - weeWX calculates + WeeWX calculates pressure. However, if the hardware is a FineOffset station, the correction must be applied to pressure since the FineOffset stations report pressure and - weeWX calculates + WeeWX calculates barometer.
-@@ -3927,7 +3927,7 @@ May 14 13:35:23 web weewx[5633]: **** Generator terminated...
The rain rate is a derived quantity. Some stations report a rain - rate, but for those that do not, weeWX will calculate the rain + rate, but for those that do not, WeeWX will calculate the rain rate.
@@ -3945,9 +3945,9 @@ May 14 13:35:23 web weewx[5633]: **** Generator terminated...- To diagnose rain issues, run weeWX directly so that you can see + To diagnose rain issues, run WeeWX directly so that you can see each LOOP packet and REC archive record. Tip the bucket to verify - that each bucket tip is detected and reported by weeWX. Verify + that each bucket tip is detected and reported by WeeWX. Verify that each bucket tip is converted to the correct rainfall amount. Then check the database to verify that the values are properly added and recorded.