[38a6d09] | 1 | Gravis GrIP to HID adapter
|
---|
| 2 | ==========================
|
---|
| 3 |
|
---|
| 4 | GRiP is (or was?) a custom protocol designed by Gravis to allow their gamepad
|
---|
| 5 | to use more than 4 buttons on the PC joystick port. The Gravis Gamepad Pro is
|
---|
| 6 | one of the best PC gamepads ever manufactured, and the USB version is not that
|
---|
| 7 | common (and also looks less nice with the black plastic).
|
---|
| 8 |
|
---|
| 9 | This interface allows to use these gamepads on an USB port, for modern machines
|
---|
| 10 | where the traditional gameport is not available. It supports up to 4 gamepads
|
---|
| 11 | (2 gameports, each allowing to use 2 gamepads thanks to Gravis chaining system).
|
---|
| 12 |
|
---|
[703832c] | 13 | The gamepads are each reported as a separate USB report, and show up as 4 independant
|
---|
| 14 | gamepads on both Windows and Haiku. Buttons are assigned in this order:
|
---|
| 15 | green, yellow, red, blue, L1, R1, start, select, R2, L2. This order is reasonable
|
---|
| 16 | (but not perfect) while allowing to reuse the bits received from the gamepad almost
|
---|
| 17 | directly to fill the HID report. The only change needed is inverting the Y axis,
|
---|
| 18 | because USB wants the up direction to be lowest values.
|
---|
| 19 |
|
---|
[38a6d09] | 20 | It is powered by an AT90USB AVR microcontroller, because these implement USB in
|
---|
[703832c] | 21 | hardware and make it easy to implement an HID device.
|
---|
| 22 |
|
---|
| 23 | You need the LUFA USB stack to compile this project. I am not including it to
|
---|
| 24 | avoid code duplication. Download and extract it yourself, or set the LUFA_PATH variable
|
---|
| 25 | to where you already have it when compiling.
|
---|
[38a6d09] | 26 |
|
---|
| 27 | [Further reading on GrIP](http://pulkomandy.tk/_/_Electronique/_Gravis%20Interface%20Protocol)
|
---|
[fb852a1] | 28 |
|
---|
| 29 | I have built some boards and can ship them to you if you don't want to build one yourself. The
|
---|
| 30 | cost for an assembled and tested board is 15€ (covering the cost of components and shipping).
|
---|
| 31 | Contact me if you are interested in getting one.
|
---|