Skip to content

Weather Radar Providers

Radovan Dvorský edited this page Sep 8, 2026 · 2 revisions

Weather Radar Providers

ESP-MeteoPlaneRadar supports three distinct meteorological radar providers. You can choose your preferred provider depending on your geographical location and weather observation needs, or switch between them on the fly directly from the touchscreen.


⛅ Supported Providers Comparison

Provider Geographic Scope Resolution & Details Best For
SHMÚ Slovakia & Central European borders Very high resolution, calibrated dBZ reflectivity, 5-minute radar updates Users in Slovakia, Eastern Czechia, Northern Hungary, and Southern Poland
RainViewer Global (Worldwide coverage) Multi-layer composite with smooth temporal interpolation, satellite cloud option General international use, pan-European storms, long-distance monitoring
ČHMÚ Czech Republic & border areas Very high resolution, calibrated radar reflectivity from Brdy and Skalky radars Users in the Czech Republic, Western Slovakia, and bordering Germany/Austria/Poland

🔄 In-Screen Provider Switching

Switching providers does not require visiting the Web settings:

  • On the Meteoradar screen, simply tap the provider name badge in the center of the display.
  • The badge will immediately cycle through:
    SHMÚ  ➡️  RainViewer  ➡️  ČHMÚ  ➡️  SHMÚ ...
    
  • The device fetches the newly selected provider's radar tiles immediately.
  • Your selection is saved to non-volatile storage (NVS) so it persists across reboots.

🛡️ Automatic Fallback Resilience

National meteorological institutes occasionally perform scheduled maintenance on their API servers or experience radar blackout periods during antenna recalibration.

To prevent blank screens or device lockups:

  • If SHMÚ or ČHMÚ returns an HTTP error code (e.g. 503 Service Unavailable, 404 Not Found, or a network timeout), the radar engine detects the failure.
  • It logs a diagnostic warning to the Serial monitor and automatically falls back to RainViewer to retrieve global composite imagery.
  • Once the primary provider's servers recover, normal operation resumes seamlessly.

🎨 Precipitation Reflectivity Scale (dBZ)

The bottom of the screen features an interactive color bar representing radar reflectivity measured in dBZ (decibels of Z):

dBZ Range Color Expected Precipitation
< 15 dBZ Transparent / Dark Blue Mist, very light sprinkles, or non-precipitating cloud echoes
15 – 25 dBZ Light Blue / Cyan Light rain or drizzle
25 – 35 dBZ Green Moderate steady rain
35 – 45 dBZ Yellow / Orange Heavy downpour, shower clusters
45 – 55 dBZ Red Intense rain, thunderstorm cores
> 55 dBZ Magenta / White / Purple Severe convective storm, torrential downpour, hail risk

⚡ Technical Data Pipeline

  1. Tile Fetching: Radar imagery is requested via chunked HTTPS requests using connection pooling.
  2. PNG / RGB Decoding: PNG tiles are decompressed on the fly using the hardware-accelerated PNGdec library directly into a PSRAM canvas.
  3. Coordinate Projection: Mercator or national azimuthal coordinate projections are mapped onto the 480x480 circular display buffer with geographic cropping centered on your home coordinates.
  4. Vector Overlay: National borders and city labels (SkCitiesData.h / CzCitiesData.h) are rendered on top of the weather layer for instant geographic orientation.

🌧️ Approaching Precipitation Detection & Nowcasting (TREC)

Starting in firmware v1.6.0, the weather engine includes an autonomous Tracking Radar Echoes by Correlation (TREC) algorithm:

1. Vector Motion Analysis

  • Downsamples sequential radar frames to a $32 \times 32$ reflectivity grid.
  • Computes 2D spatial cross-correlation across a $\pm 5$ cell search displacement window ($&lt;2\text{ ms}$ processing time on ESP32-S3).
  • Calculates the front velocity vector $(v_x, v_y)$, speed in km/h, and true compass bearing.

2. Strict Impact Geometry (Zero False Alarms)

To eliminate nuisance alerts from storms passing harmlessly in the distance:

  • Radial Approach Velocity: Must be strictly positive ($v_{radial} &gt; 0$). Storms moving away or drifting parallel are immediately ignored.
  • Cross-Track Miss Distance: The projected path must pass within $d_\perp \le 15\text{ km}$ of your home coordinates.
  • Time to Arrival (ETA): Must be within 60 minutes.

3. Precipitation Classification

Using local outdoor temperature from the Open-Meteo API and radar reflectivity:

  • Hail: Peak reflectivity exceeds $50\text{ dBZ}$.
  • Snow: Precipitation detected at temperature $T \le 1.0^\circ\text{C}$.
  • Sleet / Freezing Rain: Temperature between $1.0^\circ\text{C}$ and $3.0^\circ\text{C}$.
  • Rain: Standard liquid precipitation.

4. Alert Displays

  • Clock Face: Warning widget showing the precipitation icon, type, distance, and live ETA countdown.
  • Meteoradar Screen: Top warning banner and a directional motion arrow showing front speed and heading.
  • Buzzer: Distinctive acoustic chime (BEEP_PRECIP).

Clone this wiki locally