Skip to main content

Read current weather data from Davis WeatherLink Live units + connected sensors

Project description

WeatherLink Live Local Python API

CI Documentation Status Coverage Status License: MIT PyPI PyPI - Python Version Ruff

Python library to read weather data from a Davis WeatherLink Live station + connected sensors (e.g. Vantage Vue). Features:

  • discover WeatherLink Live stations in the local network
  • read sensor values (called conditions) using the local API - no internet connection required

Although the WeatherLink Live stations are tighly coupled with the web service weatherlink.com, it can be used in offline situations aswell. The well designed HTTP interface makes it easy to read the current weather data via the local network - perfect for IoT / SmartHome applications. In fact, I couldn't find any other commercial weather station with an open ethernet-based protocol (please correct me if I'm wrong).

To set up the WeatherLink Live stations, you need the Davis WeatherLink app (Android, iOS) and a weatherlink.com account. Further sensors can be connected to the station. Afterwards, the weather data is accessible via weatherlink.com (if online) and the local API.

Documentation

Python library: https://weatherlink-live-local-python.rtfd.io/

API specification: https://weatherlink.github.io/weatherlink-live-local-api/

Install

pip install weatherlink-live-local

Example

import weatherlink_live_local as wlll

devices = wlll.discover()
print(devices)

# select first device, get IP address
ip_first_device = devices[0].ip_addresses[0]

# specify units
units = wlll.Units(
    temperature=wlll.TemperatureUnit.CELSIUS,
    pressure=wlll.PressureUnit.HECTOPASCAL,
    rain=wlll.RainUnit.MILLIMETER,
    wind_speed=wlll.WindSpeedUnit.METER_PER_SECOND,
)

# poll sensor data / conditions
while True:
    conditions = wlll.get_conditions(ip_first_device, units=units)
    print(f"Inside temperature:  {conditions.inside.temp:.2f} °C")
    print(f"Outside temperature: {conditions.integrated_sensor_suites[0].temp:.2f} °C")
    time.sleep(10)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

weatherlink_live_local-0.4.0.tar.gz (14.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

weatherlink_live_local-0.4.0-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page