← Dashboard

About PRR Flex Dashboard

Open telemetry from household price-responsive resources, aggregated by NEM region

What is this?

PRR Flex Dashboard is an open-data community project that collects 1-minute interval telemetry from household price-responsive resources (PRRs) orchestrated by HAEO running inside Home Assistant, and publishes it as an open dataset under CC-BY-4.0, aggregated by NEM region.

The goal is to build the demand-side equivalent of OpenElectricity: a community-maintained, publicly accessible picture of how much price-responsive flexible load exists in each NEM region, and how it responds to price signals at the household optimiser layer.

This data is framed as a community-data complement to AEMO's IPRR Reporting Track. See docs/IPRR-SUBMISSION.md for the full framing.

The household telemetry schema

Every interval, each participating household pushes one record. Full specification: SCHEMA.md. Machine-readable: schema/telemetry.schema.json. From v0.6.0 the dashboard aggregates strictly by region; postcode_prefix remains in the per-household record for privacy-preserving locality but is no longer surfaced in dashboard rollups.

Field Type Units Description
schema_versionstringliteral "2.0"Schema version guard, rejects v1.x records
interval_start_utcstringISO8601 UTCInterval start timestamp
regionstringNEM codeNSW1, QLD1, VIC1, SA1, TAS1
postcode_prefixstring3 digitsFirst 3 digits of postcode only (privacy boundary). Retained in records; not used for dashboard aggregation from v0.6.0.
net_import_kwnumberkW, signedNet grid import (+) or export (-)
price_signal_seennumber$/kWhBuy price or tariff signal seen by HAEO optimiser
price_export_seennumber$/kWhExport (FiT) price seen by HAEO optimiser
buy_sell_spreadnumber$/kWhDerived spread: price_signal_seen minus price_export_seen
optimiser_setpoint_kwnumberkW, signedSetpoint commanded by HAEO
flex_available_up_kwnumberkW, ≥0Additional load the household could absorb now
flex_available_down_kwnumberkW, ≥0Load reduction or export increase available now
storage_soc_pctnumber%, 0-100Battery state of charge
envelope_import_limit_kwnumberkW, ≥0Max allowed import (DNSP or firmware constraint)
envelope_export_limit_kwnumberkW, ≥0Max allowed export
shadow_price_importnumber | null$/kWh (native)LP dual on import envelope constraint, published natively in $/kWh
shadow_price_exportnumber | null$/kWh (native)LP dual on export envelope constraint, published natively in $/kWh
shadow_price_soc_minnumber | null$/kWh (native)LP dual on minimum SOC constraint, published natively in $/kWh
shadow_price_soc_maxnumber | null$/kWh (native)LP dual on maximum SOC constraint, published natively in $/kWh
naive_baseline_kwnumberkW, signedEstimated consumption without optimisation (the receipts field)
assets[]arrayPer-asset records (battery, EV chargers). See SCHEMA.md.
deferrable_loads[]arrayShiftable appliance loads reported by HAEO

IPRR and VSR framing

AEMO's Integrating Price-Responsive Resources (IPRR) program, and its associated Price Responsive Reporting Guidelines, require aggregators to report available capacity, price responsiveness, and envelope constraints. From the AEMO 15 May 2026 IPRR stakeholder briefing, the Visible Scheduled Resource (VSR) data points are mapped on the dashboard's VSR conformance tab as LIVE / EXTENDABLE / WIP / GAP.

This project is not a registered aggregator. It is the open-data complement: a community dataset that demonstrates what distributed household optimisers can measure and report, using only open tools and a standard schema, with no central intermediary.

Project Edith (Ausgrid, Dec 2025) identified envelope constraints as a critical missing data layer for locational DER planning. The envelope_import_limit_kw and envelope_export_limit_kw fields in this schema are a direct response to that finding.

How to join

Requirements: Home Assistant with HAEO installed and configured for your household.

  1. 1

    Create a fine-grained GitHub PAT

    In your GitHub account, create a fine-grained PAT scoped to purcell-lab/nem-flex-telemetry with Contents: Read and write.

  2. 2

    Add HACS custom repository

    In HACS, add https://github.com/purcell-lab/nem-flex-telemetry as a custom Integration repository.

  3. 3

    Install and configure

    Install "NEM Flex Telemetry" from HACS, restart HA, then go to Settings → Devices & Services → Add Integration. Enter your PAT, household ID, postcode prefix (recorded but not used for dashboard rollups), region, and HAEO entity mappings.

  4. 4

    Opt in and verify

    Agree to the CC-BY-4.0 data licence, opt in to cohort participation, and verify data is flowing at github.com/purcell-lab/nem-flex-telemetry/tree/main/data/raw/<your-id>.