HALCYON by astraeus
v0.8.6
LOCATION not set
ready
Find your location
— or enter coordinates —
Search radius 10 mi
Larger radius = more reference stations, less local precision
What to measure
Astraeus device not connected
Pull live GPS + water temp from your Supabase feed.
ETL log
Waiting for location…
Drop pin
Click map to set location
Available sources 0 found
CHIP LEGEND
direct API · works from your browser today
needs server · valid data, but blocked by CORS without a backend proxy
modeled / partial · use with caution
no data for this parameter · skip these
tap { } API on any source to see the actual endpoint and how the response is parsed
Set location first to discover sources
0 selected
Legend
Your location
NOAA CO-OPS
NDBC buoy
USGS NWIS
Open-Meteo
Needs proxy
Reference stations 0
YOUR DEVICE ·
24H LOCAL
Source Type Value Distance Δ device Trend Link
Fetch data first
Legend
Device (local)
NOAA CO-OPS
NDBC
Open-Meteo
Warm anomaly
Cool anomaly
Trend
No data loaded.
Series
Domain
Inferences
Fetch data in Tab 2 to generate inferences
Resolution gap — the core argument
Set a location and fetch sources to see the resolution analysis.
Correlation & lag analysis
Saved readings across fetches. Detects: "when X rises, local temp rises N hrs later."
Fetch data 2+ times to build history and detect correlations.
Why local sensing matters
Public reference stations measure conditions at a single point, sometimes tens of miles from where you operate. The delta between that reading and your local water is not noise. It is signal. It reflects bathymetry, tidal phase, freshwater input, thermal stratification, and the specific microclimate of your site.
PurpleAir demonstrated this for air quality: sparse regulatory monitors miss local variation. In the Puget Sound region alone, a single NOAA station covers hundreds of square miles of water that behaves differently at every embayment, marina, and farm lease. The gap between "regional" and "your exact site" is where decisions get made wrong.
The comparison you see in Tab 03 is that gap, made visible. A calibrated in-situ sensor anchored to public reference data is the observational foundation a site-specific digital twin is built on. Halcyon delivers that foundation today: normalized streams from heterogeneous public sources, your local readings, and the deltas between them. The predictive model that turns this foundation into a working twin is on the roadmap below.
From observation to digital twin
[built] 1. Collect local readings from your device
[built] 2. Normalize heterogeneous public sources to common schema
[built] 3. Compute local-to-reference delta with source-aware tolerance
[built] 4. Surface delta over time as a first-class view
[partial] 5. Apply domain-specific decision rules
[partial] 6. Detect anomalies and trigger alerts
[roadmap] 7. Fit a site-specific forward model — the digital twin
[roadmap] 8. Publish forecasts and operational guidance
A digital twin is a model that predicts your site's behavior under conditions it has not yet seen. Building one requires 30+ days of co-located local readings, multi-parameter coverage, and a fitted relationship between regional drivers and local response. The data foundation you see here is what makes that fit possible later.
Active threshold rules
Water temperature — upper threshold
Alert when local reading exceeds threshold. Relevant for spawning stress, HAB risk, DO depletion.
Water temperature — lower threshold
Alert when local reading drops below threshold. Relevant for cold stress, ice risk, harvest timing.
Anomaly — delta vs reference
Alert when local reading diverges from a reference by more than its source-specific tolerance band. The multiplier scales each source's built-in tolerance: 1.0× uses the band as-is (CTD ±0.7, NOAA ±1.0, NDBC ±1.5, model SST ±2.5), 2.0× requires double that. Sources flagged as "no data for parameter" are skipped.
Data gap — device offline
Alert when device stops reporting. Minimum heartbeat interval.
Alert log
No alerts triggered yet.
Predictive layer — in development
Short-term forecast (72h)
Uses local sensor history + regional reference trend to project likely local conditions. Requires 7+ days of local data to calibrate. Powered by linear delta model → future: LSTM with reference inputs.
Seasonal baseline model
After 30+ days of readings, build a local climatology — expected range for any given week of year. Enables "is today anomalous?" queries against your own site history, not just regional averages.
Event detection
Upwelling signatures, stratification onset, HAB precondition flags, cold-snap detection. Requires multi-parameter sensor (temp + salinity + DO).
ARCHITECTURE NOTE

Predictions are Supabase Edge Functions that run on a schedule, reading from local_readings and reference_readings, writing outputs to predictions and alerts. Threshold rules live in alert_rules. Notification delivery (email, SMS, webhook) is a separate delivery service.
▶ DEMO MODE — synthetic data loaded. · exit demo
Log 0 (no activity yet)