A task switch from a first data processing task to a second data processing task can be accomplished by the first task calling a function which saves the first task’s context, restores the second task’s context and then returns. So that the DAC need not be made with tight tolerances, a DC signal can be fed into the DAC prior to VGA calibration, and an auxiliary ADC is used to receive the output of the DAC and to determine, for a given DC input, what the signal produced by the DAC actually is. The loads are controllable by a corresponding one of the controllers according to a local need and a power grid supply or a community need of the loads. The control signal is monitored over period of time.