1
0
mirror of https://github.com/gdsports/USBHost_t36 synced 2024-11-22 00:52:19 -05:00

Merge pull request #3 from KurtE/PS3-Usage-Pointer-issue

PS3 - Right Joystick does not work
This commit is contained in:
Paul Stoffregen 2017-09-14 14:47:22 -07:00 committed by GitHub
commit 34b7dc5f51

View File

@ -429,8 +429,12 @@ void USBHIDParser::parse(uint16_t type_and_report_id, const uint8_t *data, uint3
break; break;
case 0x08: // Usage (local) case 0x08: // Usage (local)
if (usage_count < USAGE_LIST_LEN) { if (usage_count < USAGE_LIST_LEN) {
// Usages: 0 is reserved 0x1-0x1f is sort of reserved for top level things like
// 0x1 - Pointer - A collection... So lets try ignoring these
if (val > 0x1f) {
usage[usage_count++] = val; usage[usage_count++] = val;
} }
}
break; break;
case 0x18: // Usage Minimum (local) case 0x18: // Usage Minimum (local)
usage[0] = val; usage[0] = val;
@ -477,6 +481,8 @@ void USBHIDParser::parse(uint16_t type_and_report_id, const uint8_t *data, uint3
println(" type= ", val, HEX); println(" type= ", val, HEX);
println(" min= ", logical_min); println(" min= ", logical_min);
println(" max= ", logical_max); println(" max= ", logical_max);
println(" reportcount=", report_count);
println(" usage count=", usage_count);
driver->hid_input_begin(topusage, val, logical_min, logical_max); driver->hid_input_begin(topusage, val, logical_min, logical_max);
println("Input, total bits=", report_count * report_size); println("Input, total bits=", report_count * report_size);
if ((val & 2)) { if ((val & 2)) {