Ensure that report 06 command reads normally

Ensure that report 06 command reads normally
This commit is contained in:
8BitDo
2025-05-27 16:58:04 +08:00
committed by Sam Lantinga
parent e3d44cdd51
commit b4f7948410

View File

@@ -172,11 +172,20 @@ static bool HIDAPI_Driver8BitDo_InitDevice(SDL_HIDAPI_Device *device)
}
} else {
Uint8 data[USB_PACKET_LENGTH];
int size = ReadFeatureReport(device->dev, SDL_8BITDO_FEATURE_REPORTID_ENABLE_SDL_REPORTID, data, sizeof(data));
if (size > 0) {
ctx->sensors_supported = true;
ctx->rumble_supported = true;
ctx->powerstate_supported = true;
const int MAX_ATTEMPTS = 5;
for (int attempt = 0; attempt < MAX_ATTEMPTS; ++attempt) {
int size = ReadFeatureReport(device->dev, SDL_8BITDO_FEATURE_REPORTID_ENABLE_SDL_REPORTID, data, sizeof(data));
if (size <= 0) {
SDL_Delay(10);
// Try again
continue;
}
if (size > 0) {
ctx->sensors_supported = true;
ctx->rumble_supported = true;
ctx->powerstate_supported = true;
}
break;
}
}