Data Acquisition (DAQ) and Control from Microstar Laboratories

Knowledge Base: Platform

  • See the list of other topics for category Platform

Q10109 Sleep mode in Windows systems

Tags: Help, Windows 7, Windows 8, Windows 10, power-save, sleep, restart, PCI, DAPcell

Applies to: DAPtools Software v6.10 and earlier, all PCI DAP models

When my Windows 7 system comes out of power save sleep mode, it is no longer able to operate the DAP boards. What can I do about this?

The first thing you should try is to update your DAPtools Software from the version you are currently using to version 6.20 or more recent.

When Windows enters a "power saver" or "sleep" mode, it achieves its power saving by shutting down the power to the PCI bus. That has the desired effect of saving power, but as a side effect it also wipes clear the DAPL system, any processing running on the DAP, and any untransferred data from the DAP board's unpowered memory. Should the DAP power be shut down unexpectedly, a process very much like a power-up boot sequence is necessary to reload and reinitialize the DAPL system, otherwise, the board will be unresponsive.

The Windows system provides messages to the DAPcell Server informing it that there is an impending sleep mode shut down. The DAPcell Server always responds by telling the Windows system that it should not enter the sleep mode. Windows systems prior to Windows 7 honored this request, but it appears that Windows systems starting with Windows 7 ignore it. This could cause an unexpected change in system behavior if you switched to a Windows 7 or newer operating systems from an older Windows version.

Past versions of the DAPtools Software did not support systems that allowed these power saving modes. The DAPtools version 6.20 and newer versions detect the restoration of power to the DAP board and perform a reinitialization.

Similar kinds of restarts could be forced in other ways by:

  • run the Data Acquisition Processor control panel application [1], and in the first tab display, click on the DAPcell Service STOP button. When this action completes, then click on the START button.

  • use Windows NET commands from any software that can shell to a Windows command environment. The command sequence is:

    net stop "DAPcell Service"
    net start "DAPcell Service"
  • let the application use the DAPIO programming interface [2] DapServerControl() function.

  • let the application use the Windows Service Control API to shut down and restart the DAPcell Service.

Such restarts are only a partial solution, however. The DAP software can bring the DAP board back to the state that it had at initial boot up, but it has no way to restore the operating state as it existed before the loss of power. (As a severe analogy, what would happen if you turned your host computer off by yanking the power plug?) That means, if you have a running application that has configured and is using a DAP, this application will not know that the DAP is no longer configured and no longer communicating. For applications that run occasionally, do their job, and then are put aside, there should be no problem because there should be no relevant DAP activity anyway. For any application that requires the DAP board to be busy with embedded activity for an extended period, it is a big problem.

In general, there is no possible advantage from having your data acquisition workstation go to sleep unexpectedly and terminate your data acquisition processing. Rather than letting the problems happen, and then trying to fix them, we strongly advise you to adjust the Power Options on your system to disable the Power Saver sleep mode features. You can find these in the Windows control panel advanced settings, and also in UEFI / BIOS boot settings.

L24156

References:

[1] More information about using the Data Acquisition Processor "Control Panel application" is available in the DAPIO32 Data Acquisition Processor Service manual.

[2] The DAPIO functions are described in the DAPIO32 Reference Manual.