Welcome to the Cumulus Support forum.

Latest Cumulus MX V3 release 3.28.6 (build 3283) - 21 March 2024

Cumulus MX V4 beta test release 4.0.0 (build 4017) - 17 March 2024

Legacy Cumulus 1 release v1.9.4 (build 1099) - 28 November 2014 (a patch is available for 1.9.4 build 1099 that extends the date range of drop-down menus to 2030)

Download the Software (Cumulus MX / Cumulus 1 and other related items) from the Wiki

Davis VP2 Relay Device

For discussion of DIY weather equipment - sensors, accessories, improvements to existing kit etc
Post Reply
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Davis VP2 Relay Device

Post by mcrossley »

New Year = New Project!

Recently I have been working on something a bit different for me - micro-controller hardware! My first foray into Arduino programming. :shock:

Something that has always bugged me is the fact that the Davis VP2 system will not allow me to connect my Solar and UV sensors to my anemometer transmitter which would place them nice and high above my roof line and out of shadows. They have to be connected to the ISS which is in the garden and heavily shaded by surrounding houses and trees. I have tried to mitigate this by putting them on top of a tallish pole, but there is only so much I can do.

So, the solution, move the solar/UV sensors to the anemometer transmitter (which is just an ISS transmitter by another name), and create a little transceiver device that listens to my ISS and anemometer transmitters, combines the sensor data from both of them and rebroadcasts it as if all the sensors were connected to a single ISS. The data will be delayed a few seconds (wind only a maximum of 2.5 seconds, average 1.25 seconds), but that is not a concern.

Anyway, I chose to use a Moteino USB device as it saves cobbling components together. After much head scratching, hardware issues (which idiot ordered the wrong frequency device! :bash: ), and code tweaking (I used the VPTools base library) I finally have something that actually works!

At the moment it is receiving from my anemometer (station id #1) and my ISS (station id #2) and emulating an ISS (station id #3). My 'spare' console is only listening to ISS id #3 and is working perfectly.

The next steps will be to make a permanent housing for the transceiver, then move the main console over to using it, and then finally move the solar/UV sensors to my roof/anemometer transmitter.

Exciting stuff - well it is for me anyway! :lol:

EDIT: I should have said this whole project is built on the excellent work by DeKay, Kobuki et al over on the WX forum. Without them I wouldn't have had a clue.
Last edited by mcrossley on Sun 01 Jan 2017 5:38 pm, edited 2 times in total.
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Re: Davis VP2 Relay Device

Post by mcrossley »

Oh, and here is a short extract from the serial port log from the transceiver in action...

Code: Select all

time    Rx/Tx  raw_packet_data                 id  chan  delta_t batt   wind dir   sensor  value  extra
======  =====  =============================   ==  ====  ======= ====   ==== ===   ======  =====  ====
171079  R      A1-00-00-3C-38-00-98-70-FF-FF   2   49    2619248 ok     -    -     hum     83
172010  T      42-07-9F-00-01-00-A7-C4-FF-FF   3   12    2687508 ok     7    221   uv      0   
172556  R      E0-0A-89-80-03-00-8D-D0-FF-FF   1   29    2556768 ok     10   191   rain    -   
174698  T      82-0A-89-1E-88-00-FD-D2-FF-FF   3   13    2687516 ok     10   191   temp    48.8 (9.3)  
175113  R      50-08-96-FF-73-00-01-D6-FF-FF   1   30    2556828 ok     8    209   r_secs  -   
176318  R      E1-00-00-56-05-00-DD-03-FF-FF   2   0     5239412 ok     -    -     rain    86  
177385  T      E2-08-96-56-01-00-3C-0C-FF-FF   3   14    2687508 ok     8    209   rain    86  
177670  R      40-06-8A-FF-C1-00-F8-00-FF-FF   1   31    2557816 ok     6    193   uv      -   
178939  R      51-00-00-FF-75-00-0D-FB-FF-FF   2   1     2620236 ok     -    -     r_secs  -   
180073  T      52-06-8A-FF-71-00-77-C9-FF-FF   3   15    2687516 ok     6    193   r_secs  -   
180228  R      80-04-97-FF-C3-00-46-F0-FF-FF   1   32    2557844 ok     4    210   temp    -   
181558  R      A1-00-00-3C-38-00-98-70-FF-FF   2   2     2620236 ok     -    -     hum     83  
182760  T      92-04-97-0A-01-6B-72-6D-FF-FF   3   16    2687516 ok     4    210   gust    10  gustref:11
182785  R      E0-06-9F-80-03-00-3A-C5-FF-FF   1   33    2556812 ok     6    221   rain    -   
185343  R      50-04-9F-FF-73-00-79-8A-FF-FF   1   34    2557876 ok     4    221   r_secs  -   
185448  T      82-04-9F-1E-88-00-0E-44-FF-FF   3   17    2687516 ok     4    221   temp    48.8 (9.3)  
186798  R      E1-00-00-56-05-00-DD-03-FF-FF   2   4     5239444 ok     -    -     rain    86  
187901  R      90-03-AC-0A-01-09-E0-EB-FF-FF   1   35    2557800 ok     3    238   gust    10  gustref:9
188135  T      E2-03-AC-56-01-00-94-B1-FF-FF   3   18    2687508 ok     3    238   rain    86  
189419  R      51-00-00-FF-75-00-0D-FB-FF-FF   2   5     2620244 ok     -    -     r_secs  -   
190458  R      80-05-AE-FF-C3-00-33-3F-FF-FF   1   36    2557832 ok     5    241   temp    -   
190823  T      52-05-AE-FF-71-00-64-A4-FF-FF   3   19    2687512 ok     5    241   r_secs  -   
User avatar
steve
Cumulus Author
Posts: 26702
Joined: Mon 02 Jun 2008 6:49 pm
Weather Station: None
Operating System: None
Location: Vienne, France
Contact:

Re: Davis VP2 Relay Device

Post by steve »

Excellent stuff! Just what I need. Or did, when I was still running my weather station :lol:
Steve
prodata
Posts: 317
Joined: Sat 05 Feb 2011 7:13 pm
Weather Station: VP2
Operating System: Windows - all flavours
Location: Littleport, East Cambs, UK

Re: Davis VP2 Relay Device

Post by prodata »

Very interesting Mark - congratulations and HNY. But can you say in which ways you see this as different from Meteostick (and hence eg Meteobridge Pro Red)? Is it just the undoubted satisfaction of rolling your own circuitry, or do you see significant differences in functionality?
John Dann
Prodata Weather Systems
Littleport, East Cambs, UK
http://www.weatherstations.co.uk
RayProudfoot
Posts: 3372
Joined: Wed 06 May 2009 6:29 pm
Weather Station: Davis VP2 with Daytime FARS
Operating System: Windows XP SP3
Location: Cheadle Hulme, Cheshire, England
Contact:

Re: Davis VP2 Relay Device

Post by RayProudfoot »

Congratulations Mark! :clap: Give that man a job ... at Davis! :D

Happy New Year to you and all using Cumulus.
Cheers,
Ray, Cheshire.

Image
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Re: Davis VP2 Relay Device

Post by mcrossley »

prodata wrote:Very interesting Mark - congratulations and HNY. But can you say in which ways you see this as different from Meteostick (and hence eg Meteobridge Pro Red)? Is it just the undoubted satisfaction of rolling your own circuitry, or do you see significant differences in functionality?
Hi John, I think this is a different solution from both Meteostick and Meteobridge Pro Red. The Meteo products both effectively replace the Davis console and you interface directly to them. With Meteostick (the closest comparison) you also lose the data logger facility.

What I am doing is acting as a transparent device in the Davis only solution. The VP2 console thinks it just has a standard ISS providing the data, you retain all functionality that the console provides around logging, record keeping, UV dosage, THSW calculations, serial protocol etc. Your chosen weather program (CumulusMX for me) still connects to a standard console (Pro Red does emulate this, but Meteostick doesn't from what I understand, it needs a direct driver for say Weewx).

This is *only* providing a solution for a special case** - allowing people with solar sensors to move them to another transmitter - but I know two people within 5 miles who would like to do that (Ray and me ;) ). It is cheap enough to play with, Moteino's aren't the cheapest device but they are convenient, those more adept with Arduinos could use a very cheap board and RFM69 radio module (~£3) and make a functioning device.
RayProudfoot wrote:Congratulations Mark! :clap: Give that man a job ... at Davis! :D

Happy New Year to you and all using Cumulus.
Hardly Ray, but stay watching for progress reports, I'm away this week so not much to be done for a while...

After a full 24 hours running yesterday, the VP2 console diags screen was showing 100% good packets received from my relay device with a largest run of 2,400 odd consecutive good packets. Sounds like I have cracked the timing issues with the console I had originally. The relay device itself is reporting 92% good packets received from my two Davis transmitters, not bad, not quite as good as the consoles, but the relay has to stop receiving when it is doing its own transmissions, so I would expect it to be a bit lower.

**Edit: Actually, the special case is any combination of 'standard' ISS sensors split across up to 7 transmitters.
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Re: Davis VP2 Relay Device

Post by mcrossley »

I have released the first cut of my VP2 relay code - it has been running at my home without a hitch for a week now.

It will detect when a sensor is disconnected from a transmitter, but at present if a transmitter goes off-line completely (I have never had that happen yet in all the years running my VP2) it will 'flat-line' on the last read values from the sensors attached to that transmitter. That is the next enhancment on the to-to list.

I have 'enhanced' the base VPTools class library to:
  • Added the ability to correct for clock speed differences
  • Added the ability to correct for radio frequency differences (my two RFM69 modules were both 20-25 kHz too high compared with the Davis transmitters)
  • Added the option to flash the Moteino LED when a packet is received and/or transmitted
  • Made the first detection of a transmitter much more robust, it now locks on after seeing the first packet
Of these the first one improved the VP2 console reception stats no end, up from high 80's percent to 99.9% or 100%!
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Re: Davis VP2 Relay Device

Post by mcrossley »

The first real day of wall to wall sunshine - the new sensor location is starting to work well at this time of the year. In winter though next doors tree even shades our roof in the afternoon. :x
Capture.PNG
You do not have the required permissions to view the files attached to this post.
Herbaldew
Posts: 113
Joined: Sun 12 Mar 2017 8:33 pm
Weather Station: VP2+
Operating System: Raspberry Pi OS (64-bit)
Location: US Mid-Atlantic

Re: Davis VP2 Relay Device

Post by Herbaldew »

I bought my solar and uv sensors months after my VP2 and 6332 transmitter but remembered seeing the "sun" and "uv" receptacles when installing my 6332.

After installing the solar and uv sensors and saw that they were working I immediately searched for a ready-made pole mount for them so I could move them to my anemometer mast. You know how that Googling session play out :x

After reading about the Moteino here and elsewhere I want to give it a go but would like to verify what hardware I need. I *think* I just need the Moteino-USB but am unsure about the correct one. I read this elsewhere "You will be using 915-928 MHz same as the US model", but there are several options that have 915 in the description.

My questions are:

Which transceiver option should I choose (In US)?

Do I need either of the "Extras"?

Do I need an antenna?

Am I correct in thinking that I will just plug this into my rPi and I won't have to do any soldering?


Thanks - Herb
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Re: Davis VP2 Relay Device

Post by mcrossley »

Herb,

For Aus you will want the 915 MHz model. Which one depends on what range/connect it.
The LoRa requires a different 3rd party library - I have no experience of using this.
The CW is the standard model - fine for this application
The HCW is the higher power version - not need unless your console is going to be a long way away from the relay.

The USB model gives easiest interface to the computer/pi - just plug it in, no soldering!

You don't need the additional Flash memory.

The Motenio comes with a quarter wave wire antenna - I tuned the length of my own piece of wire to optimise the reception.
Herbaldew
Posts: 113
Joined: Sun 12 Mar 2017 8:33 pm
Weather Station: VP2+
Operating System: Raspberry Pi OS (64-bit)
Location: US Mid-Atlantic

Re: Davis VP2 Relay Device

Post by Herbaldew »

mcrossley wrote:For Aus you will want the 915 MHz model. Which one depends on what range/connect it.
Could there be a problem with too much power? All my stuff is fairly close now but at only $1 more for the HCW was thinking that was good just in case I ever spread stuff out more.

Also, I'm in the US not AUS. According to that quote from another forum both US and AUS use the same correct?

Thanks again
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Re: Davis VP2 Relay Device

Post by mcrossley »

Ah, my mistake, yes the US and Aus use the same frequencies (Aus is a sub set of the US due to mobile phone frequencies).

I have my relay sat almost next to the console, high power too close *can* cause issues. I not sure how much more power the "H" units put out, not much I suspect. My standard Moteino is received just fine my by spare console on the next floor and 3 walls away.
Herbaldew
Posts: 113
Joined: Sun 12 Mar 2017 8:33 pm
Weather Station: VP2+
Operating System: Raspberry Pi OS (64-bit)
Location: US Mid-Atlantic

Re: Davis VP2 Relay Device

Post by Herbaldew »

Kudos to LowPowerLab ... ordered Friday @ 1235 and delivery is scheduled for Monday. Quite surprised given I didn't even know they were here in the US.

I've been reading up on what software I need and how to get the Moteino up and running with your sketches. One thing I still haven't figured out and would like to know for placement planning purposes .... once I have everything loaded and running, will the Moteino do its thing stand alone (connected to a power supply) or does it still need to be connected to another device like a PC or rPi?

Thanks
User avatar
mcrossley
Posts: 12685
Joined: Thu 07 Jan 2010 9:44 pm
Weather Station: Davis VP2/WLL
Operating System: Bullseye Lite rPi
Location: Wilmslow, Cheshire, UK
Contact:

Re: Davis VP2 Relay Device

Post by mcrossley »

It just needs power, the USB socket is the most convenient way of powering it, as small phone charger will do if you aren't going to connect to a computer pi long term. I recommend you do to begin with so you can see the diagnostic output over the serial port.
Herbaldew
Posts: 113
Joined: Sun 12 Mar 2017 8:33 pm
Weather Station: VP2+
Operating System: Raspberry Pi OS (64-bit)
Location: US Mid-Atlantic

Re: Davis VP2 Relay Device

Post by Herbaldew »

mcrossley wrote: just plug it in, no soldering!
How did you attach the antenna wire?


Edit: Stuck a straightened paper click in the ant hole and am receiving from both the ISS and the 6332. However, I can't connect at all with my consoles. Both are Rev 3.15 (US) English. Any suggestions?

Thanks

Am I supposed to add or change something here? (I am trying to receive as ISS 3#)

Code: Select all

  // set the payload transmitter ids to match our transmitter id
  payloads.uv[0]       = payloads.uv[0]       + TX_ID;
  payloads.rainsecs[0] = payloads.rainsecs[0] + TX_ID;
  payloads.solar[0]    = payloads.solar[0]    + TX_ID;
  payloads.temp[0]     = payloads.temp[0]     + TX_ID;
  payloads.windgust[0] = payloads.windgust[0] + TX_ID;
  payloads.hum[0]      = payloads.hum[0]      + TX_ID;
  payloads.rain[0]     = payloads.rain[0]     + TX_ID;
Post Reply