Skip to content

Releases: keithah/openwrt-starwatch

v0.1.8

Choose a tag to compare

@github-actions github-actions released this 31 Jul 06:15

Full Changelog: v0.1.7...v0.1.8

v0.1.7

Choose a tag to compare

@github-actions github-actions released this 31 Jul 05:05

Full Changelog: v0.1.6...v0.1.7

v0.1.6

Choose a tag to compare

@github-actions github-actions released this 31 Jul 05:02

Full Changelog: v0.1.5...v0.1.6

v0.1.5

Choose a tag to compare

@github-actions github-actions released this 31 Jul 05:00

Full Changelog: v0.1.4...v0.1.5

v0.1.4

Choose a tag to compare

@github-actions github-actions released this 24 Jul 19:34

Full Changelog: v0.1.3...v0.1.4

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 21 Jul 10:50

Full Changelog: v0.1.2...v0.1.3

Starwatch 0.1.2

Choose a tag to compare

@keithah keithah released this 21 Jul 04:33

0.1.2 — 2026-07-20

  • Reduces dashboard render churn by caching derived history data and avoiding
    unnecessary sky-map, outage, and event redraw work.

  • Avoids redundant 15-minute battery power queries and repeated chronological
    history sorting.

  • Adds short-lived browser caching for embedded static dashboard assets.

  • Sanitizes non-finite dish telemetry before REST or WebSocket encoding, so a
    degraded link cannot truncate status JSON or force one-second reconnects.

  • Uses crash-safe SQLite WAL/FULL mode with a busy timeout, bounds pre-NTP
    pending data, follows configured history retention, and fsyncs UCI file and
    directory updates before reporting success.

  • Persists alert/failover runtime state, resolves active rules when disabled,
    isolates webhook and ntfy workers, redacts endpoint secrets, and stops
    retrying terminal HTTP 4xx responses.

  • Restricts query-string API tokens to the WebSocket endpoint, moves LuCI token
    retrieval to write ACL scope, and adds an idle timeout without imposing a
    WebSocket-breaking write timeout.

  • Retains last-good MWAN state on ubus failures, serializes mwan3 reload,
    resolves hostname probes before ICMP, and bounds dish speed-test status RPCs.

  • Makes UCI apostrophe escaping round-trip safe, rejects line-breaking delivery
    URLs and non-persistable rule edits, and invokes live config callbacks outside
    the manager lock.

  • Hardens the SPA for empty API responses, WebSocket authorization failures,
    partial settings, blank numeric inputs, stable list identity, and null chart
    gaps; buffers obstruction PNGs before committing response headers.

0.1.1 — 2026-07-18

Starwatch 0.1.1

Choose a tag to compare

@keithah keithah released this 18 Jul 18:36

Starwatch 0.1.1

This patch release makes the dashboard strict about its telemetry source and disconnected state.

Highlights

  • Dish gRPC only: Telemetry graphs and header metrics use only terminal gRPC throughput, latency, loss, and power data. Router counters and WAN probes never substitute for dish telemetry.
  • Obvious disconnection: When the terminal is unreachable, the dashboard shows STARLINK DISCONNECTED and WAITING FOR DISH.
  • No unrelated WAN data: All current-data cards, including WAN health and outage views, disappear until Starlink gRPC reachability returns. Settings and historical Events remain available.
  • Live-stream integrity: Retained dish snapshots are sent as dish:null after reachability is lost and are not appended as fresh samples.

Install or upgrade

The public feed supports aarch64_cortex-a53. SSH to the router as root and run:

wget -qO- https://keithah.github.io/openwrt-starwatch/install.sh | sh

The matching IPKs are attached below for manual installation.

Starwatch 0.1.0

Choose a tag to compare

@keithah keithah released this 18 Jul 02:30

Starwatch 0.1.0

The first public Starwatch release for OpenWrt and GL.iNet routers.

Highlights

  • Dish diagnostics: GPS/PNT status, disablement state, latency summaries, outage analysis, and terminal power history.
  • Battery runtime: local battery configuration with transparent derived runtime estimates.
  • Starlink-router support: topology-B telemetry plus guarded client and Wi-Fi controls, with readback confirmation and credential-preservation protection.
  • VPN-proof dish access: self-healing 192.168.100.1/32 host-route recovery that keeps local dish management reachable without changing general routing.
  • Dashboard: seven-section icon-rail navigation with browser-local Overview visibility and density preferences.
  • Distribution: signed GitHub Pages opkg feed with automatic GL.iNet/LuCI package selection.

Install

The public feed currently supports aarch64_cortex-a53. SSH to the router as root and run:

wget -qO- https://keithah.github.io/openwrt-starwatch/install.sh | sh

The installer checks the architecture before changing anything, preserves unrelated custom feeds and Starwatch configuration, keeps OpenWrt signature verification enabled, and installs gl-app-starwatch on GL.iNet SDK4 or luci-app-starwatch on other supported OpenWrt systems.

The matching IPKs remain attached below for manual installation.