WXforum.net

Weather Station Hardware => Davis Instruments Weather Stations => Topic started by: DeKay on January 25, 2011, 01:10:31 PM

Title: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: DeKay on January 25, 2011, 01:10:31 PM
Good news.

I have discovered that the expansion port at the back of the Davis console has a logic level serial port that allows easy interfacing to a PC without requiring the datalogger that comes with the Davis Weatherlink software.  An adapter to convert USB to these serial levels can be bought for $15 or less.  More details can be found in my blog (http://madscientistlabs.blogspot.com), specifically this post] (http://madscientistlabs.blogspot.com/2011/01/davis-weatherlink-software-not-required.html).

Anything that can provide a logic level serial interface at 3.3V would work with this technique, such as a 3.3V Arduino or PIC.  Or maybe a 5V Arduino with four resistors to make a couple voltage dividers.  One of these little microcontroller boards with a flash interface could give you gigabytes of long term data storage.  Or just use a PC.  There are lots of possibilities here.

The good news is that the Davis dongle would seem to work just as a pass-through of the commands from the host.  I have used a terminal program on my laptop and manually sent commands directly to the console that are exactly as described in the datalogger protocol document.  I would think that any software that talks to the datalogger should work with my technique, with the exception of retrieving data stored within the non-volatile memory of the datalogger itself.

More good news is that my method's USB connection should be rock solid.  There shouldn't be the hang-up issues with this approach that some others have seen with USB.

By the way, I don't own the Weatherlink software or the datalogger.  What I've done is completely arms length to Davis' design.  Any forum admin hovering their finger above the delete button should have no cause for concern.  All I have done is basically used a continuity tester to determine the expansion port pinout at the back of the console to the internal processor.  There is no "hacked software", no circumvention of any encryption, and no misuse of any copyrighted or patented Davis material.  If you want to call what I've done "reverse-engineering" (a stretch given how simple this actually was), then what I've done is still completely legal (Wikipedia link (http://en.wikipedia.org/wiki/Reverse_engineering#Legality)).

Enjoy!
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: ocala on January 25, 2011, 01:17:07 PM
Interesting.
Not hip to the technical aspect of how you did it but more that you did do it.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: Garth Bock on January 25, 2011, 01:19:26 PM
 =D> =D> =D> =D> =D> =D> =D> =D> =D> =D> =D> =D> =D> =D>

I read your blog. Friggin' fantastic. This could open it up for alot of new uses ! Great job !!! If they claim infringement...I will be one to keep a candle burning in the window for you....just kidding.

YOU DA MAN !!!!
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: Bushman on January 25, 2011, 01:29:14 PM
SOAB!  Friggin' awesome find!!!  That is the coolest hack I've seen in a long time.  Now to interface to my Redhill/CAI Webcontrol box.  Bwa-ha-ha....
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: W3DRM on January 25, 2011, 01:32:31 PM
Wow, that is fantastic! GREAT JOB!!!  =D>

I can just imagine having some means of capturing months or years worth of data on a single dongle on a remote VP2 or Vue and then being able to download it all to a PC later.

Keep us posted on your progress on this endeavor.

BTW, your blog is great reading...
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: DeKay on January 25, 2011, 01:35:37 PM
Thanks for the kind words, guys.  I'll tell you, I was pretty psyched the first time I typed "TEST" in a terminal and it said "TEST" back to me.  There were a number of educated guesses that I made that I mention in my blog, so I actually got a bit lucky getting something working as quickly as I did.

Have fun with this.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: Downlinerz2 on January 25, 2011, 02:19:44 PM
   Great job!!!  You may get a Nobel Prize for that one!! =D> =D> =D>
       Mark
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: xykotik on January 25, 2011, 02:42:32 PM
Thanks for sharing, DeKay.  Cracking the Davis DNA makes you the Francis Crick of WX hacking. =D>
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: xykotik on January 25, 2011, 03:02:34 PM
I followed some of the links in your blog, DeKay.  It looks like Davis themselves are publishing their datacom specifications (where did you get the FW dump?) probably for wx software developers.  And if the protocols come from a common chip available on the open market, then you are violating nothing (except for warranty, obviously) by exploitation of these pseudo-open specs.  Just remember to disclaim yourself, and recognize/acknowledge tradmarks when you use them.  Then file your OWN patents before you go into overseas production of your third-party dataloggers.  (Just be sure to keep the price low enough that someone NEW doesn't develop a desire to try to hack it.)

*Oh, my own disclaimer...  Free advice is worth what you pay for it.  I am not an attorney.  Don't listen to a word I say.  That would be foolish.  (Just ask my wife.)
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: SlowModem on January 25, 2011, 03:27:03 PM
Thanks for sharing, DeKay.  Cracking the Davis DNA makes you the Francis Crick of WX hacking. =D>

Or maybe Fargo North, Decoder.   #-o
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: dalecoy on January 25, 2011, 04:01:22 PM
Thanks for the kind words, guys.  I'll tell you, I was pretty psyched the first time I typed "TEST" in a terminal and it said "TEST" back to me.  There were a number of educated guesses that I made that I mention in my blog, so I actually got a bit lucky getting something working as quickly as I did.

Have fun with this.

Nice work - and you made your own luck, I think. 

In particular, thanks for the extensive documentation of the hardware interface, and of your efforts.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: xykotik on January 25, 2011, 04:39:55 PM
Or maybe Fargo North, Decoder.   #-o
Now all I can think about is Morgan Freeman dressed like a vampire, singing...
..."a peck on the neck..."

Good 'ol Electric Company (wasn't it?)
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: DeKay on January 25, 2011, 07:46:04 PM
It looks like Davis themselves are publishing their datacom specifications (where did you get the FW dump?)

Well, I guess I could say that I de-capped the processor and used a laser to clear the protection fuse on the Atmel micro (which Davis almost certainly would have set when they flashed the chip), and then used a JTAG board to read the firmware out bit by bit.  But the truth of the matter is, I just downloaded it from the Davis website (http://www.davisnet.com/support/weather/software_frmwr.asp).

So let's say you click that link and go to their website.  Davis says

Quote
Our Firmware is downloadable at no charge, but requires use of our Vantage Pro Updater for Vantage Pro2 or Vantage Pro Updater for Original Vantage Pro, which are available for purchase through our secure e-commerce system.

This isn't true anymore.  With the firmware, a free program called avrdude (http://www.bsdhome.com/avrdude/), and a hacked up parallel printer cable or other inexpensive programmer, you could do it yourself.  Note that the signals that avrdude needs to reprogram the processor are available on the expansion port pinout shown on my blog.  This only makes sense, right?  Davis would want to make any process requiring a firmware update simple to do.  Not that there is much point in doing this as the latest firmware is dated Nov 2005.  But you could have fun with this, and use a hex editor to change the "It's raining cats and dogs" message to something more... colorful.  Or you could screw up the process and totally brick your console.

Edit: Looks like avrdude and a custom cable would not be required.  See this post (http://www.wxforum.net/index.php?topic=10315.msg103181#msg103181).

Then file your OWN patents before you go into overseas production of your third-party dataloggers.  (Just be sure to keep the price low enough that someone NEW doesn't develop a desire to try to hack it.)

This is left as an exercise for the reader.

Thanks for sharing, DeKay.  Cracking the Davis DNA makes you the Francis Crick of WX hacking. =D>

I'm more a Tyler Durden kind of guy.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: Bushman on January 25, 2011, 10:50:37 PM

So let's say you click that link and go to their website.  Davis says

Quote
Our Firmware is downloadable at no charge, but requires use of our Vantage Pro Updater for Vantage Pro2 or Vantage Pro Updater for Original Vantage Pro, which are available for purchase through our secure e-commerce system.

This isn't true anymore.  With the firmware, a free program called avrdude (http://www.bsdhome.com/avrdude/), and a hacked up parallel printer cable or other inexpensive programmer, you could do it yourself.  Note that the signals that avrdude needs to reprogram the processor are available on the expansion port pinout shown on my blog.  This only makes sense, right?  Davis would want to make any process requiring a firmware update simple to do.  Not that there is much point in doing this as the latest firmware is dated Nov 2005.  But you could have fun with this, and use a hex editor to change the "It's raining cats and dogs" message to something more... colorful.  Or you could screw up the process and totally brick your console.



For the last several years Davis had a direct from PC install; no avrdude device required.  Davis' website sucks.  I like the idea of changing the warnings.  "It is warmer on Mars"; "Quick Dorothy, grab Toto" etc.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: xykotik on January 25, 2011, 10:54:04 PM
Quote
I'm more a Tyler Durden kind of guy.

I'll take that to mean you fancy yourself more of an anarchist rather than a Brad Pitt wannabe  \:D/

Nah, I dig what you are doing.  I got all of my Tivo's hacked to the point they are doing what I want them to do, so now I have to try and break my NEW toy (wx station).

Quote
I like the idea of changing the warnings.  "It is warmer on Mars"; "Quick Dorothy, grab Toto" etc.

We were discussing on another thread today the possibility of adding "SNOWMAGEDDON" to the Davis forecasts, so your timing is right on.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: SLOweather on January 26, 2011, 01:58:57 PM
Well, this is great news! Now to figure out how I wanna exploit it... Smile

Thanks the for post and the blog entries.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: SLOweather on January 26, 2011, 02:08:16 PM

Quote
I like the idea of changing the warnings.  "It is warmer on Mars"; "Quick Dorothy, grab Toto" etc.

We were discussing on another thread today the possibility of adding "SNOWMAGEDDON" to the Davis forecasts, so your timing is right on.

In this thread: http://www.wxforum.net/index.php?topic=532.0, I mentioned that I opened a VP2 firmware upload in Notepad and searched it for a couple of words to get the entire list of forecasts, and status line messages.

It should be easy to open the file with an appropriate hex editor or something, and carefully edit the messages you want to change, and the reflash your console so it would show those messages appropriately.

NOTE: Don't blame me if it doesn't work or hoses your console, but please let us know if you try it. I dunno if the firmware does any CRC checking or whatever, so it might not even load.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: dalecoy on January 26, 2011, 02:53:36 PM

In this thread: http://www.wxforum.net/index.php?topic=532.0, I mentioned that I opened a VP2 firmware upload in Notepad and searched it for a couple of words to get the entire list of forecasts, and status line messages.

It should be easy to open the file with an appropriate hex editor or something, and carefully edit the messages you want to change, and the reflash your console so it would show those messages appropriately.


The file that you need to edit is flash.bin

What gyrations are necessary to obtain the most recent flash.bin file?
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: SLOweather on January 26, 2011, 03:19:12 PM

What gyrations are necessary to obtain the most recent flash.bin file?

Gyrate over to http://davisnet.com/support/weather/software_frmwr.asp and pick your poison...
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: C5250 on January 26, 2011, 04:47:22 PM
It should be easy to open the file with an appropriate hex editor or something, and carefully edit the messages you want to change, and the reflash your console so it would show those messages appropriately.

NOTE: Don't blame me if it doesn't work or hoses your console, but please let us know if you try it. I dunno if the firmware does any CRC checking or whatever, so it might not even load.

Very easy if you are editing flash.bin, the direct PC version may do a crc check (I have an updater, so I haven't felt like trying to edit the exe). A couple tips if editing the messages, the string has to end with 0x00. So you would be limited to a string of the same length or shorter, unless you also edit multiple messages and the table with the message addresses.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: dalecoy on January 26, 2011, 05:03:31 PM

What gyrations are necessary to obtain the most recent flash.bin file?

Gyrate over to http://davisnet.com/support/weather/software_frmwr.asp and pick your poison...

I gyrated there, and couldn't find anything but .exe files.  (In fact, I had already gyrated there, and that's why I asked how to gyrate the flash.bin files)

[Yes, I know that several years ago, there were .zip files that contained the updater plus the flash.bin file.  The latest one of those that I have seems to be from 2007]

So, a bit more helpful explanation would be appreciated.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: C5250 on January 26, 2011, 08:31:53 PM
Interesting, now all they have is exe that if double clicked wants to upload to an updater...

If you open the exe with winzip or winrar (and probably many other extraction programs) you can extract the files though.

Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: dalecoy on January 26, 2011, 10:41:06 PM
Interesting, now all they have is exe that if double clicked wants to upload to an updater...

If you open the exe with winzip or winrar (and probably many other extraction programs) you can extract the files though.


That requires downloading the "for use with updater" .exe - doesn't work with the "direct from PC" .exe, as far as I could determine.

So, unless someone has the Updater (Part #: 06311VP2), or (as mentioned above) "program called avrdude, and a hacked up parallel printer cable or other inexpensive programmer" - modifying the text in the firmware won't help.

But then - building that cable/interface/program is exactly the point of this topic.  Thanks for the pointer to the method.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: DeKay on February 21, 2011, 10:40:00 AM
I thought I'd bump this thread with some new information from one of the readers (СаД) on my blog:

- WeatherView32 software is "superb" with this interface
- Cumulus software is "perfect"

Since СаД was also able to flash a firmware update to his Vue with this interface (gutsy move!), it is starting to look like pretty much any software that works with the Davis logger will work with this method as well.  You just don't get the archiving if the connection to the PC collecting the data is lost.  I'm dying to know if the Davis Weatherlink software would work or not.  Maybe someone fighting with a balky USB datalogger could give this approach a shot.

СаД's work also points out the error in this post of mine (http://www.wxforum.net/index.php?topic=10315.msg98857#msg98857) where I thought a separate setup was needed to re-flash the console firmware.  It seems that one $15 adapter can do it all.  Sweet.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: dalecoy on February 21, 2011, 10:49:53 AM
I haven't chased all of the details of your postings, so perhaps this is answered elsewhere. 

What do you use for the physical connection to the console connector (normally used for the logger)?
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: SLOweather on February 21, 2011, 12:22:56 PM
What do you use for the physical connection to the console connector (normally used for the logger)?

It's a standard 0.100" connector. You can buy them from Jameco or similar. They usually crimp onto a ribbon cable, or you can get them in PC mount. Davis molds theirs into the potting.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: dalecoy on February 21, 2011, 01:43:12 PM
Thanks.  I'm familiar with that type of connector. 
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: DeKay on February 21, 2011, 01:55:59 PM
It's a standard 0.100" connector. You can buy them from Jameco or similar. They usually crimp onto a ribbon cable, or you can get them in PC mount. Davis molds theirs into the potting.

It is not a standard 0.100" connector, it just looks like it.  0.1" = 2.54 mm.  The pin spacing on the Davis connector is actually a little finer at 2mm (go measure it if you don't believe me), so you need something like this (http://www.newark.com/fci/89361-720lf/wire-board-conn-receptacle-20pos/dp/63K0931?in_merch=Popular%20Products&in_merch=Popular%20Products&MER=PPSO_N_C_EverywhereElse_None), along with a compatible ribbon cable.  Note that Newark has a free shipping deal on right now too.

That is the right way to do it, which of course is not what I'm doing right now since I didn't have 20 pin 2mm IDC connectors just lying around when I started all this.  So I directly soldered some 30 gauge wire to the Davis circuit board to give me easy access to some of the pins.  For the serial connection, I salvaged some individual sockets out of an old connector I had lying around, attached some wire to them, insulated them with masking tape, pushed them onto the expansion connector, and hooked up using some test leads with alligator clips at each end.  This fragile mess keeps things exciting, since I'm always just one short circuit away from disasterous consequences.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: SLOweather on February 21, 2011, 03:19:28 PM
My bad for eyeballing it, not measuring or trying it.

Still, at least it's a commonly available connector.

Sounds like you play work like I do. ;) It's only fun if your close to letting the magic smoke out of something expensive.

It is not a standard 0.100" connector, it just looks like it.  0.1" = 2.54 mm.  The pin spacing on the Davis connector is actually a little finer at 2mm (go measure it if you don't believe me), so you need something like this (http://www.newark.com/fci/89361-720lf/wire-board-conn-receptacle-20pos/dp/63K0931?in_merch=Popular%20Products&in_merch=Popular%20Products&MER=PPSO_N_C_EverywhereElse_None), along with a compatible ribbon cable.  Note that Newark has a free shipping deal on right now too.

That is the right way to do it, which of course is not what I'm doing right now since I didn't have 20 pin 2mm IDC connectors just lying around when I started all this.  So I directly soldered some 30 gauge wire to the Davis circuit board to give me easy access to some of the pins.  For the serial connection, I salvaged some individual sockets out of an old connector I had lying around, attached some wire to them, insulated them with masking tape, pushed them onto the expansion connector, and hooked up using some test leads with alligator clips at each end.  This fragile mess keeps things exciting, since I'm always just one short circuit away from disasterous consequences.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: dalecoy on February 21, 2011, 04:38:51 PM
It is not a standard 0.100" connector, it just looks like it.  0.1" = 2.54 mm.  The pin spacing on the Davis connector is actually a little finer at 2mm (go measure it if you don't believe me), so you need something like this (http://www.newark.com/fci/89361-720lf/wire-board-conn-receptacle-20pos/dp/63K0931?in_merch=Popular%20Products&in_merch=Popular%20Products&MER=PPSO_N_C_EverywhereElse_None), along with a compatible ribbon cable.  Note that Newark has a free shipping deal on right now too.

Thanks for the info.  And since this is the usual type of IDC connector, it should be relatively easy to manually connect the 3 necessary wires to the connector (and carefully solder them) without having to find the 1mm ribbon cable.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: belfryboy on October 24, 2011, 06:01:00 AM
I have recently designed and built a USB to VP unit, based on Dekay's pinout, so let me know if any of you are interested. I have succesfully connected this to a VP1 which has the same pinout as the VP2 and Vue, using Cumulus software. I will ship worldwide at cost.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: gwynethh on October 24, 2011, 11:42:02 AM
I haven't chased all of the details of your postings, so perhaps this is answered elsewhere. 

What do you use for the physical connection to the console connector (normally used for the logger)?

You can make four connectors from a LAPTOP PC IDE cable (a regular IDE cable will NOT work). It will nee to be cut down from 22 pin to 10 pin but a hobby knife and care will do that.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: belfryboy on November 15, 2011, 11:07:59 AM
to those that are interested, the 20 way header is a Hirose DF11, and the part that mates to the boards is specifically a DF11-20DS-2DSA(05)

http://www.hirose.co.jp/cataloge_hp/e54305002.pdf (http://www.hirose.co.jp/cataloge_hp/e54305002.pdf)
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: Flag on November 16, 2011, 05:21:49 AM
Are some getting a little lost with what they are trying to do here ?????
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: DeKay on November 16, 2011, 09:47:53 AM
Are some getting a little lost with what they are trying to do here ?????

Nope.  Just you.  This connector stuff is entirely relevant.
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: HandyGeek on December 26, 2011, 02:46:50 PM
to those that are interested, the 20 way header is a Hirose DF11, and the part that mates to the boards is specifically a DF11-20DS-2DSA(05)

http://www.hirose.co.jp/cataloge_hp/e54305002.pdf (http://www.hirose.co.jp/cataloge_hp/e54305002.pdf)

Is this what is used with the Dekay/Belfryboy interface board?

Does it have to be modified?

Found it here:
http://octopart.com/df11-20ds-2dsa%2805%29-hirose-260412
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: belfryboy on December 26, 2011, 05:06:07 PM
to those that are interested, the 20 way header is a Hirose DF11, and the part that mates to the boards is specifically a DF11-20DS-2DSA(05)

http://www.hirose.co.jp/cataloge_hp/e54305002.pdf (http://www.hirose.co.jp/cataloge_hp/e54305002.pdf)

Is this what is used with the Dekay/Belfryboy interface board?

Does it have to be modified?

Found it here:
http://octopart.com/df11-20ds-2dsa%2805%29-hirose-260412
that's the one
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: HandyGeek on December 26, 2011, 09:46:09 PM
Cool, thanks!

As soon as I am certain my console is OK and get the ISS mounted I will move ahead to look into mods ...

APRS posting, weather service posting, my personal weather page posting, wireless link between PC and console ... great fun!

Thanks!
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: bayu on July 12, 2012, 11:47:48 AM
Keep trying Sir...
Title: Re: Interfacing to the Davis console without the Weatherlink Datalogger
Post by: Gonzalinho_89 on November 16, 2021, 09:33:55 AM
Hola, tengo una estación vantage vue y quisiera saber si basta con conectar el puerto serie de una pc a los pines Rx y Tx de la estación para poder leer los datos meteorológicos que envía la misma.
Gracias.