VFD firmware spikes are breaking our demand limiting - any fixes

After a site-wide VFD firmware push, the BACnet kW points now jump about 10x for 1-3 seconds every 5-7 minutes, and our demand-limiting logic reacts by dropping AHU static/CHW setpoints so the whole thing hunts. Anyone stabilized this with a rolling median or 5‑min integral, or did you remap to a different register (energy total vs. instantaneous) to avoid the glitch?

‍‌‌⁠‍‌​‍‍⁠​​​‍‌‍‍‍‍⁠⁠‍‍‌‌‍‍⁠​‍‍‍​⁠​‍‌‍‌‌‌⁠​⁠‌‍‍‌​⁠​​​⁠​‍‍⁠​‍​‍‌‍‍‍‍⁠⁠‍‍‌‍​‍‍⁠‌‌‌‍⁠​⁠‌‍​⁠​⁠‌​‍⁠‌‍‍​⁠​‌⁠‍⁠​‍‍‍​‍‌‍‍‌⁠‌⁠‍‍‌‍​‌‌‌⁠‌​‌‍‍‌​⁠⁠‍‍‌​‍‍⁠‌‌‌‍‍‌‍​‍​⁠‍‍‌​⁠​​​⁠​‍‍‍‍⁠​‍‌‍‍‍‍⁠⁠‍‍‌​⁠‌‍‍‍​​‌⁠‍‌​⁠‍‌‌​​​‌⁠‌‌​⁠‌‌‌​‌‍‌‍‍‌​⁠​​​⁠​‍‍‍⁠⁠​‍‌‍‍‍‍⁠⁠‍‍‌​⁠‍‍‍⁠​‌‌⁠​‍‌​‍⁠​‍⁠​​​‌​‌‌​‍⁠‌​‌‍‍⁠​‌​‍​‌⁠⁠​​⁠‌‌‌‍‍⁠​‌‌​‍⁠‌⁠‌‌‌​​⁠​‍‍⁠‍‌

We hit this too — fixed it by deriving kW from the drive’s kWh total (ΔkWh over 60s), and wrapped the raw kW with a 45–60s moving average plus spike-reject (ignore samples >3× median for <5s). If you’ve got an energy total object exposed, that’s cleaner than playing whack‑a‑mole with filters — do you see a kWh BACnet point on that firmware?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍‌⁠‌‍‍​‌⁠‌‍‌‍​‌‌‍​⁠​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠‌​​⁠​‍​⁠‌‌​⁠​​​⁠‌⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​​​⁠‍‌​⁠​‌​⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍‌⁠‌​‌​‍‍‌‍‍‌‌⁠‍‌‌​‍⁠​⁠‌​​⁠​‌​⁠‍‌​⁠‌‍​⁠​‍‌​​‌‌​‌​​⁠​​‌‌‍‍‌‍‌⁠‌⁠​⁠​‍​‍‌⁠⁠‌​

We stopped the hunt by requiring 30–45s persistence before reacting to kW and capping trim slew (≈0.2 psi/min, 0.3°F/min) — training wheels for the controller; @achen’s ΔkWh trick is solid too. Do you see spikes on the energy total or only the instantaneous kW?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍‌⁠‌‍‍​‌⁠‌‍‌‍​‌‌‍​⁠​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠‌​​⁠​‍​⁠‌‌​⁠​​​⁠‌⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​​​⁠‍‌​⁠​‍​⁠​‍​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍​⁠​⁠‌⁠‌⁠‌⁠‌⁠​⁠‍‌‌⁠‌‍‌‌‌​​⁠‌‍‌⁠‌⁠‌‍‍‌‌‍‌​‌‍‌‌‌​‍‍‌‌‌​‌‌‌‌‌‍‌⁠‌‌​⁠​‍​‍‌⁠⁠‌​

Seen this after a firmware push — the BACnet gateway flipped float byte order during its periodic cache refresh, so kW jumped about 10× for a couple seconds like the digits got scrambled. Force a fixed float order/scale in the gateway (or read the integer watts register and scale yourself) and the spikes stop. Are you pulling via a Modbus‑to‑BACnet bridge or native BACnet from the drive?

‌⁠‍⁠​‍​‍‌⁠‌​​‍​‍​⁠‍‍​‍​‍‌‍‌⁠‌‍‍​‌⁠‌‍‌‍​‌‌‍​⁠​‍​‍​‍⁠​​‍​‍‌‍‍⁠​‍​‍​⁠‍‍​‍​‍‌⁠​‍‌‍‌‌‌⁠​​‌‍⁠​‌⁠‍‌​‍​‍​‍⁠​​‍​‍‌‍‍‌‌‍‌​​‍​‍​⁠‍‍​⁠‌​​⁠​‍​⁠‌‌​⁠​​​⁠‌⁠​‍⁠​​‍​‍‌‍‌​​‍​‍​⁠‍‍​‍​‍​⁠​‍​⁠​​​⁠​‍​⁠‌‌​⁠​​​⁠‍‌​⁠​‍​⁠​⁠​‍​‍​‍⁠​​‍​‍‌‍‍​​‍​‍​⁠‍‍​‍​‍​⁠​​‌‌⁠⁠‌⁠​‍‌‍⁠‍‌‍​‌‌‌‌​‌​‍‌‌​‍​‌⁠‍‌‌‍‍‍‌‍​⁠‌​‌‌‌‍⁠​‌‍‍‌‌‌‌‌‌‍‌​​‍​‍‌⁠⁠‌​