> For the complete documentation index, see [llms.txt](https://docs.myrspoven.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.myrspoven.com/release-notes/may-2026.md).

# May 2026

**Version 2026.5**

***

### Highlights

May marks a milestone for **myLoadshift**: over **150 VAV buildings** are now actively load-shifting heating against ENTSO-E day-ahead electricity prices (delivered via the Vanta Energia signal) — load shifting is a working production solution at scale.

The **Siemens** integration is live, and buildings are being migrated to **OpenMeteo** as the new weather provider.

A significant **AI safety improvement** of the AI optimization. A significant change to the AI's guardrails ensures buildings are no longer affected by checks on components the AI doesn't actually control.

***

### myPortal — Customers

* Cleaner graphs for **AI-disabled** signals — Signals where AI control is disabled no longer surface graph suggestions in myPortal, reducing visual noise.
* **Timezone display preference** — Users can set a preferred timezone for how times are displayed (default UTC).
* **Sensor Map — type switcher** added to the signal list, making it easier to filter by signal type.
* **Insights climate chart** — Outdoor temperature now displays a clean "no data" state when readings are unavailable, rather than rendering an empty series.

<figure><img src="/files/2NiazrWkNcwmRCEgXS3R" alt=""><figcaption></figcaption></figure>

### BackOffice & Integration - Partners

#### **New integrations**

* **Siemens Building X integration** — Now live.
* **Fidelix** — Discovery support added.
* **OpenMeteo** — Now the new weather data provider; existing buildings are being migrated, improving stability and predictions.

#### **BackOffice**

* **Manual setpoint values** — A new BackOffice page lets you create manual setpoint values for write processes.
* **Batch delete empty components** with clearer deletion status feedback.
* **No writes to AI-disabled signals** — The platform now refuses to send values to signals where AI control is disabled, preventing accidental overrides.

### Smart Control

* **AI guardrails** — Previously, a group of sensors tied to a non-controlled system could still trigger guardrail crashes, meaning the AI could disrupt parts of the building it had no control over. The optimizer now only evaluates AI-managed components against guardrails, removing this class of crash.
* **Heating with dew point** — Dew point can now influence comfort bounds when relevant, improving setpoint quality in humid conditions. Important before summer and cooling season.
* **Max-change heating anchored to latest write** — Even when feedback lags slightly, reducing oscillation.
* **Stability and accuracy pass** across the optimizer: min/max validation now only applies to active AI-managed signals; duplicated signal names handled cleanly; weather-only rows no longer trigger spurious drop-row checks; verifies the data-storage connection before sending values.

### myLoadshift

Load shifting is now a working, production-grade solution running across our VAV fleet.

* **150+ VAV buildings load-shifting against electricity price** — All VAV buildings in optimization now use ENTSO-E spot prices (delivered via the Vanta Energia signal) to control heating, shifting load away from high-price hours.
* **Load shift prices persisted to optimization tables** — Prices are stored alongside optimization data, making downstream analysis and dashboards reliable.

Load-shifting moves HVAC energy use in time so the building consumes more during cheap hours and less during expensive ones. The optimizer does this by multiplying its energy penalties by a time-varying price curve, so cheap hours look "cheaper to use" and peak hours look "more expensive to avoid" — comfort bounds are unchanged.

<figure><img src="/files/D0N6fIGwVPSTg2OpimD4" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/AHfTxtdLqF7VlnOHJI4c" alt=""><figcaption><p>The resulting policy and the price curve driving it are visualized here: the top panel shows group climate against the comfort bounds, and the Control Variable panel below overlays the optimized policy with the normalized load-shift price. The tooltip reports both the raw market price and the normalized multiplier applied at that timestep.</p></figcaption></figure>

{% file src="/files/t0bdG6oWN1zOU4UVNGos" %}

### Data Platform

* **Trino to Spark** — Maintenance pipeline and AI vs Baseline now runs on Spark, with tuning for spot-instance survival on heavy tables.
* **Overview aggregator** — A new daily aggregator producing building-level analysis data, paving the way for richer Insights views.
* **Optimization, metric, and meter tables partitioned by building** — Significant query performance improvement for data platform and **Insights**.
* **AI vs Baseline reimplemented on Spark**, with optimization, metric, and meter tables now partitioned by building for significantly faster queries.

These changes aren't directly user-visible but enable richer capabilities and more reliable operation going forward.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.myrspoven.com/release-notes/may-2026.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
