     // Use a nominally rising edge to avoid spurious trigger when other interrupts are handled.
     // The will ensure that it is possible to wake the CLI subsystem with an extra CR or LF.
     // It is OK to trigger this from other things such as button presses.
-    // TODO: ensure that resetCLIActiveTimer() is inlineable to minimise ISR prologue/epilogue time and space.
     if((changes & SERIALRX_INT_MASK) && !(pins & SERIALRX_INT_MASK)) { OTV0P2BASE::CLI::resetCLIActiveTimer(); }
 }
 

    ss1.put(AmbLight); // Always send ambient light level (assuming sensor is present).
    // Show TRV-related stats since enabled.
    ss1.put(NominalRadValve); // Show modelled value to be able to deduce call-for-heat.
    // ss1.put(NominalRadValve.targetTemperatureSubSensor); XXX
    // ss1.put(NominalRadValve.setbackSubSensor); XXX
    // Show state of setback lockout.
    ss1.put(V0p2_SENSOR_TAG_F("gE"), OTRadValve::getSetbackLockout(), true);


    // Handling the UI may have taken a little while, so process I/O a little.
    if(recompute || valveUI.veryRecentUIControlUse()) {
        // Force immediate recompute of target temperature for (UI) responsiveness.
        NominalRadValve.computeTargetTemperature();
        // Keep dynamic adjustment of sensors up to date.
        updateSensorsFromStats();
    }
