Ok so with the following code: ```cpp bool errorCheck(const std::string &msg) { auto error = CorsairGetLastError(); if (error != CorsairError::CE_Success) { std::cerr << msg << " (Error: " << toString(error) << ')' << std::endl; return true; } return false; } int main(int argc, char *argv[]) { CorsairPerformProtocolHandshake(); if (errorCheck("Handshake error")) { getchar(); return -1; } const auto devicesCount = CorsairGetDeviceCount(); for (int i = 0; i < devicesCount; ++i) { const auto info = CorsairGetDeviceInfo(i); if (!info) { errorCheck("Get device info error"); continue; } std::cout << "Model: " << info->model << "Logical layout: " << info->logicalLayout << std::endl; } getchar(); return 0; } ``` I'm getting this output, which is as expected: ``` Model: K95 RGB PLATINUMLogical layout: 13 ``` Then when I put the PC to full stand-by and wake it up again the code returns the following: ``` Model: K95 RGB PLATINUMLogical layout: 0 ``` Windows 10 Home 1903 iCUE v. 3.22.74 SDK: 3.0.301