Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
Guitar Hero "Guitar" support: whammy, tilt and axis #24
I tested a Gibson Guitar Hero III controller and "whammy bar" and "tilt" are not recognized/working.
Standing to wikipedia and some other web resources both should be implemented as axis.
I don't know if "tilt" or "whammy bar" are connected to additional axis inside the guitar shell or they're just bond to one of the wiimote's internal axis rotation, but here will follow some observations that may be useful for debug purposes:
The Whammy Bar is mapped to Rotation X, though it seems to not use the full value range. The Extension Report uses 5 bits for it, whereas my driver maps it to 8 bit unsigned. I don't know if the Extension bits are signed or unsigned. Rotation Y is mapped to the analog touchbar on the neck (which is not on the GHIII Guitars). What do you mean by those two follow the Wiimotes internal axis?
Z axis and rotation is not mapped and used for the Guitar. So that is expected behavior.
By tilt do you mean pulling up the neck to activate the star power (or whatever it is called ingame)? The wiki doesn't say anything about tilt. But i would guess they are using the Wiimotes accelerometers for that. I'll put that on the list to add that feature as well.
I checked the button mapping and i figured the Guitars are featuring 14 buttons (Wiimote Core Buttons + Guitar Buttons). Moreover the driver is writing not one but two buttons (B and Home) to static/unused bits, that are therefore not working. So thanks for pointing that out
Whammy (WB on wiibrew data format table)
If Z axis is unused, could it be a candidate for wammy axis mapping?
Tilt/Star power (WB on wiibrew data format table)
By tilt i mean exactly pulling up to activate the star power.
Considering that we have a wiimote inside the guitar, tilt/star power could be activate by moving the guitar and triggering one of wiimote axis.
Anyway there may be something to fix on wiimote axis mapping because with a guitar plugged in it's like wiimotes internal axes rotation replicates wiimote internal axes movement.
Nunchuck plugged in:
Guitar plugged in:
In the previous post's images you can see what i mean, i every position (top, bottom, left and right) i didn't move the wiimote (inside the guitar) but X and Y rotation follow the analog joystick somehow .
B button is hidden inside the guitar shell...no chance to hit, you can spare that
// return whammy bar postion: value ranges from 240 (0xF0) when the bar is at rest
I have a guitar, I will try to polish the driver, right now tilt and whammy are missing. Plus, star power in music games is a discrete event, so I think it's better to map the Z raw force > threshold to an additional button instead of simply reporting the analog value, otherwise you'll have to use a mapping program to make it work with phase shift, for example.