Skip to content

Web Interface & Settings

Radovan Dvorský edited this page Sep 18, 2026 · 6 revisions

Web Interface & Settings

ESP-MeteoPlaneRadar embeds a responsive web server (ESPAsyncWebServer / asynchronous HTTP engine) accessible from any smartphone, tablet, or PC on your local network.


🌐 Accessing the Web Dashboard

Open any web browser on a device connected to the same Wi-Fi network and navigate to:

http://meteoplaneradar.local

(Or navigate to the device's IP address directly, e.g. http://192.168.1.145)


🎛️ Dashboard Sections

1. 📍 Location & Coordinates

  • Home Latitude & Longitude: Your home or observation point coordinates (e.g. 49.1234, 21.5678). All range circles, tactical maps, and radar tiles are centered on this point.
  • Auto GeoIP Lookup: Tap the Locate Me button to automatically detect your approximate coordinates based on your public IP.
  • Location Name: An optional custom label displayed on the status bar (e.g., Bratislava, Prague, Hertník).

2. ✈️ Aircraft Radar Settings

  • Default Range / Zoom: Choose the initial radius on boot (e.g., 25 km, 50 km, 100 km, 250 km).
  • Minimum & Maximum Altitude Filter: Filter out high-altitude overflights (e.g. above 10,000 m) if you only wish to track local airport traffic, or vice versa.
  • Units of Measurement:
    • Metric: Altitude in meters, speed in km/h.
    • Aviation / Imperial: Altitude in feet (ft), speed in knots (kts).
  • Planespotting Photo Modal:
    • Enable/disable automatic photo fetching from Planespotters.net.
    • Auto-Close Timer: Configure how many seconds (e.g. 5–60 seconds, default 10s) the photo modal stays on screen before closing automatically.

3. 🌧️ Weather Radar Settings

  • Primary Radar Provider: Select between SHMÚ (Slovakia), RainViewer (Global), or ČHMÚ (Czechia).
  • Radar Animation Speed: Set frame loop delay (100 ms to 1000 ms).
  • RainViewer Layer Type: Choose between Radar precipitation or Infrared Satellite cloud imagery.

4. 🖥️ Screen Manager & Display

  • Enabled Screen Toggles: You can enable or disable any of the 9 main screens in the rotation sequence:
    • Clock & Astro
    • Planes Compass
    • Meteoradar
    • Tactical Map
    • Weather Forecast
    • Financial Markets & Crypto
    • ISS Orbit Tracker
    • YouTube Channel Analytics
    • Info & Daily Statistics
  • Backlight Brightness: Set daytime display brightness (10% to 100%).
  • Night Mode & Ultra Night:
    • Night Dimming: Automatically dim the screen between specified hours (e.g., 23:00 to 06:00).
    • Ultra Night Mode: Deep-red sleep monochrome rendering at 0.5% brightness.

5. 📈 Markets & Crypto Configuration

  • 4 Custom Asset Slots: Define up to 4 custom tickers with real-time price parsing from Yahoo Finance.
  • Preset Buttons: Quick 1-click presets for European ETFs (Amundi MSCI World CW8.PA, Stoxx Europe 600 EXSA.DE), Global indices (^GSPC, ^IXIC), Commodities (Gold GC=F, Crude Oil CL=F), Cryptocurrencies (BTC-USD, ETH-USD), and Tech Equities.
  • Live Display Trigger: Instantly switch the active physical screen to the Markets screen.

6. ▶️ YouTube Channel Configuration

  • API Key: Enter your free Google Cloud YouTube Data API v3 key (e.g. AIzaSy...).
  • Channel Identifier: Specify either your channel handle (e.g., @CuriousCatFPV) or 24-character Channel ID (UC...).
  • Live Display Trigger: Jump directly to the YouTube screen with one click.

7. 🛰️ ISS Orbit Tracker Telemetry

  • Live SSA Telemetry: Lat/Lon sub-satellite point, altitude, ground speed, distance from station to ground observer, azimuth bearing, and elevation angle.
  • Pass ETA & Peak Elevation: Countdown timer to next visible line-of-sight pass and maximum predicted elevation angle.
  • Overhead Acoustic Alert Switch: Toggle sonar ping alert when ISS passes into visible range.
  • Live Display Trigger: Instantly switch the active physical screen to the ISS screen.

7. 🔊 Acoustic Alerts & Buzzer

  • Master Switch: Enable or disable onboard active buzzer globally.
  • Alert Types: Individual switches for Emergency squawks (7500/7600/7700), Watchlist flight entry, Overhead aircraft, ISS pass alert, Approaching precipitation alerts, Hourly chime, and Touch clicks.
  • Night Mute: Automatically silences all buzzer sounds during configured night hours.
  • Test Button: Audition the buzzer directly from the web interface.

8. 📸 Screen Capture (Screenshot Tool)

  • Instant Live Snapshot: Read the active physical framebuffer directly from the ST7701 display controller.
  • One-Click Download: Converts RGB565 memory into a standardized, uncompressed 24-bit BMP image (screenshot.bmp) without requiring any software restart or USB connection.

9. 🐾 Pet Companion & Gemini Live Configuration

  • Character Selection: Choose between 4 distinct companions:
    • 0: 🤖 Cyber Eyes (Robotické oči)
    • 1: 🐱 Aero Cat (Letecká mačka)
    • 2: 🐶 Radar Shiba (Radarový psík)
    • 3: 🐱 DigiCat (Virtuálna mačka - based on aquascape123/digicat under MIT License)
  • Google Gemini API Key: Enter your free Google AI Studio Gemini API key to enable dynamic, context-aware AI thoughts reacting to live airspace and weather.
  • Dynamic Flash Discovery: Automatic model discovery and fallback across Google Gemini Flash API endpoints (gemini-2.5-flash, gemini-3-flash-preview).
  • Remote Display Trigger: Pull up or dismiss the Pet Drawer on the physical screen remotely.

10. 🔄 System, Wi-Fi & OTA Firmware Update

  • Wi-Fi Manager: Scan for nearby Wi-Fi networks and change credentials without opening SoftAP mode.
  • Firmware Update (GitHub OTA): Check for new GitHub releases and flash automatically over Wi-Fi, or upload custom binaries manually.
  • Reboot & Factory Reset: Safely restart the ESP32-S3 or wipe settings back to factory defaults.

🔌 REST API Reference

The device exposes an open JSON REST API for home automation integration (e.g., Home Assistant, Node-RED, or custom scripts):

1. GET /api/status

Returns real-time operational diagnostics, radar state, and nowcasting telemetry.

Sample Response:

{
  "version": "1.9.9",
  "ip": "192.168.1.145",
  "ssid": "MyHomeNetwork",
  "rssi": -58,
  "uptime": "2d 04:12:30",
  "heap": 97668,
  "psram": 6841200,
  "screen": 0,
  "range": "50 km",
  "precip": "Rain in ~24m (18 km @ 45 km/h)",
  "precipStatus": 2,
  "precipType": 0,
  "precipEta": 24,
  "precipDist": 18,
  "precipSpeed": 45,
  "precipBearing": "SW"
}

2. GET /api/screenshot.bmp

Captures and streams the current physical display content as an uncompressed 24-bit Windows BMP image.

3. POST /api/display/resync

Forces an immediate hardware ST7701 display resynchronization (SPI Display OFF 0x28 → wait VSYNC → Display ON 0x29), instantly clearing any raster drift without rebooting.

4. POST /api/stats/reset

Resets the daily flight traffic counters and records in PSRAM.

5. POST /api/buzzer/test

Triggers an immediate test beep on the active buzzer.

6. GET /api/config

Retrieves current device configuration in JSON format.

7. POST /api/config

Updates configuration parameters. Body format: application/json.

8. POST /api/screen

Directly jumps to or steps the displayed screen: {"index": 7} or {"step": 1}. Disabled screens are safely rejected with HTTP 409 Conflict.

9. POST /api/reboot

Triggers a safe software reboot with clean display shutdown.

10. POST /api/pet/toggle

Toggles (shows or hides) the full-screen DigiCat Pet Companion drawer on the physical display remotely.

Clone this wiki locally