Issue / Question
Unable to wake up a printer QLn220 on MC32N0 while it is possible with MC3190 after clicking on "Test Print" in a test application.
Issue Details (optional)
Printer is not waking up from suspend mode on receiving print command from Zebra’s MPA 3 devices running CE 7 with seial class interface. Same printer wakes up on receiving print command from Zebra’s MPA 2 devices running CE 6.0 with seial class interface.
The transition of the DTR (Data Terminal Ready RS232 command) line from low to high is the wakeup source for many printers. Zebra’s MPA 2 devices running CE 6 would set DTR low upon close which means when re-opened, it would be able to wake up the printer from sleep. On The DTR line is not forced low upon closing the serial port on Zebra’s MPA 3 devices running CE 7, so a subsequent port open does not wake the printer.
Issue reported under SPR 30750.
MC32CE7.0, MC92CE7.0, WT41CE7.0, MC18CE7.0, VC70CE7.0 And all Zebra Mobile Printers
Resolution / Answer
A low to high level DTR ((Data Terminal Ready) transition will trigger the printer to wake from sleep mode.
To overcome such issue, an application developer should call DTR clear to make DTR based auto wakeup work correctly.
for managed code, call EscapeCommFunction API with CLRDTR function code
Please use below API if using managed serial port class.
BOOL WINAPI EscapeCommFunction(_In_ HANDLE hFile,_In_ DWORD dwFunc);
hPort -> Handle to COM port
dwFunc = CLRDTR (0x06);