Foundations
The standard is ASHRAE Guideline 36 sequence T-3-11.
The reset logic implemented in the strategy follows the high-performance control sequence published by ASHRAE in Guideline 36-2021 and referenced by ASHRAE 90.1 Appendix G, California Title 24, NABERS Australia, and BCA Green Mark Singapore. Faithful implementation of T-3-11 meets the prevailing control standard for new construction and retrofit.
The thermodynamic mechanism is chiller compressor lift and reheat penalty.
Raising the supply air setpoint raises the chilled water supply temperature the coil demands. The chiller runs at lower compressor lift and higher COP. In VAV systems with terminal reheat, the gap between supply air and zone setpoint narrows and reheat calls drop. Both effects compound.
Reported savings are 5 to 15 percent of chiller kWh.
U.S. DOE Building Energy Data Book, Lawrence Berkeley National Lab field studies, New Buildings Institute meta-analyses, and BCA Green Mark technical criteria converge on the same band. The strategy's pre-baseline proxy uses the conservative end of the range.
Verification is IPMVP Option B with a regression baseline.
Every commissioned AHU has its own retrofit-isolation boundary. Baseline kW is regressed against OAT, occupancy, and wet-bulb when available. Verified savings is baseline minus measured, integrated over the period, with a confidence band scaled from the baseline residual.
The thermodynamic mechanism
The savings come from two compounding mechanisms: chiller compressor lift and reheat penalty in VAV systems. The four cards below state each first-principles relationship the strategy relies on. Operators do not need to memorise the equations; reviewers and verifiers should be able to trace the savings to a measurable cause.
Cooling coil heat balance
Q_coil = ṁ_air × c_p × (T_return − T_supply) + ṁ_air × h_fg × (w_return − w_supply). The first term is sensible cooling, the second is latent. For a given building cooling load Q_coil is fixed; the AHU achieves it through flow rate and temperature drop. Raising SAT reduces the drop and shifts the trade.
Carnot bound on chiller COP
COP_Carnot = T_evap / (T_cond − T_evap), in Kelvin. Real centrifugal chillers achieve 50 to 65 percent of Carnot at full load. COP falls as evaporator temperature drops. A 4 to 5 degree reduction in chiller lift typically improves COP by 8 to 12 percent under SG conditions.
Sensible and latent decoupling
In a Singapore office the sensible heat ratio is typically 0.65 to 0.80, meaning 20 to 35 percent of total cooling is latent. The coil's effective Apparatus Dew Point must be below the room dew point to dehumidify. Raising SAT above the room dew point stops dehumidification. The OAT-bounded upper limit in T-3-11 prevents this happening at humid conditions.
Reheat penalty
In VAV systems with terminal reheat, a zone satisfied by lower supply air than it needs activates its reheat coil to warm the supply back to comfort. Energy paid twice. Raising SAT narrows the gap and reduces or eliminates the reheat call. LBNL studies cite 8 to 25 percent of cooling energy lost to reheat in poorly-tuned VAV systems.
The decision sequence
The reset logic is four branches and a hysteresis on commit. The branches are evaluated in order: unoccupied first, then OAT-high, then OAT-low, then linear interpolation between. The hysteresis prevents flapping when conditions hover near a transition. The fallback for missing setpoint lets the strategy commission against deployments where the BMS does not expose a writeable SP channel.
Unoccupied branch
When zones are unoccupied the SAT floats to a higher unoccupied setpoint (18 °C default). Latent constraint relaxes because metabolic moisture is not being added. Occupancy is read from a BMS occupancy_mode channel where available, or from a CO₂ proxy at the zone scope (above 500 ppm reads as occupied).
OAT high branch
Above oat_high_c (32 °C default for Singapore), the SAT is held at sat_min_c (13 °C default). Hot day, full cooling. The lower bound on SAT protects against coil frost and condensation on supply ductwork.
OAT low branch
At or below oat_low_c (22 °C default), the SAT rises to sat_max_c (17 °C default). Mild conditions, less cooling needed, higher SAT preserves comfort while reducing chiller duty.
Linear interpolation between
For OAT in the band, target SAT is interpolated linearly between sat_max and sat_min as OAT rises from oat_low to oat_high. The function is continuous, monotonic, and rounded to 0.1 °C precision so the executor's output matches what the BMS can actually accept.
Hysteresis on commitment
If the computed target is within restore_hysteresis_c (0.3 °C default) of the current SAT setpoint, the executor returns no-op. This prevents the SP from flapping when OAT or occupancy hovers near a transition. Half the typical BMS deadband by design.
Fallback for missing setpoint
When the BMS does not publish a supply air setpoint channel (common with OPC UA gateways that surface measured SAT but not the SP), the executor falls back to a configured current_setpoint_c value (14 °C default). The hysteresis check uses the fallback. The target SAT is computed from OAT and occupancy as usual.
The state architecture
The executor reads four signals. Each is bound to a scope (asset, zone, facility) and has a documented fallback for when the BMS does not publish it. The state fetcher resolves the priority hierarchy once per tick and presents a unified EntityState to the executor.
supply_temp_c · asset scope
BMS-published measured supply air temperature at the cooling coil. Maps to state.temperature_c. Used by the executor's hysteresis check and surfaced on the verification chart so operators see whether the loop is tracking the SAT command.
setpoint_c · asset scope
BMS-published current SAT setpoint, when exposed. Maps to state.setpoint_c. Used for the hysteresis comparison. Absent this channel, the executor uses the configured fallback. Wattif does not synthesise a setpoint from measured SAT, which would conflate the loop's command with the loop's output.
co2_ppm · zone scope
Zone-level CO₂ concentration. Maps to state.occupied via a 500 ppm threshold when no explicit occupancy_mode channel exists. The threshold is conservative against the ASHRAE 62.1 steady-state occupied band of 600 to 1000 ppm and catches early occupancy with a 10 to 30 minute decay lag at vacancy.
oat_c · facility scope
Outdoor air temperature, the primary input to the OAT-driven reset curve. Sourced from a BMS weather station where available, or from a public weather API (Open-Meteo for Singapore deployments) when not. Without OAT the executor returns no-op rather than estimate.
The executor contract
The strategy implementation satisfies the purity contract spelled out at /methods/replay-first-deployment. The function is referentially transparent: same inputs, same outputs, no hidden side channels. Replay reads the same code path the live cron reads. The four clauses below state what that means in practice.
Signature
executeAhuSupplyAirReset(state, config, now) returns Decision. No I/O, no global state, no system clock reads. The now argument carries the timestamp; the state argument carries every signal the executor needs; the config argument carries the operator's tuning. The function is referentially transparent.
Decision is structured
The return type is one of three shapes: {action: 'none', reason} or {action: 'set_point', point, value, reason} or {action: 'set_mode', point, value, reason}. Every decision carries a human-readable reason string with the parameters that drove it, e.g. "OAT 26.0 °C — linear SAT reset to 15.4 °C (current SP 14 °C config-default)".
Replay reads the same code path
The replay engine calls the same STRATEGY_EXECUTORS[type] map the live cron calls. A replayed decision at a historical timestamp matches what the live cron would have written at that instant. This is what makes replay faithful rather than approximate.
Authority decides what the decision becomes
The executor outputs a Decision. The cron handler routes it per the strategy's authority_level: observe logs only, recommend opens a Case for operator approval, adjust dispatches with notification, dispatch dispatches automatically. The executor itself never knows whether it is being read by a live tick, a replay, or a logging-only observer.
Building-wide orchestration
The facility-scope orchestrator commissions one shared config across every AHU in the building. The operator tunes once, replays once, saves once. The engine fans out at execution time, runs the per-asset executor on each AHU with the shared config, and aggregates the decisions. Per-AHU failure isolates so one bad sensor does not silence the strategy across the rest of the fleet.
Why a facility-scope variant exists
A building with 25 AHUs commissioned individually requires 25 separate replay sessions, 25 tunings, 25 saves. Building-wide orchestration consolidates the operator interaction to a single config tuned once for the whole facility.
Fan-out at execution time
The orchestrator strategy lists applies_to_asset_types: ['ahu']. At replay time the engine walks every asset matching that filter in the facility, runs the per-asset executor on each with the shared config, and aggregates the decisions. At live dispatch time the same fan-out applies — one tick of the cron produces N AHU commands, one per asset.
Per-AHU savings sum to a building number
Each AHU's per-asset kWh delta sums to the building total. The replay chart represents the AHU with the most usable telemetry so the operator sees the strategy in action on at least one trace. The summary stats aggregate across all AHUs.
Per-AHU failure isolation
If one AHU loses its SAT sensor, the orchestrator emits no-op for that AHU and continues on the others. A facility-wide reset does not depend on every AHU being healthy at every tick.
Commissioning
Commissioning is a four-step path. Wire the BMS channels, backfill the history, replay against operator judgement, save at recommend authority. The platform handles the database transitions; the operator handles the judgement. The promotion from recommend to dispatch is a separate action, taken after observing live cycles match intent.
Wire BMS channels
For each AHU: supply_temp_c at asset scope, return_temp_c at asset scope (optional but useful for diagnostics), co2_ppm at the asset's zone, oat_c at facility scope. Source addresses on the bms_channels rows tie them to the connector instance plus the device-side fragment path.
Backfill 14 to 30 days of history
Pull the same channels from the upstream BMS or weather source over the commissioning window. Write to bms_telemetry under the matching channel_id. The replay engine reads bms_telemetry alongside load_telemetry when reconstructing state.
Open the Strategy tab and replay
The operator picks the strategy from the eligible list, picks a window (7d, 14d, or 30d), tunes the sliders, runs the replay. The chart shows the historical telemetry with the strategy's hypothetical setpoint overlaid. The result row shows decision count, setback events, setback hours, estimated kWh saved, and estimated dollars per month at the configured tariff.
Save at recommend authority
When the replay matches operator judgement, save creates a control_strategies row in status='disabled' with authority_level='recommend' and the chosen config. The platform's commissioning flow takes over from there. Promotion to adjust or dispatch is a separate operator action after observing live cycles.
Validation on a live site
The pilot commissioned the strategy on two AHUs at The GEAR, a multi-tenant commercial building in Singapore. Cumulocity OPC UA gateways expose supply air temperature and CO₂ on each AHU device. Open-Meteo supplies outdoor air temperature at the facility scope. The replay window is 14 days at 15-minute bucket cadence.
Site
The GEAR · Singapore
AHUs commissioned
AHU-G1 (Level 1, 15 kW) and AHU 3-04 (Level 3, 15.5 kW)
Window
14 days, 15-minute bucket cadence
Replay decision count (per-asset, AHU-G1)
565 ticks · 542 set_point decisions (96%)
Setback events / hours (AHU-G1)
18 events · 135.5 cumulative hours
Estimated kWh saved (proxy, AHU-G1)
2,032 kWh · 14d
Replay decision count (orchestrator, both AHUs)
1,092 ticks · 1,045 set_point decisions
Setback events / hours (orchestrator)
36 events · 261.3 cumulative hours
Estimated kWh saved (proxy, orchestrator)
3,982 kWh · 14d
Estimated SGD savings / month at $0.30/kWh
~$2,560 / mo for the two-AHU pilot
The dollar figures use the platform's configured tariff fallback (SGD 0.30/kWh). The IPMVP Option B baseline replaces this proxy with a measured-savings figure after 14 days of post-commissioning data, with the confidence band reported per the method at /methods/mv-option-b-method.
Common challenges, named and answered
The twelve cards below cover the objections an owner's engineer, commissioning agent, or IPMVP verifier is most likely to raise. Anything not covered here is a real gap in the specification and we want it surfaced. Anything covered here has a documented answer the platform implements.
How are the reported savings real?
IPMVP Option B with a multi-linear regression baseline. Coefficients are fit on pre-intervention data only. Reporting-period kWh is measured directly. The difference is the verified savings. The confidence band is scaled from the baseline residual error so a poorly-fitting model surfaces honestly as a wider band rather than confident-but-wrong.
What if humidity spikes when SAT rises?
Three protections. The OAT-bounded sat_max_c is below the zone dewpoint margin at typical SG humid conditions. The unoccupied branch only applies when zones are vacant. A planned humidistat interlock locks SAT at sat_min_c when zone RH exceeds setpoint; requires zone humidity channels in bms_channels.
What if the BMS already has its own SAT reset?
Two cases. If functional and tuned, replay shows the strategy's targets matching the BMS's actual setpoints within hysteresis. The operator concludes no commissioning is needed. If dormant or poorly tuned, replay shows large delta between BMS and strategy targets. The operator decides whether to fix the BMS sequence directly or commission Wattif at recommend authority.
What if the OAT sensor fails?
The executor returns no-op with reason 'no OAT available — cannot compute SAT reset'. No command is issued. The AHU operates on its BMS-native setpoint until OAT recovers. With Open-Meteo as a fallback weather source, OAT failure requires both the BMS source and the public API to be unavailable.
What about ASHRAE 62.1 ventilation rates?
Out of scope. Outdoor air rates are controlled by the AHU's outdoor air damper sequence and demand-controlled ventilation logic. SAT reset modifies the cooled-air setpoint downstream of the coil. ASHRAE 62.1 compliance is verified independently as part of the building's overall control sequence audit.
What about HACCP, healthcare, or regulated zones?
Authority for AHUs serving regulated zones stays at observe or recommend. Automatic dispatch is blocked when the served zone has spaces.constraints.critical = true. For mixed zones, sat_max_c is lowered to the tightest tolerance, typically 14 to 15 °C for healthcare and food applications.
What about morning startup pre-cool?
Out of scope. Pre-cool is a separate sequence (ASHRAE G36 T-3-2) handled by a dedicated strategy. The SAT reset resumes control once the building reaches occupied setpoint.
What about non-VAV systems?
The reset applies. The reheat penalty does not apply in CAV systems, but the chiller lift and latent decoupling savings remain. Expected savings band shifts from 5 to 15 percent of chiller kWh in VAV systems to 3 to 8 percent in CAV.
What about chiller plant sequencing?
Out of scope. The SAT reset modifies the AHU setpoint, which propagates to the chilled water valve, which modulates the demand on the plant. The plant's own sequencing controls respond to the resulting flow and temperature signal. A facility-scope chiller_sequencer strategy is planned.
What if the CO₂ proxy for occupancy is wrong?
The 500 ppm threshold catches early occupancy and decays quickly post-vacancy. The risk is over-cooling for 10 to 30 minutes at the transition. Mitigations: the unoccupied_sat_c default is only 1 to 2 °C above the occupied target, so the comfort impact of a lag is small; where a real BMS occupancy_mode channel is mapped it overrides the CO₂ proxy.
What if the AHU has a different control protocol (BACnet, Modbus, KNX)?
The executor emits a structured Decision. The platform's dispatch layer translates per device adapter. Where the BMS does not support writeable points, the strategy operates at recommend authority only and the operator applies the recommended setpoint manually via the BMS interface.
What about peak demand?
The reset reduces peak demand indirectly by reducing chiller compressor power during peak cooling hours and by eliminating reheat during peak occupancy. A separate building_dr_participation strategy handles explicit peak-shed integration with grid demand response programs.
Out of scope
Being explicit about non-scope matters as much as being explicit about scope. Each item below is handled by a separate, planned or shipped, sibling strategy. The savings story for each is independent of this one. A reviewer reading this paper should leave knowing what they cannot expect from the AHU reset alone.
Chiller plant sequencing
Different decision boundary. Handled by a planned chiller_sequencer facility-scope strategy. The SAT reset informs the sequencer through the chilled water demand signal.
Demand response shed
Grid signal is not in the AHU's state. Handled by a planned building_dr_participation strategy that coordinates with this one when a DR event runs.
Morning pre-cool
Time-bounded startup sequence. Handled by a planned ahu_morning_startup strategy that yields to this one once occupied setpoint is reached.
Dehumidification override
Requires zone RH channels which are not yet wired on most deployments. Planned for a v2 of this strategy that conditions the reset on RH when humidity points are mapped.
Direct chiller commands
Out of scope by design. The strategy commands the AHU SAT setpoint; the chiller responds via its own existing CHWS control loop. Wattif does not bypass the BMS chiller logic.
Outdoor air rate (ventilation)
Controlled by ASHRAE 62.1 sequences and demand-controlled ventilation logic, not by SAT reset. Independent compliance check.
Heating mode (winter operation)
Singapore and Australian primary deployments are cooling-dominant. Heating-season operation is planned for a temperate-climate v2 of this strategy.
HACCP and healthcare critical zones
Regulatory boundary. Authority gating prevents automatic dispatch on AHUs serving zones flagged spaces.constraints.critical = true.
References
Every load-bearing claim in this paper is traceable to a source below. ASHRAE for the control sequence and the underlying standards. IPMVP for the verification methodology. DOE, LBNL, and the California Energy Commission for the savings band. Internal Wattif methods for the lifecycle, the authority model, and the settlement path.
ASHRAE Guideline 36-2021. High-Performance Sequences of Operation for HVAC Systems. Sequence T-3-11 specifies the SAT reset logic implemented in the strategy.
ASHRAEASHRAE Standard 62.1-2022. Ventilation for Acceptable Indoor Air Quality. Independent compliance check on outdoor air rates; not modified by the SAT reset.
ASHRAEASHRAE Standard 90.1-2022. Energy Standard for Buildings Except Low-Rise Residential Buildings. References ASHRAE G36 in Appendix G.
ASHRAEIPMVP Core Concepts, Volume I, 2022. Option B (Retrofit Isolation, All-Parameter Measurement) is the methodology the platform uses to verify post-commissioning savings.
Efficiency Valuation OrganizationHydeman, M., et al. Advanced Variable Air Volume Air Handling Unit Design Guide. California Energy Commission PIER Report (2003). Quantifies reheat penalty and SAT reset savings in VAV systems.
California Energy CommissionLehrer, D., and F. Bauman. Field studies on AHU performance and SAT reset effects. Center for the Built Environment, UC Berkeley.
Lawrence Berkeley National LabLiu, M., D. E. Claridge, and W. D. Turner. Continuous Commissioning Guidebook. U.S. Department of Energy (2002). Source for the 5 to 10 percent chiller savings range per °C of SAT reset.
U.S. Department of EnergyBCA Green Mark Singapore Technical Guidelines. Reset sequences are referenced as best-practice for tropical-climate buildings.
Building and Construction Authority, SingaporeWattif Methods 02 — How Wattif delivers continuous control policies end to end. The lifecycle and authority ladder the AHU strategy follows.
Wattif TechnologiesWattif Methods 04 — Any algorithm that touches customer equipment should be replayable before it acts. The replay-first deployment posture this strategy adopts.
Wattif TechnologiesWattif Methods 06 — Authority is the contract between an algorithm and the equipment it touches. The seven-level ladder this strategy commissions on.
Wattif TechnologiesWattif Methods 01 — How Wattif performs IPMVP Option B measurement and verification. The settlement path post-commissioning.
Wattif Technologies