Utility Server / DSO
Administer shared programs, publish/cancel controls, edit a configured default and change topology membership. Administrative actions have their own history.
INDEPENDENT · FICTIONAL · EDUCATIONAL
An independent educational environment for exploring CSIP-Aus concepts and interactions.
Inspect simulated HTTP requests, XML and resource relationships. Publish a fictional export limit, advance virtual time and see when a polling client learns about the change.
No real electricity networks, customers or DER devices are connected.
Simulated request → returned representation
Human-readable views make the exchanges visible.
Fictional data. No real systems or devices are controlled. This is not an implementation reference, conformance test or certification system. Do not enter private information, real NMIs, certificates, credentials or operational data.
Read the full disclaimer, privacy and limitationsAggregator → Utility Server
GET https://utility.example/edev?s=1&l=1Read one page of the discovered EndDeviceList. No request body.
200 OKContent-Type: application/sep+xml
EndDeviceList · all=6 · results=1
Demo Site 01 · /edev/1
DERListLink → /edev/1/derFunctionSetAssignmentsListLink → /edev/1/fsa
Expanding an included item reads the same response. Following its returned link sends a new GET. A link is an address, not the linked resource’s contents or permission to write.
ABOUT THE PROJECT
For technical and nontechnical learners exploring distributed energy resource (DER) communications. Discover resources, register a fictional site, inspect program assignments, export-only controls and polling. Human-readable views, XML and HTTP details describe the same returned representation.
This deliberately small subset does not model electrical power flow, measured export, DER execution or complete production onboarding.
HOW IT WORKS
Administer shared programs, publish/cancel controls, edit a configured default and change topology membership. Administrative actions have their own history.
Follow returned links, register fictional sites and inspect responses. Server changes stay unknown until successful GETs or accepted Notifications deliver information. Partial or missed messages need reconciliation.
Pause, step or play a deterministic clock. An explicitly omniscient view compares server state with retrieved client information.
LEARNING ACTIVITIES
Inspect callback TLS, content limits, missed messages and reconciliation.
Verify a confirmed reset while an independent local practice stays unchanged.
Discover devices, assignments and shared programs.
Preview POST, follow Location and update DER information.
Distinguish publication, discovery, active interval and cancellation.
Observe changed defaults and topology reaching the client.
Learning exercises, not certification tests.
STANDARDS AND REFERENCES
The simulator targets a selected CSIP-Aus v1.2 teaching profile. The most recent IEEE edition is not necessarily the edition/profile combination represented by every fixture. Newer profiles are not automatically implemented.
CSIP-Aus Documents and Tools links to SA TS 5573:2025 and related material. Standards may be copyrighted or require purchase. Publishers are authoritative for their own materials; links imply neither endorsement nor redistribution permission. SunSpec certification resources do not certify this Australian teaching simulator.
IndexedDB stores fictional registrations, resource changes, cached responses and history locally. Reload resumes this tab’s practice. Continue saved practice opens a local chooser; opening another saved practice creates an independent paused copy and preserves the original. Practices expire after 24 hours of inactivity. Clearing browser storage removes saved practice. Sessions do not synchronise between devices, and someone using the same browser profile can access local data.
The simulated Utility Server is logically authoritative within your practice, not a secure remote utility service. Normal website hosting requests still occur; external links use other publishers’ policies. No analytics, accounts or external telemetry were added for this release.
Privacy, retention and complete limitationsContributions, corrections and suggestions are welcome. If you find an error, have an idea for a learning scenario, or would like to improve the simulator, authorised repository collaborators can open a GitHub issue or submit a pull request.
Proposed changes are reviewed for technical accuracy, relevance, quality and project scope. Submission does not guarantee acceptance, implementation or a response.
The GitHub repository, project documentation, issues and pull requests require authorised access. Do not post private information, real customer data, credentials or confidential material.
New here? Read Help for the resource model, REST operations and virtual clock, or see what changed in each version.
Eleven guided journeys, resource explanations, a learning glossary and optional same-practice side-by-side perspectives cover the delivered discovery, registration, controls, polling and Notification subset. Shared training rooms remain deferred. There are no real device controls, telemetry or certificates.