Driver status
The following table enumerates many of the weather stations that are known to work with WeeWX. If your station is not in the table, check the pictures at the supported hardware page — it could be a variation of one of the supported models. You can also check the station comparison table — sometimes new models use the same communication protocols as older hardware.
The maturity column indicates the degree of confidence in the driver. For stations marked Tested, the station is routinely tested as part of the release process and should work as documented. For stations not marked at all, they are "known to work" using the indicated driver, but are not routinely tested. For stations marked Experimental, we are still working on the driver. There can be problems.
Vendor | Model | Hardware Interface |
Required Package |
Station Driver |
Maturity |
AcuRite | 01025 | USB | pyusb | AcuRite12 | |
01035 | USB | pyusb | AcuRite12 | Tested | |
01036 | USB | pyusb | AcuRite12 | ||
01525 | USB | pyusb | AcuRite12 | ||
02032 | USB | pyusb | AcuRite12 | ||
02064 | USB | pyusb | AcuRite12 | ||
06037 | USB | pyusb | AcuRite12 | ||
06039 | USB | pyusb | AcuRite12 | ||
Argent Data Systems | WS1 | Serial | pyusb | WS19 | |
Aercus | WS2083 | USB | pyusb | FineOffsetUSB5 | |
WS3083 | USB | pyusb | FineOffsetUSB5 | ||
Ambient Weather | WS1090 | USB | pyusb | FineOffsetUSB5 | Tested |
WS2080 | USB | pyusb | FineOffsetUSB5 | Tested | |
WS2080A | USB | pyusb | FineOffsetUSB5 | Tested | |
WS2090 | USB | pyusb | FineOffsetUSB5 | ||
WS2095 | USB | pyusb | FineOffsetUSB5 | ||
Cresta | WRX815 | USB | pyusb | TE9238 | |
PWS720 | USB | pyusb | TE9238 | ||
DAZA | DZ-WH1080 | USB | pyusb | FineOffsetUSB5 | |
DZ-WS3101 | USB | pyusb | FineOffsetUSB5 | ||
DZ-WS3104 | USB | pyusb | FineOffsetUSB5 | ||
Davis | VantagePro2 | Serial or USB | pyserial | Vantage1 | Tested |
VantagePro2 | WeatherLink IP | Vantage1 | Tested | ||
VantageVue | Serial or USB | pyserial | Vantage1 | Tested | |
Elecsa | 6975 | USB | pyusb | FineOffsetUSB5 | |
6976 | USB | pyusb | FineOffsetUSB5 | ||
Excelvan | Excelvan | USB | pyusb | FineOffsetUSB5 | |
Fine Offset | WH1080 | USB | pyusb | FineOffsetUSB5 | |
WH1081 | USB | pyusb | FineOffsetUSB5 | ||
WH1091 | USB | pyusb | FineOffsetUSB5 | ||
WH1090 | USB | pyusb | FineOffsetUSB5 | ||
WS1080 | USB | pyusb | FineOffsetUSB5 | ||
WA2080 | USB | pyusb | FineOffsetUSB5 | ||
WA2081 | USB | pyusb | FineOffsetUSB5 | ||
WH2080 | USB | pyusb | FineOffsetUSB5 | ||
WH2081 | USB | pyusb | FineOffsetUSB5 | ||
WH3080 | USB | pyusb | FineOffsetUSB5 | ||
WH3081 | USB | pyusb | FineOffsetUSB5 | ||
Froggit | WS8700 | USB | pyusb | TE9238 | |
WH1080 | USB | pyusb | FineOffsetUSB5 | ||
WH3080 | USB | pyusb | FineOffsetUSB5 | ||
General Tools | WS831DL | USB | pyusb | TE9238 | |
Hideki | DV928 | USB | pyusb | TE9238 | |
TE821 | USB | pyusb | TE9238 | ||
TE827 | USB | pyusb | TE9238 | ||
TE831 | USB | pyusb | TE9238 | ||
TE838 | USB | pyusb | TE9238 | ||
TE923 | USB | pyusb | TE9238 | ||
Huger | WM918 | Serial | pyserial | WMR9x84 | |
IROX | Pro X | USB | pyusb | TE9238 | |
La Crosse | C86234 | USB | pyusb | WS28xx7 | Tested |
WS-1640 | USB | pyusb | TE9238 | ||
WS-23XX | Serial | fcntl/select | WS23xx6 | Tested | |
WS-28XX | USB | pyusb | WS28xx7 | ||
Maplin | N96GY | USB | pyusb | FineOffsetUSB5 | |
N96FY | USB | pyusb | FineOffsetUSB5 | ||
Meade | TE923W | USB | pyusb | TE9238 | Tested |
TE923W-M | USB | pyusb | TE9238 | ||
TE924W | USB | pyusb | TE9238 | ||
Mebus | TE923 | USB | pyusb | TE9238 | |
National Geographic | 265 | USB | pyusb | FineOffsetUSB5 | |
Oregon Scientific | WMR88 | USB | pyusb | WMR1002 | |
WMR88A | USB | pyusb | WMR1002 | ||
WMR100 | USB | pyusb | WMR1002 | ||
WMR100N | USB | pyusb | WMR1002 | Tested | |
WMR180 | USB | pyusb | WMR1002 | ||
WMR180A | USB | pyusb | WMR1002 | ||
WMRS200 | USB | pyusb | WMR1002 | ||
WMR300 | USB | pyusb | WMR3003 | Experimental | |
WMR300A | USB | pyusb | WMR3003 | Experimental | |
WMR918 | Serial | pyserial | WMR9x84 | ||
WMR928N | Serial | pyserial | WMR9x84 | Tested | |
WMR968 | Serial | pyserial | WMR9x84 | Tested | |
PeetBros | Ultimeter 100 | Serial | pyserial | Ultimeter10 | |
Ultimeter 800 | Serial | pyserial | Ultimeter10 | ||
Ultimeter 2000 | Serial | pyserial | Ultimeter10 | ||
Ultimeter 2100 | Serial | pyserial | Ultimeter10 | ||
RainWise | Mark III | Serial | pyserial | CC300011 | |
CC3000 | Serial | pyserial | CC300011 | Tested | |
Radio Shack | 63-256 | USB | pyusb | WMR1002 | |
63-1016 | Serial | pyserial | WMR9x84 | ||
Sinometer | WS1080 / WS1081 | USB | pyusb | FineOffsetUSB5 | |
WS3100 / WS3101 | USB | pyusb | FineOffsetUSB5 | ||
TechnoLine | WS-2300 | Serial | fcntl/select | WS23xx6 | |
WS-2350 | Serial | fcntl/select | WS23xx6 | ||
TFA | Matrix | Serial | fcntl/select | WS23xx6 | |
Nexus | USB | pyusb | TE9238 | ||
Opus | USB | pyusb | WS28xx7 | ||
Primus | USB | pyusb | WS28xx7 | ||
Sinus | USB | pyusb | TE9238 | ||
Tycon | TP1080WC | USB | pyusb | FineOffsetUSB5 | |
Watson | W-8681 | USB | pyusb | FineOffsetUSB5 | |
WX-2008 | USB | pyusb | FineOffsetUSB5 | ||
Velleman | WS3080 | USB | pyusb | FineOffsetUSB5 | |
Ventus | W831 | USB | pyusb | TE9238 | |
W928 | USB | pyusb | TE9238 |
- Davis "Vantage" series of weather stations, including the VantagePro2™ and VantageVue™, using serial, USB, or WeatherLinkIP™ connections. Both the "Rev A" (firmware dated before 22 April 2002) and "Rev B" versions are supported.
- Oregon Scientific WMR-100 stations. Tested on the Oregon Scientific WMR100N.
- Oregon Scientific WMR-300 stations. Tested on the Oregon Scientific WMR300A.
- Oregon Scientific WMR-9x8 stations. Tested on the Oregon Scientific WMR968.
- Fine Offset 10xx, 20xx, and 30xx stations. Tested on the Ambient Weather WS2080.
- La Crosse WS-23xx stations. Tested on the La Crosse 2317.
- La Crosse WS-28xx stations. Tested on the La Crosse C86234.
- Hideki Professional Weather Stations. Tested on the Meade TE923.
- ADS WS1 Stations. Tested on the WS1.
- PeetBros Ultimeter Stations. Tested on the Ultimeter 2000.
- RainWise Mark III Stations. Tested on the CC3000 (firmware "Rainwise CC-3000 Version: 1.3 Build 022 Dec 02 2016").
- AcuRite Weather Stations. Tested on the 01036RX.
AcuRite
According to Acurite, the wind speed updates every 18 seconds. The wind direction updates every 30 seconds. Other sensors update every 60 seconds.
In fact, because of the message structure and the data logging design, these are the actual update frequencies:
sensor | period |
---|---|
Wind speed | 18 seconds |
Outdoor temperature, outdoor humidity | 36 seconds |
Wind direction, rain total | 36 seconds |
Indoor temperature, pressure | 60 seconds |
Indoor humidity | 12 minutes (only when in USB mode 3) |
The station emits partial packets, which may confuse some online services.
The AcuRite stations do not record wind gusts.
Some consoles have a small internal logger. Data in the logger are erased when power is removed from the station.
The console has a sensor for inside humidity, but the values from that sensor are available only by reading from the console logger. Due to instability of the console firmware, the WeeWX driver does not read the console logger.
USB Mode
Some AcuRite consoles have a setting called "USB Mode" that controls how data are saved and communicated:
Mode | Show data in display |
Store data in logger |
Send data over USB |
---|---|---|---|
1 | yes | yes | |
2 | yes | ||
3 | yes | yes | yes |
4 | yes | yes |
If the AcuRite console has multiple USB modes, it must be set to USB mode 3 or 4 in order to work with the WeeWX driver.
Communication via USB is disabled in modes 1 and 2. Mode 4 is more reliable than mode 3; mode 3 enables logging of data, mode 4 does not. When the console is logging it frequently causes USB communication problems.
The default mode is 2, so after a power failure one must use the console controls to change the mode before WeeWX can resume data collection.
The 01025, 01035, 01036, 01525, and 02032 consoles have a USB mode setting.
The 02064 and 01536 consoles do not have a mode setting; these consoles are always in USB mode 4.
Configuring with wee_device
The wee_device utility cannot be used to configure AcuRite stations.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | S | ||
pressure | pressure | H | |
altimeter | S | ||
inTemp | temperature_in | H | |
outTemp | temperature_out | H | |
inHumidity | humidity_in | ||
outHumidity | humidity_out | H | |
windSpeed | wind_speed | H | |
windDir | wind_dir | H | |
rain | rain | D | |
rain_total | H | ||
rainRate | S | ||
dewpoint | S | ||
windchill | S | ||
heatindex | S | ||
rxCheckPercent | rssi | H | |
outTempBatteryStatus | battery | H |
Each packet contains a subset of all possible readings. For example, one type of packet contains windSpeed, windDir and rain. A different type of packet contains windSpeed, outTemp and outHumidity.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
CC3000
The CC3000 data logger stores 2MB of records.
When the logger fills up, it stops recording.
When WeeWX starts up it will attempt to download all records from the logger since the last record in the archive database.
The driver does not support hardware record generation.
The CC3000 data logger may be configured to return data in METRIC or ENGLISH units. These are then mapped to the WeeWX unit groups METRICWX or US, respectively.
Configuring with wee_device
Make sure you stop weewxd before running wee_device.
Action --help
Invoking wee_device with the --help option
wee_device --help
will produce something like this:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) Usage: wee_device [config_file] [options] [-y] [--debug] [--help] Configuration utility for weewx devices. Options: -h, --help show this help message and exit --debug display diagnostic information while running -y answer yes to every prompt --info display weather station configuration --current display current weather readings --history=N display N records (0 for all records) --history-since=N display records since N minutes ago --clear-memory clear station memory --get-header display data header --get-rain get the rain counter --reset-rain reset the rain counter --get-max get the max values observed --reset-max reset the max counters --get-min get the min values observed --reset-min reset the min counters --get-clock display station clock --set-clock set station clock to computer time --get-interval display logger archive interval, in seconds --set-interval=N set logging interval to N seconds --get-units show units of logger --set-units=UNITS set units to METRIC or ENGLISH --get-dst display daylight savings settings --set-dst=mm/dd HH:MM,mm/dd HH:MM,[MM]M set daylight savings start, end, and amount --get-channel display the station channel --set-channel=CHANNEL set the station channel
Action --info
Display the station settings with --info
wee_device --info
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) Firmware: Rainwise CC-3000 Version: 1.3 Build 022 Dec 02 2016 Time: 2020/01/04 15:38:14 DST: 03/08 02:00,11/01 02:00,060 Units: ENGLISH Memory: 252242 bytes, 4349 records, 12% Interval: 300 Channel: 0 Charger: CHARGER=OFF,BATTERIES=5.26V Baro: 30.37 Rain: 3.31 HEADER: ['HDR', '"TIMESTAMP"', '"TEMP OUT"', '"HUMIDITY"', '"PRESSURE"', '"WIND DIRECTION"', '"WIND SPEED"',~ MAX: ['MAX', '11:59 61.1', '02:47 99', '09:51 30.42', '13:32 337', '13:32 13.3', '00:00 0.00', '09:20 ~ MIN: ['MIN', '02:19 40.6', '14:42 66', '00:34 30.24', '00:00 67', '00:00 0.0', '00:00 0.00', '06:48 ~
Action --current
Returns the current values in a comma-delimited format. The order of the data values corresponds to the output of the --get-header command. NO DATA is returned if the unit has not received a transmission from the weather station.
wee_device --current
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) {'dateTime': 1578175453.0, 'outTemp': 58.6, 'outHumidity': 71.0, 'pressure': 30.36, 'windDir': 315.0, ~
Action --history=N
Display the latest N records from the CC3000 logger memory. Use a value of 0 to display all records. Note: because there may be other records mixed in with the archive records, this command will display an extra seven records per day (or partial day).
wee_device --history=2
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) ['REC', '2020/01/04 13:25', ' 58.9', ' 71', '30.36', '344', ' 4.9', ' 10.7', ' 0.00', ' 7.44', ' 5.26', ~ ['REC', '2020/01/04 13:30', ' 59.0', ' 71', '30.36', '327', ' 3.6', ' 10.0', ' 0.00', ' 7.32', ' 5.26', ~ ['REC', '2020/01/04 13:35', ' 59.1', ' 70', '30.36', '305', ' 5.5', ' 13.3', ' 0.00', ' 7.44', ' 5.26', ~ ['REC', '2020/01/04 13:40', ' 59.1', ' 70', '30.36', '330', ' 3.4', ' 8.9', ' 0.00', ' 7.08', ' 5.26', ~ ['REC', '2020/01/04 13:45', ' 58.9', ' 70', '30.36', '318', ' 2.6', ' 7.2', ' 0.00', ' 7.17', ' 5.26', ~ ['REC', '2020/01/04 13:50', ' 58.8', ' 71', '30.36', '312', ' 3.6', ' 7.9', ' 0.00', ' 7.14', ' 5.26', ~ ['REC', '2020/01/04 13:55', ' 58.9', ' 71', '30.36', '330', ' 4.5', ' 10.0', ' 0.00', ' 7.20', ' 5.26', ~ ['REC', '2020/01/04 14:00', ' 58.8', ' 71', '30.36', '331', ' 4.6', ' 9.6', ' 0.00', ' 7.38', ' 5.26', ~ ['REC', '2020/01/04 14:05', ' 58.6', ' 71', '30.36', '331', ' 4.0', ' 9.3', ' 0.00', ' 7.29', ' 5.26', ~
Action --history-since=N
Display all CC3000 logger memory records created in the last N minutes.
wee_device --history-since=10
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) {'dateTime': 1578175800.0, 'outTemp': 58.6, 'outHumidity': 70.0, 'pressure': 30.36, 'windDir': 316.0, ~ {'dateTime': 1578176100.0, 'outTemp': 58.7, 'outHumidity': 70.0, 'pressure': 30.36, 'windDir': 317.0, ~
Action --clear-memory
Use --clear-memory to erase all records from the logger memory.
wee_device --clear-memory
Action --get-header
Returns a series of comma delimited text descriptions. These descriptions are used to identify the type and order of the returned data in both --get-current, --download=N and --download-since=N commands.
wee_device --get-header
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) ['HDR', '"TIMESTAMP"', '"TEMP OUT"', '"HUMIDITY"', '"PRESSURE"', '"WIND DIRECTION"', '"WIND SPEED"', ~
Action --get-rain
Display the raing counter.
The CC-3000 maintains a rainfall counter that is only reset by a reboot or by issuing the reset command. The counter counts in 0.01” in- crements and rolls over at 65536 counts. Issuing the rainfall reset command will clear all rainfall counters including the current daily rainfall.
wee_device --get-rain
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) 3.31
Action --reset-rain
Reset the rain counter to zero.
wee_device --reset-rain
Action --get-max
Get the maximum values observed since the last time
Output parameter order: Outside temperature, humidity, pressure, wind direction, wind speed, rainfall (daily total), station voltage, inside temperature. If any optional sensors have been enabled they will also be displayed.
wee_device --get-max
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) ['MAX', '11:59 61.1', '02:47 99', '09:51 30.42', '13:32 337', '13:32 13.3', '00:00 0.00', '09:20 ~
Action --reset-max
Reset the maximum values.
wee_device --reset-max
Action --get-min
Get the minimum values observed since the last time
Output parameter order: Outside temperature, humidity, pressure, wind direction, wind speed, rainfall (ignore), station voltage, inside temperature. If any optional sensors have been enabled they will also be displayed.
wee_device --get-min
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) ['MIN', '02:19 40.6', '14:42 66', '00:34 30.24', '00:00 67', '00:00 0.0', '00:00 0.00', '06:48 ~
Action --reset-min
Reset the minimum values.
wee_device --reset-min
Action --get-clock
Get the time.
wee_device --get-clock
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) 2020/01/04 15:01:34
Action --set-clock
Set the station clock to match the date/time of the computer.
wee_device --set-clock
Action --get-interval
Returns the current logging interval (in seconds).
wee_device --get-interval
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) 300
Action --set-interval=N
Set the archive interval. CC3000 loggers ship from the factory with an archive interval of 1 minutes (60 seconds). To change the station's interval to 300 seconds (5 minutes), do the following:
wee_device --set-interval=5
Action --get-units
Returns the current measurement units.
wee_device --get-units
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) ENGLISH
Action --set-units
The CC3000 can display data in either ENGLISH or METRIC unit systems. Use --set-units to specify one or the other.
The CC3000 driver automatically converts the units to maintain consistency with the units in WeeWX.
wee_device --set-units=ENGLISH
Action --get-dst
Return the dates and times when the clock will change due to daylight saving and the number of minutes that the clock will change.
This will result in something like:
Using CC3000 driver version 0.30 (weewx.drivers.cc3000) 03/08 02:00,11/01 02:00,060
Action --set-dst
Set the station start, end, and amount of daylight savings.
The schedule can be set by adding the three parameters, forward date and time, back date and time and number of minutes to change (120 max). Daylight saving can be disabled by setting the daylight-saving to zero.
wee_device --set-dst="03/08 02:00,11/01 02:00,060"
wee_device --set-dst=0
Action --get-channel
Displays the station channel (0-3).
This will result in something like:
Using configuration file /home/weewx/weewx.conf Using CC3000 driver version 0.30 (weewx.drivers.cc3000) 0
Action --set-channel=N
Rainwise stations transmit on one of four channels. If you have multiple instrument clusters within a kilometer or so of each other, you should configure each to use a different channel. In the instrument cluster, remove the cover and set the DIP switches 0 and 1. Use --set-channel to a value of 0-3 to match that of the instrument cluster.
wee_device --set-channel=0
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | S | S | |
pressure | PRESSURE | H | H |
altimeter | S | S | |
inTemp | TEMP IN | H | H |
outTemp | TEMP OUT | H | H |
outHumidity | HUMIDITY | H | H |
windSpeed | WIND SPEED | H | H |
windDir | WIND DIRECTION | H | H |
windGust | WIND GUST | H | H |
rain | rain_delta | D | D |
RAIN | H | H | |
rainRate | S | S | |
dewpoint | S | S | |
windchill | S | S | |
heatindex | S | S | |
radiation1 | SOLAR RADIATION | H | H |
UV1 | UV INDEX | H | H |
supplyVoltage | STATION BATTERY | H | |
consBatteryVoltage | BATTERY BACKUP | H | |
extraTemp12 | TEMP 1 | H | H |
extraTemp22 | TEMP 2 | H | H |
1 The radiation and UV data are available only with the optional solar radiation sensor.
2 The extraTemp1 and extraTemp2 data are available only with the optional additional temperature sensors.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
FineOffsetUSB
The station clock can only be set manually via buttons on the console, or (if the station supports it) by WWVB radio. The FineOffsetUSB driver ignores the station clock since it cannot be trusted.
The station reads data from the sensors every 48 seconds. The 30xx stations read UV data every 60 seconds.
The 10xx and 20xx stations can save up to 4080 historical readings. That is about 85 days of data with the default recording interval of 30 minutes, or about 14 days with a recording interval of 5 minutes. The 30xx stations can save up to 3264 historical readings.
When WeeWX starts up it will attempt to download all records from the console since the last record in the archive database.
Polling mode and interval
When reading 'live' data, WeeWX can read as fast as possible, or at a user-defined period. This is controlled by the option polling_mode in weewx.conf.
Mode | Configuration | Notes |
ADAPTIVE |
[FineOffsetUSB] polling_mode = ADAPTIVE |
In this mode, WeeWX reads data from the station as often as possible, but at intervals that avoid communication between the console and the sensors. Nominally this results in reading data every 48 seconds. |
PERIODIC |
[FineOffsetUSB] polling_mode = PERIODIC polling_interval = 60 |
In this mode, WeeWX reads data from the station every polling_interval seconds. The console reads the sensors every 48 seconds (60 seconds for UV), so setting the polling_interval to a value less than 48 will result in duplicate readings. |
Data format
The 10xx/20xx consoles have a data format that is different from the 30xx consoles. All of the consoles recognize wind, rain, temperature, and humidity from the same instrument clusters. However, some instrument clusters also include a luminosity sensor. Only the 30xx consoles recognize the luminosity and UV output from these sensors. As a consequence, the 30xx consoles also have a different data format.
Since WeeWX cannot reliably determine the data format by communicating with the station, the data_format configuration option indicates the station type. Possible values are 1080 and 3080. Use 1080 for the 10xx and 20xx consoles. The default value is 1080.
For example, this would indicate that the station is a 30xx console:
[FineOffsetUSB] ... data_format = 3080
Configuring with wee_device
Make sure you stop weewxd before running wee_device.
Action --help
Invoking wee_device with the --help option
wee_device /home/weewx/weewx.conf --help
will produce something like this:
FineOffsetUSB driver version 1.7 Usage: wee_device [config_file] [options] [--debug] [--help] Configuration utility for weewx devices. Options: -h, --help show this help message and exit --debug display diagnostic information while running -y answer yes to every prompt --info display weather station configuration --current get the current weather conditions --history=N display N records --history-since=N display records since N minutes ago --clear-memory clear station memory --set-time set station clock to computer time --set-interval=N set logging interval to N minutes --live display live readings from the station --logged display logged readings from the station --fixed-block display the contents of the fixed block --check-usb test the quality of the USB connection --check-fixed-block monitor the contents of the fixed block --format=FORMAT format for output, one of raw, table, or dict Mutating actions will request confirmation before proceeding.
Action --info
Display the station settings with the --info option.
wee_device --info
This will result in something like:
Fine Offset station settings: local time: 2013.02.11 18:34:28 CET polling_mode: ADAPTIVE abs_pressure: 933.3 current_pos: 592 data_changed: 0 data_count: 22 date_time: 2007-01-01 22:49 hum_in_offset: 18722 hum_out_offset: 257 id: None lux_wm2_coeff: 0 magic_1: 0x55 magic_2: 0xaa model: None rain_coef: None read_period: 30 rel_pressure: 1014.8 temp_in_offset: 1792 temp_out_offset: 0 timezone: 0 unknown_01: 0 unknown_18: 0 version: 255 wind_coef: None wind_mult: 0
Highlighted values can be modified.
Action --set-interval
Set the archive interval. Fine Offset stations ship from the factory with an archive interval (read_period) of 30 minutes (1800 seconds). To change the station's interval to 5 minutes, do the following:
wee_device --set-interval=5
Action --history
Fine Offset stations store records in a circular buffer — once the buffer fills, the oldest records are replaced by newer records. The 1080 and 2080 consoles store up to 4080 records. The 3080 consoles store up to 3264 records. The data_count indicates how many records are in memory. The read_period indicates the number of minutes between records. wee_device can display these records in space-delimited, raw bytes, or dictionary format.
For example, to display the most recent 30 records from the console memory:
wee_device --history=30
Action --clear-memory
To clear the console memory:
wee_device --clear-memory
Action --check-usb
This command can test the quality of the USB connection between the computer and console. Poor quality USB cables, under-powered USB hubs, and other devices on the bus can interfere with communication.
To test the quality of the USB connection to the console:
wee_device --check-usb
Let the utility run for at least a few minutes, or possibly an hour or two. It is not unusual to see a few bad reads in an hour, but if you see many bad reads within a few minutes, consider replacing the USB cable, USB hub, or removing other devices from the bus.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | S | S | |
pressure | pressure | H | H |
altimeter | S | S | |
inTemp | temperature_in | H | H |
outTemp | temperature_out | H | H |
inHumidity | humidity_in | H | H |
outHumidity | humidity_out | H | H |
windSpeed | wind_speed | H | H |
windDir | wind_dir | H | H |
windGust | wind_gust | H | H |
rain | rain | D | D |
rain_total | H | H | |
rainRate | S | S | |
dewpoint | dewpoint | H | S |
windchill | windchill | H | S |
heatindex | heatindex | H | S |
radiation1 | radiation | D | D |
luminosity1 | luminosity | H | H |
rxCheckPercent | signal | H | |
outTempBatteryStatus | battery | H |
1 The radiation data are available only from 30xx stations. These stations include a luminosity sensor, from which the radiation is approximated.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
TE923
Some station models will recognize up to 5 remote temperature/humidity sensor units. Use the hardware switch in each sensor unit to identify sensors. Use the sensor_map in weewx.conf to associate each sensor with a database field.
The station has either 208 or 3442 history records, depending on the model. That is just over a day (208 records) or about 23 days (3442 records) with an archive interval of 5 minutes.
The TE923 driver will read history records from the station when WeeWX starts up, but it does not support hardware record generation.
Configuring with wee_device
Make sure you stop weewxd before running wee_device.
Action --help
Invoking wee_device with the --help option
wee_device /home/weewx/weewx.conf --help
will produce something like this:
Using configuration file /home/weewx/weewx.conf Using TE923 driver version 0.21 (weewx.drivers.te923) Usage: wee_device [config_file] [options] [--debug] [--help] Configuration utility for weewx devices. Options: -h, --help show this help message and exit --debug display diagnostic information while running -y answer yes to every prompt --info display weather station configuration --current get the current weather conditions --history=N display N history records --history-since=N display history records since N minutes ago --minmax display historical min/max data --get-date display station date --set-date=YEAR,MONTH,DAY set station date --sync-date set station date using system clock --get-location-local display local location and timezone --set-location-local=CITY|USR,LONG_DEG,LONG_MIN,E|W,LAT_DEG,LAT_MIN,N|S,TZ,DST set local location and timezone --get-location-alt display alternate location and timezone --set-location-alt=CITY|USR,LONG_DEG,LONG_MIN,E|W,LAT_DEG,LAT_MIN,N|S,TZ,DST set alternate location and timezone --get-altitude display altitude --set-altitude=ALT set altitude (meters) --get-alarms display alarms --set-alarms=WEEKDAY,SINGLE,PRE_ALARM,SNOOZE,MAXTEMP,MINTEMP,RAIN,WIND,GUST set alarm state --get-interval display archive interval --set-interval=INTERVAL set archive interval (minutes) --format=FORMAT formats include: table, dict Be sure to stop weewx first before using. Mutating actions will request confirmation before proceeding.
Action --info
Use --info to display the station configuration:
wee_device --info
This will result in something like:
Querying the station for the configuration... altitude: 16 bat_1: True bat_2: True bat_3: True bat_4: True bat_5: True bat_rain: True bat_uv: False bat_wind: True latitude: 43.35 longitude: -72.0 version_bar: 23 version_rcc: 16 version_sys: 41 version_uv: 20 version_wind: 38
Action --current
Use --current to display the current status of each sensor:
wee_device --current
This will result in something like:
Querying the station for current weather data... dateTime: 1454615168 forecast: 5 h_1: 41 h_1_state: ok h_2: 48 h_2_state: ok h_3: None h_3_state: no_link h_4: None h_4_state: no_link h_5: None h_5_state: no_link h_in: 44 h_in_state: ok rain: 2723 rain_state: ok slp: 1012.4375 slp_state: ok storm: 0 t_1: 13.9 t_1_state: ok t_2: 21.5 t_2_state: ok t_3: None t_3_state: no_link t_4: None t_4_state: no_link t_5: None t_5_state: no_link t_in: 22.85 t_in_state: ok uv: None uv_state: no_link windchill: None windchill_state: invalid winddir: 12 winddir_state: invalid windgust: None windgust_state: invalid windspeed: None windspeed_state: invalid
Action --set-interval
TE923 stations ship from the factory with an archive interval of 1 hour (3600 seconds). To change the station's interval to 5 minutes (300 seconds), do the following:
wee_device --set-interval=300
Action --history
Use the --history action to display records from the logger in tabular or dictionary format.
For example, to display the most recent 30 records in dictionary format:
wee_device --history=30 --format=dict
Action --clear-memory
Use --clear-memory to erase all records from the logger memory.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | barometer | H | H |
pressure | S | S | |
altimeter | S | S | |
inTemp | t_in | H | H |
inHumidity | h_in | H | H |
outTemp | t_1 | H | H |
outHumidity | h_1 | H | H |
outTempBatteryStatus | bat_1 | H | |
outLinkStatus | link_1 | H | |
windSpeed | windspeed | H | H |
windDir | winddir | H | H |
windGust | windgust | H | H |
windBatteryStatus | bat_wind | H | |
windLinkStatus | link_wind | H | |
rain | rain | D | D |
rain_total | H | H | |
rainBatteryStatus | bat_rain | H | |
rainLinkStatus | link_rain | H | |
rainRate | S | S | |
dewpoint | S | S | |
windchill | windchill | H | H |
heatindex | S | S | |
UV1 | uv | H | H |
uvBatteryStatus | bat_uv | H | |
uvLinkStatus | link_uv | H | |
extraTemp1 | t_2 | H | H |
extraHumid1 | h_2 | H | H |
extraBatteryStatus1 | bat_2 | H | |
extraLinkStatus1 | link_2 | H | |
extraTemp2 | t_3 | H | H |
extraHumid2 | h_3 | H | H |
extraBatteryStatus2 | bat_3 | H | |
extraLinkStatus2 | link_3 | H | |
extraTemp3 | t_4 | H | H |
extraHumid3 | h_4 | H | H |
extraBatteryStatus3 | bat_4 | H | |
extraLinkStatus3 | link_4 | H | |
extraTemp4 | t_5 | H | H |
extraHumid4 | h_5 | H | H |
extraBatteryStatus4 | bat_5 | H | |
extraLinkStatus4 | link_5 | H |
Some stations support up to 5 remote temperature/humidity sensors.
1 The UV data are available only with the optional solar radiation sensor.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
Ultimeter
The Ultimeter driver operates the Ultimeter in Data Logger Mode, which results in sensor readings every 1/2 second or so.
The Ultimeter driver ignores the maximum, minimum, and average values recorded by the station.
Configuring with wee_device
The wee_device utility cannot be used to configure Ultimeter stations.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer2 | barometer | H | |
pressure2 | S | ||
altimeter2 | S | ||
inTemp2 | temperature_in | H | |
outTemp | temperature_out | H | |
inHumidity2 | humidity_in | H | |
outHumidity | humidity_out | H | |
windSpeed | wind_speed | H | |
windDir | wind_dir | H | |
rain1 | rain | D | |
rain_total | H | ||
rainRate1 | S | ||
dewpoint | S | ||
windchill | S | ||
heatindex | S |
1 The rain and rainRate are available only on stations with the optional rain sensor.
2 Pressure, inside temperature, and inside humidity data are not available on all types of Ultimeter stations.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
Vantage
The Davis Vantage stations include a variety of models and configurations. The WeeWX driver can communicate with a console or envoy using serial, USB, or TCP/IP interface.
Configuring with wee_device
Make sure you stop weewxd before running wee_device.
Action --help
Invoking wee_device with the --help option
wee_device /home/weewx/weewx.conf --help
will produce something like this:
Using configuration file /home/weewx/weewx.conf Using Vantage driver version 3.2.3 (weewx.drivers.vantage) Usage: wee_device --help wee_device --info [config_file] wee_device --current [config_file] wee_device --clear-memory [config_file] [-y] wee_device --set-interval=MINUTES [config_file] [-y] wee_device --set-latitude=DEGREE [config_file] [-y] wee_device --set-longitude=DEGREE [config_file] [-y] wee_device --set-altitude=FEET [config_file] [-y] wee_device --set-barometer=inHg [config_file] [-y] wee_device --set-wind-cup=CODE [config_file] [-y] wee_device --set-bucket=CODE [config_file] [-y] wee_device --set-rain-year-start=MM [config_file] [-y] wee_device --set-offset=VARIABLE,OFFSET [config_file] [-y] wee_device --set-transmitter-type=CHANNEL,TYPE,TEMP,HUM,REPEATER_ID [config_file] [-y] wee_device --set-retransmit=[OFF|ON|ON,CHANNEL] [config_file] [-y] wee_device --set-temperature-logging=[LAST|AVERAGE] [config_file] [-y] wee_device --set-time [config_file] [-y] wee_device --set-dst=[AUTO|ON|OFF] [config_file] [-y] wee_device --set-tz-code=TZCODE [config_file] [-y] wee_device --set-tz-offset=HHMM [config_file] [-y] wee_device --set-lamp=[ON|OFF] [config_file] wee_device --dump [--batch-size=BATCH_SIZE] [config_file] [-y] wee_device --logger-summary=FILE [config_file] [-y] wee_device [--start | --stop] [config_file] Configures the Davis Vantage weather station. Options: -h, --help show this help message and exit --debug display diagnostic information while running -y answer yes to every prompt --info To print configuration, reception, and barometer calibration information about your weather station. --current To print current LOOP information. --clear-memory To clear the memory of your weather station. --set-interval=MINUTES Sets the archive interval to the specified number of minutes. Valid values are 1, 5, 10, 15, 30, 60, or 120. --set-latitude=DEGREE Sets the latitude of the station to the specified number of tenth degree. --set-longitude=DEGREE Sets the longitude of the station to the specified number of tenth degree. --set-altitude=FEET Sets the altitude of the station to the specified number of feet. --set-barometer=inHg Sets the barometer reading of the station to a known correct value in inches of mercury. Specify 0 (zero) to have the console pick a sensible value. --set-wind-cup=CODE Set the type of wind cup. Specify '0' for small size; '1' for large size --set-bucket=CODE Set the type of rain bucket. Specify '0' for 0.01 inches; '1' for 0.2 mm; '2' for 0.1 mm --set-rain-year-start=MM Set the rain year start (1=Jan, 2=Feb, etc.). --set-offset=VARIABLE,OFFSET Set the onboard offset for VARIABLE inTemp, outTemp, extraTemp[1-7], inHumid, outHumid, extraHumid[1-7], soilTemp[1-4], leafTemp[1-4], windDir) to OFFSET (Fahrenheit, %, degrees) --set-transmitter-type=CHANNEL,TYPE,TEMP,HUM,REPEATER_ID Set the transmitter type for CHANNEL (1-8), TYPE (0=iss, 1=temp, 2=hum, 3=temp_hum, 4=wind, 5=rain, 6=leaf, 7=soil, 8=leaf_soil, 9=sensorlink, 10=none), as extra TEMP station and extra HUM station (both 1-7, if applicable), REPEATER_ID ('A'-'H', if used) --set-retransmit=OFF|ON|ON,CHANNEL Turn console retransmit function 'ON' or 'OFF'. --set-temperature-logging=LAST|AVERAGE Set console temperature logging to either 'LAST' or 'AVERAGE'. --set-time Set the onboard clock to the current time. --set-dst=AUTO|ON|OFF Set DST to 'ON', 'OFF', or 'AUTO' --set-tz-code=TZCODE Set timezone code to TZCODE. See your Vantage manual for valid codes. --set-tz-offset=HHMM Set timezone offset to HHMM. E.g. '-0800' for U.S. Pacific Time. --set-lamp=ON|OFF Turn the console lamp 'ON' or 'OFF'. --dump Dump all data to the archive. NB: This may result in many duplicate primary key errors. --batch-size=BATCH_SIZE Use with option --dump. Pages are read off the console in batches of BATCH_SIZE. A BATCH_SIZE of zero means dump all data first, then put it in the database. This can improve performance in high-latency environments, but requires sufficient memory to hold all station data. Default is 1 (one). --logger-summary=FILE Save diagnostic summary to FILE (for debugging the logger). --start Start the logger. --stop Stop the logger. Be sure to stop weewx first before using. Mutating actions will request confirmation before proceeding.
Action --info
Use the --info option to display the current EEPROM settings:
wee_device --info
This will result in something like:
Davis Vantage EEPROM settings: CONSOLE TYPE: Vantage Pro2 CONSOLE FIRMWARE: Date: Jun 3 2013 Version: 3.15 CONSOLE SETTINGS: Archive interval: 300 (seconds) Altitude: 700 (foot) Wind cup type: large Rain bucket type: 0.01 inches Rain year start: 10 Onboard time: 2014-09-25 07:41:14 CONSOLE DISPLAY UNITS: Barometer: inHg Temperature: degree_F Rain: inch Wind: mile_per_hour CONSOLE STATION INFO: Latitude (onboard): 45.7° Longitude (onboard): -121.6° Use manual or auto DST? AUTO DST setting: N/A Use GMT offset or zone code? ZONE_CODE Time zone code: 4 GMT offset: N/A Retransmit channel: 0 (OFF) TRANSMITTERS: Channel Receive Repeater Type 1 active A iss 2 active none temp_hum (as extra temperature 1 and extra humidity 1) 3 active none leaf_soil 4 inactive none (N/A) 5 inactive none (N/A) 6 inactive none (N/A) 7 inactive none (N/A) 8 inactive none (N/A) RECEPTION STATS: Total packets received: 10670 Total packets missed: 128 Number of resynchronizations: 0 Longest good stretch: 934 Number of CRC errors: 651 BAROMETER CALIBRATION DATA: Current barometer reading: 29.834 inHg Altitude: 700 feet Dew point: 55 F Virtual temperature: 59 F Humidity correction factor: 2.7 Correction ratio: 1.025 Correction constant: +0.000 inHg Gain: 0.000 Offset: -47.000 OFFSETS: Wind direction: +0 deg Inside Temperature: +0.0 F Inside Humidity: +0 % Outside Temperature: +0.0 F Outside Humidity: +0 % Extra Temperature 1: +0.0 F
The console version number is available only on consoles with firmware dates after about 2006.
Highlighted values can be modified using the various wee_device commands below.
Action --current
This command will print a single LOOP packet.
Action --clear-memory
This command will clear the logger memory after asking for confirmation.
Action --set-interval
Use this command to change the archive interval of the internal logger. Valid intervals are 1, 5, 10, 15, 30, 60, or 120 minutes. However, if you are ftp'ing lots of files to a server, setting it to one minute may not give enough time to have them all uploaded before the next archive record is due. If this is the case, you should pick a longer archive interval, or trim the number of files you are using.
An archive interval of five minutes works well for the Vantage stations. Because of the large amount of onboard memory they carry, going to a larger interval does not have any real advantages.
Example: to change the archive interval to 10 minutes:
wee_device --set-interval=10
Action --set-altitude
Use this command to set the console's stored altitude. The altitude must be in feet. Example:
wee_device --set-altitude=700
Action --set-barometer
Use this command to calibrate the barometer in your Vantage weather station. To use it, you must have a known correct barometer reading for your altitude. In practice, you will either have to move your console to a known-correct station (perhaps a nearby airport) and perform the calibration there, or reduce the barometer reading to your altitude. Otherwise, specify the value zero and the station will pick a sensible value.
Action --set-bucket
Normally, this is set by Davis, but if you have replaced your bucket with a different kind, you might want to reconfigure. For example, to change to a 0.1 mm bucket (bucket code "2"), use the following:
wee_device --set-bucket=2
Action --set-rain-year-start
The Davis Vantage series allows the start of the rain year to be something other than 1 January. For example, to set it to 1 October:
wee_device --set-rain-year-start=10
Action --set-offset
The Davis instruments can correct sensor errors by adding an offset to their emitted values. This is particularly useful for Southern Hemisphere users. Davis fits the wind vane to the Integrated Sensor Suite (ISS) in a position optimized for Northern Hemisphere users, who face the solar panel to the south. Users south of the equator must orient the ISS's solar panel to the north to get maximal insolation, resulting in a 180° error in the wind direction. The solution is to add a 180° offset correction. You can do this with the following command:
wee_device --set-offset=windDir,180
Action --set-transmitter-type
If you have additional sensors and/or repeaters for your Vantage station, you can configure them using your console. However, if you have a Davis Weather Envoy receiver, it will not have a console! As an alternative, wee_device can do this using the command --set-transmitter-type.
For example, to add an extra temperature sensor to channel 3 and no repeater is used, do the following:
wee_device --set-transmitter-type=3,1,2
This says to turn on channel 3, set its type to 1 ("Temperature only"), without repeater use and it will show up in the database as extraTemp2.
If you omit the repeater id, repeater id will be: 'no repeater'.
Here's another example, this time for a combined temperature / humidity sensor retransmitted via repeater A:
wee_device --set-transmitter-type=5,3,2,4,a
This will add the combined sensor to channel 5, set its type to 3 ("Temperature and humidity"), via Repeater A and it will show up in the database as extraTemp2 and extraHumid4.
The --help option will give you the code for each sensor type and repeater id.
If you have to use repeaters with your Vantage Pro2 station, please take a look at Installing Repeater Networks for Vantage Pro2 how to setup.
You can only use channels not actively used for retransmission. The command checks for this and will not accept channel numbers actively used for retransmission.
Action --set-retransmit
Use this command to tell your console whether or not to act as a retransmitter.
Example: Tell your console to turn retransmission 'ON' and let the software select the first available channel:
wee_device --set-retransmit=on
Another example: Tell your console to turn retransmission 'OFF':
wee_device --set-retransmit=off
Last example: Tell your console to turn retransmission 'ON' at channel 4:
wee_device --set-retransmit=on,4
You only can use channels not actively used for reception. The command checks for this and will not accept channel numbers actively used for reception of senor stations.
Action --set-dst
Use the command to tell your console whether or not daylight savings time is in effect, or to have it set automatically based on the time zone.
Action --set-tz-code
This command can be used to change the time zone. Consult the Vantage manual for the code that corresponds to your time zone.
You can set either the time zone code or the time zone offset, but not both.
For example, to set the time zone code to Central European Time (code 20):
wee_device --set-tz-code=20
Action --set-tz-offset
If you live in an odd time zone that is perhaps not covered by the "canned" Davis time zones, you can set the offset from UTC using this command.
You can set either the time zone code or the time zone offset, but not both.
For example, to set the time zone offset for Newfoundland Standard Time (UTC-03:30), use the following:
wee_device --set-tz-offset=-0330
Action --set-lamp
Use this command to turn the console lamp on or off.
Action --dump
Generally, WeeWX downloads only new archive records from the on-board logger in the Vantage. However, occasionally the memory in the Vantage will get corrupted, making this impossible. See the troubleshooting section WeeWX generates HTML pages, but it does not update them. The fix involves clearing the memory but, unfortunately, this means you may lose any data which might have accumulated in the logger memory, but not yet downloaded. By using the --dump command before clearing the memory, you might be able to save these data. Stop WeeWX first, then
wee_device --dump
This will dump all data archived in the Vantage memory directly to the database, without regard to whether or not they have been seen before. Because the command dumps all data, it may result in many duplicate primary key errors. These can be ignored.
Action --logger-summary FILE
This command is useful for debugging the console logger. It will scan the logger memory, recording the timestamp in each page and index slot to the file FILE.
Example:
wee_device --logger-summary=/var/tmp/summary.txt
Action --start
Use this command to start the logger. There are occasions when an out-of-the-box logger needs this command.
Action --stop
Use this command to stop the logger. I can't think of a good reason why you would need to do this, but the command is included for completeness.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | barometer | H | H |
pressure | S | S | |
altimeter | S | S | |
inTemp | inTemp | H | H |
outTemp | outTemp | H | H |
inHumidity | inHumidity | H | H |
outHumidity | outHumidity | H | H |
windSpeed | windSpeed | H | H |
windDir | windDir | H | H |
windGust | windGust | H | H |
windGustDir | windGustDir | H | H |
rain | rain | D | H |
monthRain | H | H | |
rainRate | rainRate | H | H |
dewpoint | S | S | |
windchill | S | S | |
heatindex | S | S | |
radiation | radiation | H | H |
UV | UV | H | H |
extraTemp1 | extraTemp1 | H | H |
extraTemp2 | extraTemp2 | H | H |
extraTemp3 | extraTemp3 | H | H |
extraTemp4 | extraTemp4 | H | |
extraTemp5 | extraTemp5 | H | |
extraTemp6 | extraTemp6 | H | |
extraTemp7 | extraTemp7 | H | |
soilTemp1 | soilTemp1 | H | H |
soilTemp2 | soilTemp2 | H | H |
soilTemp3 | soilTemp3 | H | H |
soilTemp4 | soilTemp4 | H | H |
leafTemp1 | leafTemp1 | H | H |
leafTemp2 | leafTemp2 | H | H |
leafTemp3 | leafTemp3 | H | H |
leafTemp4 | leafTemp4 | H | H |
extraHumid1 | extraHumid1 | H | H |
extraHumid2 | extraHumid2 | H | H |
extraHumid3 | extraHumid3 | H | |
extraHumid4 | extraHumid4 | H | |
extraHumid5 | extraHumid5 | H | |
extraHumid6 | extraHumid6 | H | |
extraHumid7 | extraHumid7 | H | |
soilMoist1 | soilMoist1 | H | H |
soilMoist2 | soilMoist2 | H | H |
soilMoist3 | soilMoist3 | H | H |
soilMoist4 | soilMoist4 | H | H |
leafWet1 | leafWet1 | H | H |
leafWet2 | leafWet2 | H | H |
leafWet3 | leafWet3 | H | H |
leafWet4 | leafWet4 | H | H |
txBatteryStatus | txBatteryStatus | H | H |
consBatteryVoltage | consBatteryVoltage | H | H |
wind_samples | H |
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
WMR100
The station emits partial packets, which may confuse some online services.
Configuring with wee_device
The wee_device utility cannot be used to configure WMR100 stations.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | S | ||
pressure | pressure | H | |
altimeter | S | ||
inTemp | temperature_0 | H | |
outTemp | temperature_1 | H | |
inHumidity | humidity_0 | H | |
outHumidity | humidity_1 | H | |
windSpeed | wind_speed | H | |
windDir | wind_dir | H | |
windGust | wind_gust | H | |
rain | rain | D | |
rain_total | H | ||
rainRate | rain_rate | H | |
dewpoint | S | ||
windchill | S | ||
heatindex | S | ||
extraTemp1 | temperature_2 | H | |
extraTemp2 | temperature_3 | H | |
extraTemp3 | temperature_4 | H | |
extraTemp4 | temperature_5 | H | |
extraTemp5 | temperature_6 | H | |
extraTemp6 | temperature_7 | H | |
extraTemp7 | temperature_8 | H | |
extraHumid1 | humidity_2 | H | |
extraHumid2 | humidity_3 | H | |
extraHumid3 | humidity_4 | H | |
extraHumid4 | humidity_5 | H | |
extraHumid5 | humidity_6 | H | |
extraHumid6 | humidity_7 | H | |
extraHumid7 | humidity_8 | H | |
UV | uv | H | |
inTempBatteryStatus | battery_status_0 | H | |
outTempBatteryStatus | battery_status_1 | H | |
rainBatteryStatus | rain_battery_status | H | |
windBatteryStatus | wind_battery_status | H | |
uvBatteryStatus | uv_battery_status | H | |
extraBatteryStatus1 | battery_status_2 | H | |
extraBatteryStatus2 | battery_status_3 | H | |
extraBatteryStatus3 | battery_status_4 | H | |
extraBatteryStatus4 | battery_status_5 | H | |
extraBatteryStatus5 | battery_status_6 | H | |
extraBatteryStatus6 | battery_status_7 | H | |
extraBatteryStatus7 | battery_status_8 | H |
Each packet contains a subset of all possible readings. For example, a temperature packet contains temperature_N and battery_status_N, a rain packet contains rain_total and rain_rate.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
WMR300
A single WMR300 console supports 1 wind, 1 rain, 1 UV, and up to 8 temperature/humidity sensors.
The WMR300 sensors send at different rates:
sensor | period |
---|---|
Wind | 2.5 to 3 seconds |
T/H | 10 to 12 seconds |
Rain | 20 to 24 seconds |
The console contains the pressure sensor. The console reports pressure every 15 minutes.
The station emits partial packets, which may confuse some online services.
The rain counter has a limit of 400 inches (10160 mm). The counter does not wrap around; it must be reset when it hits the limit, otherwise additional rain data will not be recorded.
The logger stores about 50,000 records. When the logger fills up, it stops recording data.
When WeeWX starts up it will attempt to download all records from the console since the last record in the archive database. This can take as much as couple of hours, depending on the number of records in the logger and the speed of the computer and disk.
Configuring with wee_device
The wee_device utility cannot be used to configure WMR300 stations.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | barometer | H | H |
pressure | pressure | H | S |
altimeter | S | S | |
inTemp | temperature_0 | H | H |
inHumidity | humidity_0 | H | H |
windSpeed | wind_avg | H | H |
windDir | wind_dir | H | H |
windGust | wind_gust | H | H |
windGustDir | wind_gust_dir | H | H |
rain | rain | D | D |
rain_total | H | H | |
rainRate | rain_rate | H | H |
outTemp | temperature_1 | H | H |
outHumidity | humidity_1 | H | H |
dewpoint | dewpoint_1 | H | H |
heatindex | heatindex_1 | H | H |
windchill | windchill | H | H |
extraTemp1 | temperature_2 | H | H |
extraHumid1 | humidity_2 | H | H |
extraDewpoint1 | dewpoint_2 | H | H |
extraHeatindex1 | heatindex_2 | H | H |
extraTemp2 | temperature_3 | H | H |
extraHumid2 | humidity_3 | H | H |
extraDewpoint2 | dewpoint_3 | H | H |
extraHeatindex2 | heatindex_3 | H | H |
extraTemp3 | temperature_4 | H | H |
extraHumid3 | humidity_4 | H | H |
extraDewpoint3 | dewpoint_4 | H | H |
extraHeatindex3 | heatindex_4 | H | H |
extraTemp4 | temperature_5 | H | H |
extraHumid4 | humidity_5 | H | H |
extraDewpoint4 | dewpoint_5 | H | H |
extraHeatindex4 | heatindex_5 | H | H |
extraTemp5 | temperature_6 | H | H |
extraHumid5 | humidity_6 | H | H |
extraDewpoint5 | dewpoint_6 | H | H |
extraHeatindex5 | heatindex_6 | H | H |
extraTemp6 | temperature_7 | H | H |
extraHumid6 | humidity_7 | H | H |
extraDewpoint6 | dewpoint_7 | H | H |
extraHeatindex6 | heatindex_7 | H | H |
extraTemp7 | temperature_8 | H | H |
extraHumid7 | humidity_8 | H | H |
extraDewpoint7 | dewpoint_8 | H | H |
extraHeatindex7 | heatindex_8 | H | H |
Each packet contains a subset of all possible readings.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
WMR9x8
The station includes a data logger, but the driver does not read records from the station.
The station emits partial packets, which may confuse some online services.
Configuring with wee_device
The wee_device utility cannot be used to configure WMR9x8 stations.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | barometer | H | |
pressure | pressure | H | |
altimeter | S | ||
inTemp | temperature_in | H | |
outTemp | temperature_out | H | |
inHumidity | humidity_in | H | |
outHumidity | humidity_out | H | |
windSpeed | wind_speed | H | |
windDir | wind_dir | H | |
windGust | wind_gust | H | |
windGustDir | wind_gust_dir | H | |
rain | rain | D | |
rain_total | H | ||
rainRate | rain_rate | H | |
inDewpoint | dewpoint_in | H | |
dewpoint | dewpoint_out | H | |
windchill | windchill | H | |
heatindex | S | ||
UV | uv | H | |
extraTemp1 | temperature_1 | H | |
extraTemp2 | temperature_2 | H | |
extraTemp3 | temperature_3 | H | |
extraTemp4 | temperature_4 | H | |
extraTemp5 | temperature_5 | H | |
extraTemp6 | temperature_6 | H | |
extraTemp7 | temperature_7 | H | |
extraTemp8 | temperature_8 | H | |
extraHumid1 | humidity_1 | H | |
extraHumid2 | humidity_3 | H | |
extraHumid3 | humidity_3 | H | |
extraHumid4 | humidity_4 | H | |
extraHumid5 | humidity_5 | H | |
extraHumid6 | humidity_6 | H | |
extraHumid7 | humidity_7 | H | |
extraHumid8 | humidity_8 | H | |
inTempBatteryStatus | battery_status_in | H | |
outTempBatteryStatus | battery_status_out | H | |
rainBatteryStatus | rain_battery_status | H | |
windBatteryStatus | wind_battery_status | H | |
extraBatteryStatus1 | battery_status_1 | H | |
extraBatteryStatus2 | battery_status_2 | H | |
extraBatteryStatus3 | battery_status_3 | H | |
extraBatteryStatus4 | battery_status_4 | H | |
extraBatteryStatus5 | battery_status_5 | H | |
extraBatteryStatus6 | battery_status_6 | H | |
extraBatteryStatus7 | battery_status_7 | H | |
extraBatteryStatus8 | battery_status_8 | H |
Each packet contains a subset of all possible readings. For example, a temperature packet contains temperature_N and battery_status_N, a rain packet contains rain_total and rain_rate.
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
WS1
The WS1 stations produce data every 1/2 second or so.
Configuring with wee_device
The wee_device utility cannot be used to configure WS1 stations.
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | S | ||
pressure | pressure | H | |
altimeter | S | ||
inTemp | temperature_in | H | |
outTemp | temperature_out | H | |
inHumidity | humidity_in | H | |
outHumidity | humidity_out | H | |
windSpeed | wind_speed | H | |
windDir | wind_dir | H | |
rain | rain | D | |
rain_total | H | ||
rainRate | S | ||
dewpoint | S | ||
windchill | S | ||
heatindex | S |
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
WS23xx
The hardware interface is a serial port, but USB-serial converters can be used with computers that have no serial port. Beware that not every type of USB-serial converter will work. Converters based on ATEN UC-232A chipset are known to work.
The station does not record wind gust or wind gust direction.
The hardware calculates windchill and dewpoint.
Sensors can be connected to the console with a wire. If not wired, the sensors will communicate via a wireless interface. When connected by wire, some sensor data are transmitted every 8 seconds. With wireless, data are transmitted every 16 to 128 seconds, depending on wind speed and rain activity.
sensor | period |
---|---|
Wind | 32 seconds when wind > 22.36 mph (wireless) 128 seconds when wind > 22.36 mph (wireless) 10 minutes (wireless after 5 failed attempts) 8 seconds (wired) |
Temperature | 15 seconds |
Humidity | 20 seconds |
Pressure | 15 seconds |
The station has 175 history records. That is just over 7 days of data with the factory default history recording interval of 60 minutes, or about 14 hours with a recording interval of 5 minutes.
When WeeWX starts up it will attempt to download all records from the console since the last record in the archive database.
Configuring with wee_device
Make sure you stop weewxd before running wee_device.
Action --help
Invoking wee_device with the --help option
wee_device /home/weewx/weewx.conf --help
will produce something like this:
WS23xx driver version 0.21 Usage: wee_device [config_file] [options] [--debug] [--help] Configuration utility for weewx devices. Options: -h, --help show this help message and exit --debug display diagnostic information while running -y answer yes to every prompt --info display weather station configuration --current get the current weather conditions --history=N display N history records --history-since=N display history records since N minutes ago --clear-memory clear station memory --set-time set the station clock to the current time --set-interval=N set the station archive interval to N minutes Mutating actions will request confirmation before proceeding.
Action --info
Display the station settings with the --info option.
wee_device --info
This will result in something like:
buzzer: 0 connection time till connect: 1.5 connection type: 15 dew point: 8.88 dew point max: 18.26 dew point max alarm: 20.0 dew point max alarm active: 0 dew point max alarm set: 0 dew point max when: 978565200.0 dew point min: -2.88 dew point min alarm: 0.0 dew point min alarm active: 0 dew point min alarm set: 0 dew point min when: 978757260.0 forecast: 0 history interval: 5.0 history last record pointer: 8.0 history last sample when: 1385564760.0 history number of records: 175.0 history time till sample: 5.0 icon alarm active: 0 in humidity: 48.0 ...
The line history number of records indicates how many records are in memory. The line history interval indicates the number of minutes between records.
Action --set-interval
WS23xx stations ship from the factory with an archive interval of 60 minutes (3600 seconds). To change the station's interval to 5 minutes, do the following:
wee_device --set-interval=5
Warning!
Changing the archive
interval will clear the station memory.
Action --history
WS23xx stations store records in a circular buffer — once the buffer fills, the oldest records are replaced by newer records. The console stores up to 175 records.
For example, to display the latest 30 records from the console memory:
wee_device --history=30
Action --clear-memory
To clear the console memory:
wee_device --clear-memory
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | S | S | |
pressure | pressure | H | H |
altimeter | S | S | |
inTemp | temperature_in | H | H |
outTemp | temperature_out | H | H |
inHumidity | humidity_in | H | H |
outHumidity | humidity_out | H | H |
windSpeed | wind_speed | H | H |
windDir | wind_dir | H | H |
rain | rain | D | D |
rain_total | H | H | |
rainRate | rain_rate | H | H |
dewpoint | dewpoint | H | H |
windchill | windchill | H | H |
heatindex | S | S |
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service
WS28xx
WeeWX communicates with a USB transceiver, which communicates with the station console, which in turn communicates with the sensors. The transceiver and console must be paired and synchronized.
The sensors send data at different rates:
sensor | period |
---|---|
Wind | 17 seconds |
T/H | 13 seconds |
Rain | 19 seconds |
Pressure | 15 seconds |
The wind and rain sensors transmit to the temperature/humidity device, then the temperature/humidity device retransmits to the weather station console. Pressure is measured by a sensor in the console.
The station has 1797 history records. That is just over 6 days of data with an archive interval of 5 minutes.
When WeeWX starts up it will attempt to download all records from the console since the last record in the archive database.
The WS28xx driver sets the station archive interval to 5 minutes.
The WS28xx driver does not support hardware archive record generation.
Pairing
The console and transceiver must be paired. Pairing ensures that your transceiver is talking to your console, not your neighbor's console. Pairing should only have to be done once, although you might have to pair again after power cycling the console, for example after you replace the batteries.
There are two ways to pair the console and the transceiver:
- The WeeWX way. Be sure that
WeeWX is not running. Run the
configuration utility, press and hold the [v] button on the
console until you see 'PC' in the display, then release the
button. If the console pairs with the transceiver, 'PC' will
go away within a second or two.
wee_device --pair Pairing transceiver with console... Press and hold the [v] key until "PC" appears (attempt 1 of 3) Transceiver is paired to console
- The HeavyWeather way. Follow the pairing instructions that came with the station. You will have to run HeavyWeather on a windows computer with the USB transceiver. After HeavyWeather indicates the devices are paired, put the USB transceiver in your WeeWX computer and start WeeWX. Do not power cycle the station console or you will have to start over.
If the console does not pair, you will see messages in the log such as this:
ws28xx: RFComm: message from console contains unknown device ID (id=165a resp=80 req=6)
Either approach to pairing may require multiple attempts.
Synchronizing
After pairing, the transceiver and console must be synchronized in order to communicate. Synchronization will happen automatically at the top of each hour, or you can force synchronization by pressing the [SET] button momentarily. Do not press and hold the [SET] button — that modifies the console alarms.
When the transceiver and console are synchronized, you will see lots of 'ws28xx: RFComm' messages in the log when debug=1. When the devices are not synchronized, you will see messages like this about every 10 minutes:
Nov 7 19:12:17 raspi weewx[2335]: ws28xx: MainThread: no contact with console
If you see this, or if you see an extended gap in the weather data in the WeeWX plots, press momentarily the [SET] button, or wait until the top of the hour.
When the transceiver has not received new data for awhile, you will see messages like this in the log:
Nov 7 19:12:17 raspi weewx[2335]: ws28xx: MainThread: no new weather data
If you see 'no new weather data' messages with the 'no contact with console' messages, it simply means that the transceiver has not been able to synchronize with the console. If you see only the 'no new weather data' messages, then the sensors are not communicating with the console, or the console may be defective.
Alarms
When an alarm goes off, communication with the transceiver stops. The WS28xx driver clears all alarms in the station. It is better to create alarms in WeeWX, and the WeeWX alarms can do much more than the console alarms anyway.
Configuring with wee_device
Make sure you stop weewxd before running wee_device.
Action --help
Invoking wee_device with the --help option
wee_device /home/weewx/weewx.conf --help
will produce something like this:
WS28xx driver version 0.33 Usage: wee_device [config_file] [options] [--debug] [--help] Configuration utility for weewx devices. Options: -h, --help show this help message and exit --debug display diagnostic information while running -y answer yes to every prompt --check-transceiver check USB transceiver --pair pair the USB transceiver with station console --info display weather station configuration --set-interval=N set logging interval to N minutes --current get the current weather conditions --history=N display N history records --history-since=N display history records since N minutes ago --maxtries=MAXTRIES maximum number of retries, 0 indicates no max Mutating actions will request confirmation before proceeding.
Action --pair
The console and transceiver must be paired. This can be done either by using this command, or by running the program HeavyWeather on a Windows PC.
Be sure that WeeWX is not running. Run the command:
wee_device --pair
Pairing transceiver with console...
Press and hold the [v] key until "PC" appears (attempt 1 of 3)
Transceiver is paired to console
Press and hold the [v] button on the console until you see 'PC' in the display, then release the button. If the console pairs with the transceiver, 'PC' will go away within a second or two.
If the console does not pair, you will see messages in the log such as this:
ws28xx: RFComm: message from console contains unknown device ID (id=165a resp=80 req=6)
Pairing may require multiple attempts.
After pairing, the transceiver and console must be synchronized in order to communicate. This should happen automatically.
Action --info
Display the station settings with the --info option.
wee_device --info
This will result in something like:
alarm_flags_other: 0 alarm_flags_wind_dir: 0 checksum_in: 1327 checksum_out: 1327 format_clock: 1 format_pressure: 0 format_rain: 1 format_temperature: 0 format_windspeed: 4 history_interval: 1 indoor_humidity_max: 70 indoor_humidity_max_time: None indoor_humidity_min: 45 indoor_humidity_min_time: None indoor_temp_max: 40.0 indoor_temp_max_time: None indoor_temp_min: 0.0 indoor_temp_min_time: None lcd_contrast: 4 low_battery_flags: 0 outdoor_humidity_max: 70 outdoor_humidity_max_time: None outdoor_humidity_min: 45 outdoor_humidity_min_time: None outdoor_temp_max: 40.0 outdoor_temp_max_time: None outdoor_temp_min: 0.0 outdoor_temp_min_time: None pressure_max: 1040.0 pressure_max_time: None pressure_min: 960.0 pressure_min_time: None rain_24h_max: 50.0 rain_24h_max_time: None threshold_storm: 5 threshold_weather: 3 wind_gust_max: 12.874765625 wind_gust_max_time: None
Station data
The following table shows which data are provided by the station hardware and which are calculated by WeeWX.
Database Field | Observation | Loop | Archive |
barometer | S | S | |
pressure | pressure | H | H |
altimeter | S | S | |
inTemp | temperature_in | H | H |
outTemp | temperature_out | H | H |
inHumidity | humidity_in | H | H |
outHumidity | humidity_out | H | H |
windSpeed | wind_speed | H | H |
windDir | wind_dir | H | H |
windGust | wind_gust | H | H |
windGustDir | wind_gust_dir | H | H |
rain | rain | D | D |
rain_total | H | H | |
rainRate | rain_rate | H | |
dewpoint | S | S | |
windchill | windchill | H | H |
heatindex | heatindex | H | H |
rxCheckPercent | rssi | H | |
windBatteryStatus | wind_battery_status | H | |
rainBatteryStatus | rain_battery_status | H | |
outTempBatteryStatus | battery_status_out | H | |
inTempBatteryStatus | battery_status_in | H |
H indicates data provided by Hardware
D indicates data calculated by the Driver
S indicates data calculated by the StdWXCalculate Service