I have been wanting to send weather data to a Vantage Pro2 console from a DIY weather station.
Forum member kobuki has informed me that he has successfully done
this.
Kobuki's AnemometerTX is nicely structured and well documented. I does most of what I need and can certainly be the basis of my own project.
Reading DeKay's blog posts and analysing his DavisRFM69 source has helped me learn a lot about the Davis protocol.
I bought 2 915 MHz RFM69HW modules and connected them each to an Arduino. On one I run the ISSRx sketch to monitor received data. On the other I run a slightly modified version of AnemometerTX. As this Arduino doesn't actually have an anemometer attached, I am using a fixed number for the wind degree and incrementing a number for the wind speed.
Starting up each Arduino, I can see the packets being successfully sent and received. Occasionally there in a CRC error on the receiver but most packets have the correct CRC.
I've defined DAVIS_FREQS_US in DavisRFM69.h and can see the sender and receiver cycling through the 50 frequencies and the various packet types - 80, e0, 50, 40 ... etc
Each packet contains wind degree and speed data in byte 1 and 2. Bytes 3,4 and 5 are zero.
Having successfully completed this initial test, I bought a Vantage Pro2 console (US version). I set the console to station 1 and set TX_ID to 0 in AnemometerTX source - one less than what the console displays.
However, I am not receiving any data whatsoever on the VP2 console. The status displays 'R' for a while then 'L' a few minutes later. It never displays 'X' to indicate a received packet. When I enter the console diagnostics (TEMP+HUM) it usually shows zero for each field. Occasionally it may show a packet with failed CRC, but it does this even when the Arduino transmitter is off.
Any ideas on what I can try?
I can provide sample output and source code if anyone is interested.