Kurt Eckhardt
3c34cc2f6f
Work around for MS keyboard
...
I updated the keyboard extras to detect if the report ID is 0xff00 and if so ignore it in the Mouse extras process code. This helped not handling a lot of extra messages generated by MS keyboard.
Also updated Test app to show names of some of these special keys.
2017-10-12 19:23:02 -07:00
Kurt Eckhardt
dbe5292471
Keyboard HID extras plus map extra keys
...
This delta, adds an extra keyboard object to handle those keys that are not part of the main keyboard class. In particular there are separate HID reports for some of the keys, such as Power keys, and multimedia keys.
These reports might be on separate Interface or in cases where the mouse and keyboard are on the same device, the extra reports may be on the Mouse Interface.
So far I have not tried to combine with Keyboard object as might require multiple inheritance which I would like to avoid.
Also I extended the special key mapping table to map several other keys like F1-12, Arrow, Home/end... To special values where the 0x80 bit is set. I used the same values as used for the Arduino Keyboard library. I did not use their defines as they used defines like KEY_F1, which already exists in core, but in core it is the scan code from the keyboard and not the end user value.
2017-10-12 10:27:41 -07:00
PaulStoffregen
0e35681c48
Add idVendor() & idProduct() to HID parser class
2017-10-09 14:21:30 -07:00
PaulStoffregen
adc8a3239f
Query device status, idVendor and idProduct
2017-10-08 13:12:35 -07:00
PaulStoffregen
d3b6abe878
Keyboard LEDs and data parsing (Kurt & Frank)
2017-10-08 12:56:39 -07:00
PaulStoffregen
5ea0d568a1
Fix scheduling of hub control transfers
2017-10-08 05:25:39 -07:00
PaulStoffregen
1e6d0db268
Do not let HID parser claim boot protocol keyboards
2017-10-08 03:37:00 -07:00
PaulStoffregen
2b0fda8a11
Fix device list of drivers in use
2017-10-08 03:35:20 -07:00
PaulStoffregen
a1cde4e568
Print less low-level EHCI info when USBHOST_PRINT_DEBUG defined
2017-10-08 02:18:03 -07:00
PaulStoffregen
a44e342703
Fix order of deferred hub control transfers (KurtE)
...
https://forum.pjrc.com/threads/45740-USB-Host-Mouse-Driver?p=155745&viewfull=1#post155745
2017-10-07 20:45:38 -07:00
Paul Stoffregen
34b7dc5f51
Merge pull request #3 from KurtE/PS3-Usage-Pointer-issue
...
PS3 - Right Joystick does not work
2017-09-14 14:47:22 -07:00
Kurt Eckhardt
6bec8b60ee
PS3 - Right Joystick does not work
...
There is an issue with the extra items added to the report after the main known items.
Problem was HID report descriptor does something like:
Usage Page; Desktop (01)
Usage: 01 (Pointer)
Count xxx
Problem is the Usage values below 0x20 appear to have some other standard meaning. Which you can see in
http://www.usb.org/developers/hidpage/Hut1_12v2.pdf
So current fix is to ignore Usage values passed in < 0x20...
Appears to fix PS3 Right joystick
2017-09-13 18:40:40 -07:00
Paul Stoffregen
8fe975bc66
Merge pull request #2 from KurtE/joystick-testing
...
PS4 support
2017-09-12 16:14:02 -07:00
Kurt Eckhardt
d792ffd2e8
PS4 support
...
Had to increase size of HID report to 512.
Allow HAT to work 10039
Mouse Example prints out Z, Rz, Ry, Rx and Hat values
2017-09-12 06:57:19 -07:00
PaulStoffregen
6e34e81fcf
Add Joystic driver
2017-09-11 18:32:16 -07:00
PaulStoffregen
769f3120ee
Remove old mouse code
2017-09-11 17:54:43 -07:00
PaulStoffregen
356700d9d5
Add special PS3 start command to HID parser
2017-09-11 12:09:14 -07:00
PaulStoffregen
fbd0c51992
Opps, don't try to use null pipe in hid parser
2017-09-11 11:02:02 -07:00
PaulStoffregen
78a466c362
Fix adding pipes to periodic schedule
2017-09-11 05:52:08 -07:00
PaulStoffregen
f58ed079a6
Mouse using HID parser
2017-09-10 03:48:10 -07:00
PaulStoffregen
1259027ebc
Disallow claim of USBDriver with non-NULL device, even if on available_drivers list
2017-09-10 01:53:50 -07:00
PaulStoffregen
c2adf01769
Add some comments
2017-09-09 18:01:56 -07:00
PaulStoffregen
c94c873bb2
Handle report IDs in HID parser
2017-09-09 12:14:22 -07:00
PaulStoffregen
d9ad2cc78f
Generic HID parser, initial commit
2017-09-09 11:17:50 -07:00
PaulStoffregen
6938b46086
Fix compiler warnings
2017-08-24 13:55:11 -07:00
PaulStoffregen
99ec892dd7
Add Mouse driver from wwatson (part 2)
2017-08-24 13:50:03 -07:00
PaulStoffregen
75ac4d21e6
Add Mouse driver from wwatson
...
https://forum.pjrc.com/threads/45740-USB-Host-Mouse-Driver
2017-08-24 13:41:39 -07:00
PaulStoffregen
e345c0360d
Add error recovery for async schedule errors & halted pipes
2017-07-02 02:15:43 -07:00
PaulStoffregen
50016717b3
Fix periodic list init when diffent sizes used
2017-03-29 17:33:37 -07:00
PaulStoffregen
c70cf5fef6
Update Test example slightly
2017-03-07 07:47:02 -08:00
PaulStoffregen
6bacbaf537
Convert to Arduino library format
2017-03-07 07:40:06 -08:00
PaulStoffregen
f3d503259c
Add public API for Keyboard driver
2017-03-07 07:22:57 -08:00
PaulStoffregen
650ff7eeec
Add public API for MIDI driver
2017-03-07 05:42:29 -08:00
PaulStoffregen
3355eab2a2
Add documentation (in source code comments)
2017-03-06 06:03:07 -08:00
PaulStoffregen
5935deb8ce
Device driver constructors compatible with UHS library
2017-03-06 04:36:48 -08:00
PaulStoffregen
a805d7552e
Add Task function
2017-03-06 04:15:23 -08:00
PaulStoffregen
ea75a1c673
Rename header file to USBHost_t36.h
2017-03-05 21:33:29 -08:00
PaulStoffregen
be1004e0f4
Disconnect downstream deviecs with hub disconnects
2017-03-05 20:28:41 -08:00
PaulStoffregen
b18ee4ea06
Add define to enable/disable all debug printing
2017-03-05 20:18:02 -08:00
PaulStoffregen
0443ab8db6
Device drivers contribute the memory they will require
2017-03-05 15:48:50 -08:00
PaulStoffregen
3d918a3977
Turn off USB keyboard idle reports
2017-03-03 06:13:37 -08:00
PaulStoffregen
98701a268f
Handle disconnect device from hub
2017-03-03 06:04:02 -08:00
PaulStoffregen
920f71e768
Fix hub debounce timer port status requests
2017-03-03 05:15:57 -08:00
PaulStoffregen
86c1bbe6ee
Add reset-enumeration mutual exclusion
2017-03-03 04:58:10 -08:00
PaulStoffregen
2e1e9748e0
Hub driver (finally) creates devices
2017-03-01 13:29:00 -08:00
PaulStoffregen
05582c91a0
Trim hud driver memory usage
2017-03-01 12:08:47 -08:00
PaulStoffregen
ba0e6f495b
Do only 1 control transfer at a time to hubs, clear other change status
2017-03-01 11:33:07 -08:00
PaulStoffregen
81f30ecd5f
Begin work in hub port state machine & debounce wait
2017-02-28 11:39:59 -08:00
PaulStoffregen
d0ee653192
Restructure hub driver to stateless approach
2017-02-28 08:39:43 -08:00
PaulStoffregen
edb04e60e7
Fix interrupt pipe bug when running at 480 Mbit/sec
2017-02-28 04:25:51 -08:00