Operator dashboard
All client sites · Azure Data Lake + IoT Hub · OCPP 2.0.1 · Fabric trial: ~14 days
🔴 Apollo Quay: Semantic model connected to demo DB (
sqldatabasedemo.database.windows.net). All 75 reports broken. Reconnect to production Datalake immediately.🔴 SJOG Midland: Data pipeline stale since 18 March 2025. 10+ NMI meters unmetered. Check Azure SQL connection credentials.
⚠️ Mandurah Plaza: All Meters Dashboard refresh warning. Most SHOP reports last refreshed Nov 2025. Review semantic model credentials.
⚠️ Microsoft Fabric trial expires ~14 days. Decide: upgrade to Premium Per User or migrate dashboards to native portal charts (recommended — removes iframe/mobile issues entirely).
Active sites
7
4 healthy · 2 warnings · 1 broken
Total meters
142
129 online · 13 issue
Billing due
3
Awaiting approval + dispatch
EV sessions today
14
2 V2H active · 1 V2G exporting
Grid import today
2,841 kWh
↑ 8% vs yesterday
V2G exported
87 kWh
$33.80 credit generated
Client site status
Monthly revenue by site
Total billing revenue — last 6 months
$84,210 YTD
Client sites
All strata clients · Click to drill into site detail · RLS enforced per site
John Curtin College of the Arts
School · SMSB · Subiaco WA
Import
17.5K
Solar
0
NMIs
1
⚡ ElecTOU
Mandurah Plaza SMSB
Retail · 19 shops · Mandurah WA
All meters
134K
Total charge
$42.4K
Shops
19+
⚡ ElecSynergy R1
St John of God Midland
Hospital · Public + Private · Midland WA
NMIs
10+
Utilities
4
Last data
Mar 25
⚡ Elec🔴 Gas💧 Water🗑 Waste
Jurien Bay Drive — EV Hub
Residential + EV · V2H/V2G · Jurien Bay WA
Services
6
CPs
6
V2G today
87kWh
⚡ Elec🔌 EVV2H/V2G🔥 HW
Meter hierarchy & accuracy check
Sub-meters must sum to check meter · Variance triggers alert · Import + export both validated
⚠️ Mandurah Plaza MDB: Sub-meter sum (131,840 kWh) varies from check meter (134,272 kWh) by +2,432 kWh (1.81%). Exceeds 1.5% threshold. Investigate meter SHOP12 or MDB calibration.
John Curtin College — meter accuracy hierarchy
Single NMI site · MSB check meter vs sub-metered loads · Synergy R1 tariff
🌐 Grid connection
NMI: 6105012345
17,541 kWh imported · 0 kWh exported
Master meter
● MSB check meter · SATEC S24
M1MSSBM2
17,541 kWh · Serial: 24242095
✓ Check meter · Variance 0.0%
Main building
JC-SUB-01
12,840 kWh
✓ 73.2%
Arts block
JC-SUB-02
3,210 kWh
✓ 18.3%
HVAC plant
JC-SUB-03
1,491 kWh
✓ 8.5%
✓ Sub-meter total: 17,541 kWh · Check meter: 17,541 kWh
Variance: 0 kWh (0.00%)
Within 1.5% threshold · Billing approved
Billing runs
Review → approve → dispatch · Invoices pushed to Xero · Emailed via GHL · Paid via Stripe
📄 Each run is visible only to Element47 until you Approve & release it. Releasing makes it visible to that project’s owner / property / site managers — each only for their own units — who then send each tenant their bill. A tenant sees a bill only after their manager sends it.
Generation stays in Synapse; Refresh re-reads after a run.
Loading billing runs…
Invoice preview — PDF template
Element47 branded tax invoice · V2G credit line · TOU breakdown · Pushed to Xero · Emailed via GHL · Paid via Stripe
Pushed to xero
Emailed via GHL
Paid via stripe
The science of energy management
Element47 Pty Ltd · ABN: XX XXX XXX XXX
PO Box 123, Perth WA 6000
admin@element47.com.au · (08) XXXX XXXX
PO Box 123, Perth WA 6000
admin@element47.com.au · (08) XXXX XXXX
Tax invoice
INV-2025-0041
Issue date: 1 May 2025
Due date: 15 May 2025
Period: April 2025
Due date: 15 May 2025
Period: April 2025
Xero ref
XERO-INV-4128
Bill to
James Haning
Unit 14 / 22 Jurien Bay Drive
Jurien Bay WA 6516
james@example.com.au · 0400 000 000
Jurien Bay WA 6516
james@example.com.au · 0400 000 000
Service address
22 Jurien Bay Drive
NMI: 6105012345 · SATEC S24
Meter: M1MSSBM2 · Serial: 24242095
Tariff: Synergy R1 · Billing: Monthly
Meter: M1MSSBM2 · Serial: 24242095
Tariff: Synergy R1 · Billing: Monthly
Meter readings — April 2025
Opening read
3,906.5 kWh
Closing read
4,218.6 kWh
Consumption
312.1 kWh
TOU on-peak
59.8 kWh (19.2%)
TOU off-peak
252.3 kWh (80.8%)
Read method
AMR auto-read
V2G exported
87.0 kWh
EV charged
84.2 kWh
Solar generated
142.0 kWh
Charges
| Service | Qty | Rate (ex GST) | Amount (ex GST) | GST | Total (inc. GST) |
|---|---|---|---|---|---|
| Electricity — Off Peak All times excl. Mon–Fri 3pm–10pmOff Peak |
252.3 kWh | $0.2340/kWh | $59.04 | $5.90 | $64.94 |
| Electricity — On Peak Mon–Fri 3:00 PM – 10:00 PMOn Peak |
59.8 kWh | $0.3188/kWh | $19.06 | $1.91 | $20.97 |
| Daily supply charge 30 days × $0.9152/day |
30 days | $0.9152/day | $27.46 | $2.75 | $30.21 |
| Hot water Meter HW-U14-01 · 4.2 kL |
4.2 kL | $8.98/kL | $37.72 | $3.77 | $41.49 |
| Cold water Meter CW-U14-01 · 8.7 kL |
8.7 kL | $3.93/kL | $34.19 | $3.42 | $37.61 |
| Internet — 100 Mbps NTD: E47-JB-U14 · Monthly plan |
1 month | $35.45/mo | $35.45 | $3.55 | $39.00 |
| Gas Meter GAS-U14-01 · 18.4 MJ |
18.4 MJ | $0.793/MJ | $14.59 | $1.46 | $16.05 |
| EV charging — CP-JB-02 (CCS2) OCPP 2.0.1 · 3 sessions · OCMF metered |
84.2 kWh | $0.2589/kWh | $21.80 | $2.18 | $23.98 |
Credits
| Credit | Qty | Rate | Amount (ex GST) | GST | Credit (inc. GST) |
|---|---|---|---|---|---|
| V2G export credit — On Peak CCS2 bidirectional · ISO 15118-20 · OCMF metered · Mon–Fri 3pm–10pmOn Peak |
87.0 kWh | $0.3188/kWh | −$27.74 | −$2.77 | −$30.51 |
Subtotal (ex GST)$249.65
GST (10%)$24.95
Total (inc. GST)$274.60
✓ V2G export credit (inc. GST)−$30.51
NET AMOUNT DUE$114.40
Audit trail
Immutable event log · Azure AD & Azure SQL · All meter reads, billing actions, payments, access events · 7-year retention
2026-04-22 07:36:14
AMR meter read completed — John Curtin NMI 6105012345
Imported: 17,541.13 kWh cumulative · Delta: +2.55 kWh · ETL view: etl_vw_ds_curated_dataout_today_john_curtin_local · Power factor: 1.24 · Freq: 50.03 Hz
System · Azure IoT Hub → Data Lake · SATEC S24
2026-04-22 06:48:30
V2H session started — CP-JB-02 / CCS2 / Jurien Bay
Session ID: SESS-20260422-0648 · RFID token: E47-U14-JH · Protocol: ISO 15118-20 / OCPP 2.0.1 · Mode: V2H discharge · Max rate: 7.4 kW
James Haning · RFID auth · Azure AD logged
2026-04-22 06:47:15
Customer portal login — Unit 14 / Jurien Bay
User: james.haning@example.com · IP: 203.x.x.x · Session: portal-sess-8841 · Azure AD B2C auth token issued · RLS scope: unit-14-jurien-bay
James Haning · Azure AD B2C
2026-04-22 01:00:04
Billing run triggered — Jurien Bay / April 2025
Azure Function: billing-engine-v2 · 14 units processed · EV sessions: 3 · V2G credit: $30.51 · Total invoices: 14 · PDF generated → Azure Blob · Xero API: 14 invoices created · GHL webhook: 14 emails queued
System · Azure Functions · Scheduled trigger
2026-04-21 20:00:26
🔴 Semantic model load failure — Apollo Quay Administration Dashboard
Error: Cannot load model schema · Connection failed: sqldatabasedemo.database.windows.net/SampleDB · This is a demo database — not production · All 75 Apollo reports affected · Action required: reconnect to production Datalake
System · Power BI Service · wabi-australia-east-a-primary-redirect
2026-04-21 19:22:08
Payment received — Unit 14 Jurien Bay · INV-2025-0034
Amount: $261.40 · Method: Visa ending 4242 · Stripe PaymentIntent: pi_3xxx · Xero invoice marked paid · GHL receipt email sent to james@example.com · Reconciled
James Haning · Stripe webhook → Portal API → Xero API
2026-04-21 15:12:44
V2G session completed — CP-JB-02 · 87.0 kWh exported to Synergy grid
Session: SESS-20260421-1312 · Duration: 02:00:44 · V2G export: 87.0 kWh · OCMF signed meter values verified · Credit: $30.51 inc. GST · Applied to INV-2025-0041 · Xero credit note: CN-2025-0041-V2G
System · OCPP 2.0.1 StopTransaction → Billing engine → Xero
2026-04-20 09:15:00
AMR read completed — Scarborough Wine
Semantic model refresh: 21 Apr 9:15 AM · John Curtin: 7:36 PM · Both within threshold · ETL views current
System · Power BI scheduled refresh · Azure Datalake
Data pipeline health
Azure Data Lake · IoT Hub · ETL views · Power BI semantic models · OCPP CSMS
🔴 Apollo Quay:
sqldatabasedemo.database.windows.net/SampleDB — demo DB, not production. Reconnect all 75 Apollo semantic models to production element47.database.windows.net/EnoDB immediately.🔴 SJOG Midland: Last refresh 18 Mar 2025 — 400+ days stale. Credentials likely expired. Renew Azure SQL connection string in Power BI Gateway or migrate to portal-native charts.
Monitoring & audit
Every pipeline health surface, judged once by the MDP every 15 minutes · registry & tariff invariants · status changes over the last 7 days · times shown in Perth
Show
Checks
Timers (heartbeats)
Open water meter events (Enware)
Source divergence (NodeG5 vs direct poll, complete days)
Audit findings (registry, tariffs, grants, PII, key mapping)
—
| Check | Severity | Subject | Detail |
|---|---|---|---|
| — | |||
Status changes
—
Device commissioning
Commission meters, smart home devices, EV chargers · Modbus TCP · BACnet TCP · OCPP · Azure IoT · Local WiFi
🔌 Devices can be commissioned via local WiFi (for basement/low-connectivity areas), Modbus TCP (meters, HVAC, BMS), BACnet TCP (building automation), OCPP (EV chargers), or Azure IoT Hub (cloud-connected devices). QR code on each device opens the commissioning flow — works offline for basic pairing.
Site: Jurien Bay Drive — Unit 14
Electricity meter
Modbus TCP · SATEC S24
NMI: 6105012345 · Serial: 24242095
Azure IoT Hub · 15-min AMR
✓ Commissioned
EV charger CP-JB-02
OCPP 2.0.1 · CCS2 / V2H
Tritium RT50 · Bay 2
ISO 15118-20 · V2H+V2G active
✓ Commissioned
Hot water meter
Modbus TCP · Kamstrup
HW-U14-01 · Pulse output
Azure IoT Hub · 15-min
✓ Commissioned
Smart thermostat
BACnet TCP · Pending
Daikin BRP · HVAC demand mgmt
Modbus TCP gateway required
◯ Pending commission
Smart lighting
WiFi · DALI-2 gateway
Common areas · Demand response
Local WiFi pairing — QR ready
◯ Pending
Blind / shade controller
BACnet TCP · Somfy
Building automation · Solar shading
Azure IoT bridge planned
◯ Planned
Solar inverter
Modbus TCP · Fronius
Strata-owned 10kW array
VPP-ready · Future: demand mgmt
◯ Scope phase 2
Battery storage (BESS)
Modbus TCP · VPP-ready
Future PPA / VPP integration
Azure IoT Hub → Data Lake
◯ Scope phase 3
💡 Offline / basement commissioning: All QR codes trigger a local mDNS pairing flow that works without internet. Device registers to the Azure IoT Hub on next connectivity. Solves basement carpark coverage gaps without requiring a mobile app.
EV charging & V2H / V2G
All charge points across all sites · OCPP 1.6J + 2.0.1 · CCS2 / CHAdeMO bidirectional · Azure CSMS
CPs online
5/6
Bay 6 offline 2h
Active sessions
2
1 V2H · 1 charge
V2H discharging
4.2 kW
CP-JB-02 · CCS2
V2G today
87 kWh
$30.51 credit
Sessions this month
47
284 kWh · $73.52
Live meter data
Real-time readings across all commissioned meters · 15-min AMR · OCPP MeterValues · Azure IoT Hub
All projects — live meter grid
Connecting…
Headline live metrics
John Curtin total power
2.55 kW
Updated just now
Jurien Bay V2H rate
4.2 kW
Discharging to home
Solar generation
3.8 kW
Jurien Bay PV array
Grid frequency
50.03 Hz
John Curtin SATEC
Live readings — all active meters
JC Total Active Power
2.55 kW
SATEC S24 · 3-phase
JC Imported energy
17,541.1
kWh cumulative
V2H discharge rate
−4.2 kW
CP-JB-02 · CCS2 · ISO 15118
L-N Avg Voltage
242.9 V
420.7V L-L · 50.03Hz
Solar generation
3.8 kW
Fronius 10kW · Modbus TCP
Power factor
1.24
JC SATEC · Target >0.95
People & access
Per-unit QR codes, self-registered residents (pending approval) and the tenancy register
Unit QR codes
Mint the signed QR a resident scans to self-register — print it in the unit. The room is locked into the code; residents can’t change which unit they claim.
Tenancy register & approvals
Loading…
Platform roles
Grant operator or site-manager access by email — the role applies to whoever signs in with that address (works with Microsoft login; no deploy needed). Seeded logins stay as the recovery baseline.
Loading…