FreePIE icon indicating copy to clipboard operation
FreePIE copied to clipboard

Add support for classic controller

Open albeec13 opened this issue 10 years ago • 18 comments

I recently submitted a pull request to Max Malmgren's Dolphiimote project, wherein I added support for the Wii Classic Controller. I am still waiting for a response, but I was hoping to see Classic Controller support added to FreePIE to make use of my Dolphiimote changes, once they're pulled in. (I know Max is your brother, so if you could accelerate the process of him checking that pull request, it would be great!)

I haven't yet forked the FreePIE source, but I could probably try to add Classic Controller support myself, once the Dolphiimote changes trickle down into FreePIE. Thanks!

albeec13 avatar Feb 28 '14 17:02 albeec13

I've forwaded the info to Max, he will look at it as soon as possible.

AndersMalmgren avatar Feb 28 '14 21:02 AndersMalmgren

Awesome, thanks.

albeec13 avatar Feb 28 '14 21:02 albeec13

I started working on this today, built Dolphiimote from your merge request. I hope to get it working this weekend.

papodaca avatar Apr 27 '14 02:04 papodaca

I would really try to involve Max in this guys.

AndersMalmgren avatar Apr 27 '14 14:04 AndersMalmgren

Max actually responded to my pull request about two months ago and indicated he was going to review and pull my changes, if valid, but hasn't taken any action since. I didn't want to annoy him with more messages, so I've been waiting until I hear from him again.

albeec13 avatar Apr 28 '14 14:04 albeec13

Well using the changes in that pull request worked perfectly. I didn't encounter any problems implementing Classic Controller support in FreePIE.

papodaca avatar Apr 28 '14 15:04 papodaca

I'm very sorry for handling the related Dolphiimote issue so slowly. I have reviewed the code and accepted the merge now. I'd like to work a bit on making interleave work properly. Did you, papodaca, try making it work or did you use the code just as it was in the pull request?

maxmalmgren avatar Apr 28 '14 20:04 maxmalmgren

I used that code as is, I wasn't even trying to use motion plus and the Classic Controller at the same time. Not my use case. Wasn't the interleave working before with motion plus and nunckuck? The interleave should be the same.

papodaca avatar Apr 28 '14 21:04 papodaca

No problem, Max.

Papodaca, interleave is different for use with classic controller due to a difference between what byte needs to be written to enable it. For Nunchuck interleave, the byte value to be written is 0x05, but for all other devices like the Classic Controller, Drums, or Guitar Hero Guitar, you need to write 0x07 to enable interleave.

In my Dolphiimote changes to enable Classic Controller, I was able to make it work without interleave, but getting it to work with interleave is a bit more complicated due to the fact that there's no way to tell whether a Nunchuck or Classic Controller is in use at the point at which the 0x05/0x07 byte needs to be written based on the way the code is currently structured. I did not have time to fully investigate the best way to do this, but deferred to Max for advice on how to proceed.

My primary concern, like you, was to get Classic Controller support in FreePIE, but getting interleave to work as well would be great.

albeec13 avatar Apr 28 '14 22:04 albeec13

Has there been any substantial progress with classic controller support? I want to move beyond PPJoy + Glovepie to FreePIE + vJoy but I cannot find any reference to classic controller support.

I use the PDP Fight Pad for all my Gamecube games which is essentially a repackaged classic controller and I would love to have the ability to play them without having to stay in test mode for PPjoy to work.

Papkee avatar Jun 10 '15 20:06 Papkee

This patch was working for me when I created it, I used it at the time to play some games. I should try to build this again to see if it still works.

papodaca avatar Jun 13 '15 02:06 papodaca

I'd also be very interested in seeing this available in a mainline release.

npilon avatar Jul 03 '15 02:07 npilon

can someone that has both the standard wiimote and the classic test that this code does not chnage the behaviour of current controller support? If its confirmed I can pull the code, I think there was a issue with the code thats why max didnt pull it, will ask him

AndersMalmgren avatar Jul 03 '15 10:07 AndersMalmgren

I've got standard and MotionPlus WiiMotes. Is there some kind of standard script I should use for testing? Or just go through and log the various inputs and make sure they all still work?

npilon avatar Jul 03 '15 17:07 npilon

sorry nothing is defined, you just have to test that it works the same before and after this code change

AndersMalmgren avatar Jul 04 '15 11:07 AndersMalmgren

Has this ever been looked at since mid 2015?

ScipioWright avatar Jan 01 '17 00:01 ScipioWright

@ScipioWright I have a PR open with this working, even used it a few month back.

papodaca avatar Jan 01 '17 01:01 papodaca

If you guys confirm it works for both classic and none classic I can pull, sorry that this pull got forgotten

AndersMalmgren avatar Jan 01 '17 11:01 AndersMalmgren