La Crosse WS-2316 on Linux: Success
For those of you Googling before buying: yes, it works!
I've wanted a weather station for years. When I saw the
La Crosse
WS-2316 in Costco this weekend for $90, I couldn't resist
buying it. The good news is, it works perfectly fine on Linux
(2.6.22). The WS-2316 includes a USB-to-serial dongle which lsusb
reports as:
Bus 004 Device 005: ID 0403:6001 Future Technology Devices International, Ltd 8-bit FIFO
The driver for that is ftdi_sio:
Device Drivers -->
USB Support --->
USB Serial Converter support --->
USB FTDI Single Port Serial Driver (EXPERIMENTAL)
Here's a udev rule you might want:
SUBSYSTEM=="tty", ATTRS{manufacturer}=="FTDI", SYMLINK="lacrosse", MODE="0666"
This creates a
/dev/lacrosse symlink to the appropriate
/dev/ttyUSBx. This is especially important if you have multiple
USB-serial adapters. I put that in
/etc/udev/rules.d/99-local.rules . That's for a Gentoo
system; Debian and others may be different.
You can use
Open2300
to talk to the station. Open2300 is clean, simple, elegant, well
documented, and has a good API for writing your own tools. UPDATE:
Oct 29: If you're a Perl person, try my new
Device::LaCrosse::WS23xx
UPDATE: Oct 16: The honeymoon is over. I'm a little disappointed by
the unit:
- Occasional bad data. Between 1-3 times a day, one of the
data values is garbage. For instance, outside temperature goes to
136 or -20, or pressure goes to 4 or 40. This could be the Open2300
software, or the unit, or even the USB-to-serial adapter. I don't
know, but it's frustrating.
- No Wind Averaging. Wind speed and direction are
instantaneous values, whatever the sensor happens to be reading at
the moment it is queried. If you log every 5 minutes, you don't get
a sense of what's really going on. If you want to average, you need
to hook up the wired connection (wireless only updates every 2
minutes), log wind speed/direction every 32 seconds, and make your
own averages.
- Barometer doesn't work well at high altitude. The
minimum pressure it handles is 22.44 inHg, which is about
29.70 inHg relative at our elevation (7200 feet). In other
words, we're right near its limit. In practice, readings around and
below 29.80 seem flaky.
- Poor display. The LCD display is poorly thought out.
There's no way to see outside temperature and rainfall
simultaneously, you need to push buttons until you get the desired
reading. But time and date, which are pretty useless for those of
us with clocks, are constantly displayed. In practice, I just fire
up my web page instead of
looking at the LCD.
You get what you pay for. At $90, this was still a good deal. More
importantly, I can afford it while the $1,000
Davis
remains a distant dream. I don't care that much about pressure or
wind speed: what I care about is rain, and to a lesser degree
temperature. So I hope the rain gauge works...
Posted by Ed | Categories:
Linux