weewx-nuvoler

A WeeWX extension that uploads weather data to Nuvoler.com

License Python WeeWX

Overview

weewx-nuvoler is a WeeWX extension that automatically uploads your weather station’s data to Nuvoler.com, a weather data collection service supporting comprehensive meteorological parameters.

Features

Requirements

Installation

Step 1: Get Credentials

Visit Nuvoler.com to register your weather station and obtain station ID and password.

Step 2: Download the Extension

wget -O weewx-nuvoler.zip https://github.com/rc-chuah/weewx-nuvoler/archive/main.zip

Step 3: Install the Extension

For WeeWX v4 and earlier:

wee_extension --install weewx-nuvoler.zip

For WeeWX v5:

weectl extension install weewx-nuvoler.zip

Step 4: Configure

Edit /etc/weewx/weewx.conf and add the following section:

[StdRESTful]
    [[Nuvoler]]
        station_id = YOUR_STATION_ID
        station_pass = YOUR_STATION_PASSWORD

Optional configuration:

[StdRESTful]
    [[Nuvoler]]
        # Station credentials (required)
        station_id = YOUR_STATION_ID
        station_pass = YOUR_STATION_PASSWORD
        
        # Enable or disable uploads (default: true)
        enabled = true
        
        # Server URL (default: https://www.nuvoler.com/data/recibir.php)
        server_url = https://www.nuvoler.com/data/recibir.php

Step 5: Restart WeeWX

sudo systemctl restart weewx

How It Works

The extension performs the following tasks:

  1. Monitors archive records from your WeeWX weather station
  2. Extracts weather data (temperature, humidity, pressure, wind, rain, UV, dewpoint)
  3. Converts all values to metric units (Celsius, hPa, mm, knots for wind, etc.)
  4. Uploads the data to Nuvoler via HTTP GET for each new archive record

Supported Parameters

Parameter Unit WeeWX Field Description
temperature °C outTemp Outdoor temperature
rh % outHumidity Relative humidity
mslp hPa barometer Mean sea level pressure
wind_dir ° windDir Wind direction
wind_avg knots windSpeed Average wind speed
wind_min knots windSpeed Minimum wind speed (estimated from windSpeed)
wind_max knots windGust Maximum wind speed/gust
precip mm hourRain Hourly precipitation
uv Index UV UV index
dewpoint °C dewpoint Dew point

Upload Method

This extension uses HTTP GET to upload data to Nuvoler with the following format:

GET /data/recibir.php?station_id=50&station_pass=12345&temperature=22.5&rh=65&mslp=1013.2&wind_dir=180&wind_avg=12.5&wind_min=8.0&wind_max=16.0&precip=2.4&uv=5&dewpoint=14.2 HTTP/1.1
Host: www.nuvoler.com

Unit Conversion Details

The extension converts your station’s native units to the following for Nuvoler:

This ensures consistent data format regardless of your station’s configured unit system (US, Metric, or MetricWX).

Troubleshooting

Check WeeWX Logs

tail -f /var/log/syslog | grep nuvoler

Enable Debug Logging

Add to /etc/weewx/weewx.conf:

debug = 2

Then restart WeeWX:

sudo systemctl restart weewx

Test the Extension Manually

cd /usr/share/weewx
PYTHONPATH=bin python bin/user/nuvoler.py

Expected output will show the constructed URL with test data in multiple unit systems (US, Metric, and MetricWX).

Expected URL output:

Test 1 - Purely US Units (weewx.US)
Input: US units (°F, mph, inHg, inches)
https://www.nuvoler.com/data/recibir.php?station_id=50&station_pass=12345&temperature=22.5&rh=65&mslp=1013.2&wind_dir=180&wind_avg=9.5&wind_max=15.3&wind_min=9.5&precip=2.4&uv=5&dewpoint=14.2

Test 2 - Purely Metric Units (weewx.METRIC)
Input: Metric units (°C, km/h, mbar, cm)
https://www.nuvoler.com/data/recibir.php?station_id=50&station_pass=12345&temperature=22.5&rh=65&mslp=1013.2&wind_dir=180&wind_avg=9.4&wind_max=15.1&wind_min=9.4&precip=2.4&uv=5&dewpoint=14.2

Test 3 - Purely MetricWX Units (weewx.METRICWX)
Input: MetricWX units (°C, m/s, hPa, mm)
https://www.nuvoler.com/data/recibir.php?station_id=50&station_pass=12345&temperature=22.5&rh=65&mslp=1013.2&wind_dir=180&wind_avg=9.4&wind_max=15.1&wind_min=9.4&precip=2.4&uv=5&dewpoint=14.2

Expected Outputs of All Parameters (for all three tests - should be identical):

temperature=22.5 (°C)
rh=65 (%)
mslp=1013.2 (hPa)
wind_dir=180 (°)
wind_avg=9.4 or 9.5 (knots from m/s)
wind_max=15.1 or 15.3 (knots from m/s)
wind_min=9.4 or 9.5 (knots from m/s)
precip=2.4 (mm hourRain)
uv=5 (index)
dewpoint=14.2 (°C)

Common Issues

Issue Solution
No data uploading Verify station_id and station_pass in weewx.conf
Connection errors Check internet connectivity and Nuvoler server status
Missing parameters Ensure your weather station supports all sensor types
Incorrect values Verify your station’s unit system setting; extension handles all unit conversions

Test Manually with curl

curl "https://www.nuvoler.com/data/recibir.php?station_id=YOUR_STATION_ID&station_pass=YOUR_STATION_PASSWORD&temperature=22.5&rh=65&mslp=1013.2&wind_dir=180&wind_avg=12.5&wind_min=8.0&wind_max=16.0&precip=2.4&uv=5&dewpoint=14.2"

Dependencies

This extension uses only Python’s standard library. The following modules are utilized:

No external pip packages are required.

License

Copyright © 2026 RC Chuah

Distributed under the terms of the GNU General Public License (GPLv3)

Credits