Skip to content
meteodrenthe.nl

meteodrenthe.nl

a weather station blog

Menu
Menu

WeatherLink Live, local API and barometer

Posted on February 17, 2021September 7, 2022 by meteodrenthe

A few weeks ago, I made the switch from reading my Davis sensors with the Meteostick to the Davis made WeatherLink Live. Though I still like the concept of the Meteostick, the reception is fairly poor and sometimes it would stop receiving data and require a reboot.

One thing you don’t have with the WeatherLink, is reception issues. My transmitters are picked up immediately and updates are received without fault.

The local API allows you to query the current status of your sensors at any time, and it even offers a UDP broadcast option for wind and rain. This means that whenever I subscribe to a specific endpoint, the WeatherLink will start sending data back to me on port 22222 at 2,5 second intervals. A simple Java application on a Raspberry Pi listens to these updates 24/7. For the other sensors, I request an update every 10 seconds. Depending on the documented update interval of the sensor, I then forward the current value to the meteodrenthe.nl server. This does complicate things a little bit. Ideally, the WeatherLink would broadcast any sensor update it receives immediately. As is, it is impossible to determine the exact timestamp of a reading, since the response gives all current sensor values at once.

The WeatherLink also submits data to the Davis servers, of course. But if you have your own database, you can use the local API to avoid having to pay to see your data at a decent refresh rate. The basic free plan only offers 15 minute update intervals.

I like that the WeatherLink has battery backup. For the Meteostick I created something similar by linking the Raspberry Pi Zero W responsible for reading the data to a UPS (uninterruptible power supply). There is a downside I will need to fix, though. In case of a power outage – which really rarely happens here, so it’s mostly theoretical – I would need to maintain a WiFi network in order to keep receiving updates. The WeatherLink on batteries will keep failed updates to the Davis servers in its buffer and submit them when able. This is not the case for any data received or requested via the local API. So, I am considering either linking my router to a battery backup, or using Raspberry Pi with a UPS as a second access point.

As I’ve written before, finding a good barometer has been an issue for me. I currently use a BMP280 sensor as my primary pressure sensor. The WeatherLink comes with an internal barometer (as well as a thermometer and hygrometer, but those aren’t very interesting). How does it fare compared to the BMP280?

The graph is showing the WeatherLink pressure reading (in blue) at sea level. The WeatherLink app allows you to specify an altitude. The API then presents two values, an absolute reading and a reading relative to sea level. I will note that I never did such a thing for the BMP280. The value shown is what it reads. It happens to be pretty close to the two nearest official KNMI stations.

It is noticeable that the BMP280 graph is more smooth. The WLL jumps up and down a bit more. My guess is that this is just regular sensor noise. I avoid this as best I can with the BMP280 by taking hundreds of readings during a 30 second period and then averaging the result. If I didn’t do that, the red line would be a lot more erratic.

So how accurate is the WeatherLink? This evening at 21.10, the two nearest KNMI stations read 1015,0 (Hoogeveen at 13,3 km) and 1014,5 (Eelde at 30,5 km). At that time, the WeatherLink reads 1014,5. Based on previous observations, it might be giving slightly low results, but this is really in the range of 0,1 to 0,3 hPa. However, the bottom line is, this barometer is giving me the best results our of the box of any I have yet tried. I will be observing it a bit more, but I’ll likely make the WeatherLink my primary barometer sensor in the near future.

My personal weather station is located in a small township in the North of the Netherlands.

This blog records updates to my setup, development of components, weather reports and anything related.

Real time data generated by the weather station can be found on meteodrenthe.nl.

Some products and technologies in use:

Davis Vantage Pro 2

Davis AirLink

Davis WeatherLink Live

Barani MeteoShield Pro

Apogee Instruments TS-100

Davis 7714 radiation shield

MetSpec RAD14 radiation shield

Vaisala DRT504

Siap+Micros SMarT CELLino

Wemos D1 Mini microcontrollers

Bosch BMP280/BMP3xx pressure sensors

Sensirion SHT35 temp/hygro sensor

PT100 temperature sensor

10K NTC thermistors

Adafruit breakout boards

ADS1115 analog-to-digital converter

Light intensity sensors

Voltaic Systems solar panels

Foscam FI9900P weather cam

Raspberry Pi Zero W

Custom printed circuit boards

C++ (Arduino code)

Java (server backend)

Angular Framework

Twitter feed is not available at the moment.
©2025 meteodrenthe.nl | Built using WordPress and Responsive Blogily theme by Superb