             break;
         }
     }
-    // Provide regular poll to motor driver.
-    // May take significant time to run
-    // so don't call when timing is critical
-    // nor when not much time left this cycle,
-    // nor some of the time during startup if possible,
-    // so as (for example) to allow the CLI to be operable.
-    // Only calling this after most other heavy-lifting work is likely done.
-    // Note that FHT8V sync will take up at least the first 1s of a 2s subcycle.
-    if(OTV0P2BASE::getSubCycleTime() < ((OTV0P2BASE::GSCT_MAX/4)*3))
-        { ValveDirect.read(); }
+    // XXX
+    // // Provide regular poll to motor driver.
+    // // May take significant time to run
+    // // so don't call when timing is critical
+    // // nor when not much time left this cycle,
+    // // nor some of the time during startup if possible,
+    // // so as (for example) to allow the CLI to be operable.
+    // // Only calling this after most other heavy-lifting work is likely done.
+    // // Note that FHT8V sync will take up at least the first 1s of a 2s subcycle.
+    // if(OTV0P2BASE::getSubCycleTime() < ((OTV0P2BASE::GSCT_MAX/4)*3))
+    //     { ValveDirect.read(); }
+
     // Command-Line Interface (CLI) polling.
     // If a reasonable chunk of the minor cycle remains after all other work is done
     // AND the CLI is / should be active OR a status line has just been output

    // This should also help ensure that sensors are properly initialised.
    TemperatureC16.read();
    AmbLight.read();
    RelHumidity.read();
    TempPot.read();
    Supply_cV.read();
    OTV0P2BASE::seedPRNGs();

    // TODO Stats need updating (valvePC replaced with on off? or just send 0 or 100).
    ss1.enableCount(false);  // Always encrypted
    ss1.put(TemperatureC16);
    ss1.put(Occupancy.twoBitTag(), Occupancy.twoBitOccupancyValue()); // Reduce spurious TX cf percentage.
    ss1.put(Occupancy.vacHSubSensor);
    // OPTIONAL items
