-
Notifications
You must be signed in to change notification settings - Fork 355
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Suggestion] Add support for PowerA Wireless Controller #268
Comments
Thanks for the comment. I'll leave this issue open, but will close the others in a similar vein because they don't really contribute to discussion. In the off chance I get one, I'll add support. Otherwise someone else (could be you!) could implement support. The program is open source. |
Wireless versions are the only 2 that would benefit from betterjoy as Cemu detects the controllers just fine in wired versions but they don't have gyro functions like the wireless controllers. I own 3 Power A controllers and 2 are wired, 1 standard discontinued model (they released enhanced versions) and 1 gamecube design as well as a wireless enhanced model. All 3 work fine with only the standard having an issue of a sticky L button occasionally but after some wear it got better. Here's their site: https://www.powera.com/products/?product_type=17&product_platform=141 |
@Davidobot What would adding support look like? |
Having physical access to the controller. Adding the product id to the known list and seeing everything that goes wrong. |
where would one do that? I have the product ID and currently am looking for where I'd add it to BetterJoy. May not have a clue what I'm doing but I can follow instructions. Is there a discord or something that I can join to ask for help? Also attempting to use Steam to see if that helps workaround the issue atm. I've tried before but kinda half assed the attempt so didn't actually look into it that hard. I'm trying to get this to work for both Dolphin and CEMU, both say use your program to get motion controls from a switch pro controller. |
@WhitestWhiteEver you can add me on Discord if you want to chat directly - RinaLovesRobots [Davidobot]#9863 |
I'd like to help too if I can; I just got a pair of these.
…On Thu, Jun 4, 2020, 3:27 AM David Khachaturov ***@***.***> wrote:
@WhitestWhiteEver <https://github.com/WhitestWhiteEver> you can add me on
Discord if you want to chat directly - RinaLovesRobots [Davidobot]#9863
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#268 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABYT6YSLIZQ4K3IRVX43IFDRU5LHHANCNFSM4MCM6B4A>
.
|
We reached a point where idk what to do and I know I should of said something but I can't honestly have no clue what Davidobot asked me to do. In issue #84, the person suggest stuff but again idk what they are saying. |
For everyone that has a PowerA controller:
You might want to just copy the exe over and leave your v6 settings in place |
@Davidobot Running the attached BetterJoy test version with my two PowerA controllers (one wired, the other wireless) outputted nothing.
|
Same as above. Messed with the config turning things on and off and nothing. And same as Jingzbu on the controller options. I found a Hash Id but no hex like you asked for. Now my controller is giving driver errors. It maybe due to I need to reinstall windows but haven't felt like doing that yet. PSO2 was involved, tried system restore, factory reset and everything else Microsoft support suggested to fix the fact that the Windows Store deleted itself. |
BetterJoy_Test_Ver.zip If you've used HidGuardian before, go to http://localhost:26762/ and clear out device, then restart your PC. Plug in your controller and then run the test version, pasting the results of the |
BetterJoy_3rdP_Test.zip |
Using BetterJoy_3rdP_Test, the wired controller could be found (i.e., it is listed in the "All Devices"). I set the "Settings Type" to be "Pro Controller", and then click "Apply", but nothing happened; no controller shown in the four "Locate" slots. The wireless one could also be found, and even be connected (shown in one of the four "Locate" slots), but only for a very short period of time, and then got "dropped". See below.
|
@jingzbu Thanks for testing! #419 (comment) < try this |
Here is a testing message from the older version:
|
Using BetterJoy_3rdP_Test3, the wired controller got connected. Thanks for the good work! I will test the wireless one and keep you updated. Updates: Not sure whether this would be useful, but just FYI:
The wired controller got connected stably but dropped after about 30 seconds. The wireless one could not be connected stably.
|
A bit worrying that it displays that 6 pro controllers were found. Can you screenshot what your "Add device" window looks like? |
What happens if you add only the wired/wireless controller and apply it as a pro? |
The wired controller could be connected, but after about 30 secs, the BetterJoy crashed. The wireless one could not be stably connected; got dropped so fast that it even did not allow me to capture the crashing process. |
BetterJoy_3rdP_Test4.zip |
Done. The same issues as the Test3 version. |
Using that latest test, clicking Add Controllers throws an exception that crashes the whole program
|
Is this thread still active? I am trying to connect a power A controller to dolphin emulator and I need to use betterjoy. After joining the dolphin server they said to look here. It doesn't seem like you have a full, working, version yet so I am willing to help test and such. I have a wireless power A gamecube controller. |
I'm still very interested in this as well |
Is there any chance you'll revisit this topic? it would be nice to be able to use my wireless gamecube controller with emulators and such, I'm open to helping test and all that if needed lol |
No idea if this issue's being monitored at all, but I'll toss in my two cents. You've probably figured it out already, but the reason no one's been able to provide the product and vendor ID is because this device doesn't have any, at least not in the traditional PCI/USB format. The controller connects exclusively via Bluetooth and runs on AA batteries - there's zero USB interfacing at all. Windows' device manager shows a hardware ID of BTHENUM\Dev_0A1B2C3D4E5F, where the last chunk of the string is the device's unique address, stripped of colons. There's also Bluetooth product IDs and Bluetooth vendor IDs listed, but they're each set to 0000. If your code requires VID/PID in a standard format, you're gonna have a bad time. The controller does seem to be recognized as a Switch Pro Controller by Steam, gyroscope and all. Hard to tell how it's handled in Windows, but the udev rules in Valve's Linux input repository work around the lack of proper IDs (the only supported gamepad not to have them, that I can see) by looking for the name the device provides (Lic Pro Controller) over Bluetooth, which seems to be unique. With the third-party controller finder in Version 6.4β, the controller shows up as 'Wireless Gamepad' when connected; you can move it to the Switch Controllers window and assign it as a Pro Controller, but after applying it things go south. A few seconds after the output window shows 'Starting poll thread.', the Bluetooth connection is terminated, and the controller doesn't attempt to reconnect itself; the output window doesn't give any more useful information than simply saying 'Dropped.'. I haven't dug through the code, and I don't see any debug output, so unfortunately I can't really speak to what it's doing to throw things off the rails. I might do a deeper dive later in the week, but I can't really promise much. |
I've just found this program which works amazingly with my PowerA Wireless Gamecube Controller: https://github.com/csutorasa/XOutput |
I decided to mess around a little and found that commenting out try {
jc.Attach(leds_: jc.LED);
} catch (Exception e) {
jc.state = Joycon.state_.DROPPED;
continue;
}
jc.SetHomeLight(on); in Program.cs at around line 300 then the controller doesnt drop and instead VIGEm gives an error about the controller already being connected, I tried to make it only connect once and it didn't drop the controller and had a dummy x360 controller showing in my usb control panel but no inputs were registered. Just thought it might be worth posting here. I also found this CTCaer/jc_toolkit@488eb7d |
Considering that code is required to properly use the controller, it would make sense why commenting it out breaks things ;) If I was to develop 3rd party support further, I would make more use of the "Add Controllers" menu. Anyways, check out this build #663 (comment) |
Ooh I already tried that build but for some reason I never got a notification of your reply and forgot to check back. I'll try what you suggested in that thread, seems on par with what I was thinking removing those lines did in the first place (stop the LEDs being used lol) |
Hey, I wanted to ask if any progress has been made with this? :) |
Unfortunately - no. I would notify the community in such an event. I like your Professor Layton profile image! |
I too have one of these powera controllers. Specifically mine is the PowerA enhanced wireless switch controller (https://www.powera.com/product/enhanced-wireless-controller-for-nintendo-switch-black/). I have recently gotten into emulation as I travel alot and its great being able to have a game of mario kart in a hotel without having to carry a different device, just a laptop and a controller! I noticed today the following;
The issue then with this controller appears to be that the motion is not natively supported in YUZU or Cemu and a third party interface is required which is what BetterJoy provides through the CEMUHook UDP server. Addressing David directly here: I have added you on Discord as AnUrbanPenguin. I have reasonably good computer knowledge if you would like me to have play with some test versions to try and finally get this monkey off your back. Further Update: The controller works perfectly in steam and is detected in steam as switch pro controller. The motion works perfectly in steam too. |
I have been looking into this issue a little more and it appears that the problem stems from both the VID and PID of this particular controller being listed as 0x0000 making life difficult. I have attached a screenshot from HIDNinja which does have a little more information but not much. There does appear to be a hardware ID shown which could be something to work with. It would be great if someone else with one of these controllers would be able to run HIDNinja and check what their ID shows as? If its the same as this one we could be onto something? I have also checked steam forums etc and they do support these controllers as per the following links; however it is not shown on their officially support controllers page (possibly its just out of date?). |
I have noticed the above comment from June 2020 (#268 (comment)) Interestingly my controller and jingzbu's controller both have identifcal hardware ID's as per the screenshot above. Nintendo Wireless Gamepad Could this be the way forward for identifying these controllers? Is that how steam is making it work? Hopefully something to go on. I have passed this information onto the DS4Windows team who also support Switch Pro controllers in their application. |
Anyone? These Power A Enhanced Wireless Controllers are a pain in the ass. My PC detects it as a controller in the device manager and is named “NSW Game Controller” but I go into Controller Settings then there’s 0 controllers to choose from which is confusing. Steam recognizes as a “NSW” controller but unable to bind anything. In windows game controller settings, when trying to test any type of input, there’s none. |
Anyone got this to work? I have been unable to connect even with unofficial controller enabled. Controller connects to Bluetooth fine but can't connect to betterjoy at all |
Hey ! Are there some news about these power A controllers ? |
Version 7 works with them, at-least my ones. There are also test builds in one of the other issues. Not 100% if they are outdated compared to the release build now though. |
Even using the nonOriginal controller option this controller is not recognized.
The text was updated successfully, but these errors were encountered: