The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.
Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/
I have a USB composite device (one winusb interface - winusb.sys, one uvc interface - usbvideo.sys) capable of waking up the host from S3 state using the winusb interface. On host side, I have my system service able to communicate with the device, so after RESUME everything is ok on the computers without Modern Standby.
On the computers with Modern Standby the behavior is different. My device sends the wake up packet (I saw this in my device's UART port) then, in the BeagleBone Protocol Analyzer traces I see:
As a user, it looks the host doesn't wake up (the screen is still off). My system service, which communicates with the device, doesn't wake up even if, from DAM (Desktop Activity Moderator ) point of view, it is in Session 0 group.
On the other hand, the computer wakes up from Modern Standby using an external USB keyboard or the embedded finger print sensor.
Any hints where to look and what to check? Any tool I can use to be sure that my wake up packet is reaching the winusb driver?
|Upcoming OSR Seminars|
|OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!|
|Writing WDF Drivers||12 September 2022||Live, Online|
|Internals & Software Drivers||23 October 2022||Live, Online|
|Kernel Debugging||14 November 2022||Live, Online|
|Developing Minifilters||5 December 2022||Live, Online|