« Updating Adobe Reader | Main | Time travel »

La Crosse WS-3600 serial protocol

Sander and Grzegorz managed to understand how the La Crosse WS-36001 weather station communicates over its serial port. They launched the Open3600 project and have a program for Linux and Windows (with source code) that dumps the contents of the memory.

Hat tip to them, it looks like the protocol is quite unorthodox.

Open3600 – Serial communication with the La Crosse WS-3600 weather station

  • dump3600: a program that reads the memory of the WS-3600;
  • Available as source code and binary for Linux and Window. Compiles on Mac OS X 10.4 (but not tested yet);
  • Communicates over the serial port2;
  • Works without requiring the Heavy Weather program or its history.dat file;
  • They now need help with the investigation of the memory map.

1. a.k.a LaCrosse WS3600. 

2. Serial port, COM port, RS232 port, whatever. 

TrackBack

TrackBack URL for this entry: http://ithink.ch/blog/tb.cgi/132.

Make sure JavaScript is enabled before using this URL. If you would like to ping my blog but can't, please do send me an e-mail at os3476 at this domain.

Comments

I know this is a very old post, but I’ve been trying to compile that dump3600 under 10.4 and I can’t do it! Any tips?

What I had to do to build it on Mac OS X 10.4 is this:

  1. rename the wait function in test3600.c because it confilcts with a system function;

    Line 13: replace

    void wait ( int seconds )
    

    with

    void our_wait ( int seconds )
    

    Line 31: replace

    wait (1);
    

    with

    our_wait (1);
    
  2. not build mysql3600, because I don’t have MySQL installed;

    in Makefile, line 49, replace

    all: test3600 dump3600 history3600 histlog3600 fetch3600 log3600 mysql3600
    

    with

    all: test3600 dump3600 history3600 histlog3600 fetch3600 log3600
    

Just beware that I couldn’t make the WS-3600 on a Mac, because it officially doesn’t work with USB to Serial adapters. Some apparently work, but not mine (a Kensington). LaCrosse says you need a ‘real serial port,’ whatever that means. I can’t believe they dare sell such a hack.

Many thanks for your help. I’ve compiled it fine. Unfortunately I am getting the error: Unable to open serial device /dev/tty.PL2303-3B1 (I’ve also tried /dev/cu.PL2303-3B1 as the device) - that is, the USB-serial adaptor issue. I had hoped I was onto something, since I read somewhere that adaptors working on the PL2303 chipset (mine is) would work.

Oh well, I guess the only solution would be to find a ‘real’ serial port. Do you think a PCMCIA serial card would work? I’ve got no idea about the underlying serial stuff…

Anyway, thanks, at least I know that ‘wait’ is a C++ system function! ;-)

Cheers, Joe

ftdi usb-serial might work. At least the one I have does with a ws-8610 so probably would with open3600 and a ws-3600.

There is a possible bug in the open3600 linux3600.c --count to count-- for the comms timings, but this is all pretty messed up by lacrosse’s hardware implementation anyway.

have you ever heard something about Generic Viagra

Is anyone still monitoring this forum? I’m hacking away with 3600 on the OSX 10.9 Mavericks right now. Mac Mini, and have the comport open, but that’s it so far. “Can’t read data” is latex error.

maybe we can get our heads together?

Post a comment

Make sure JavaScript is enabled before posting a comment. If you would like to post a comment but can't, please do send me an e-mail at os3476 at this domain.

Do not meddle in the affairs of Coding Ninjas, for they are subtle and quick to anger.