ndeadly / MissionControl

Use controllers from other consoles natively on your Nintendo Switch via Bluetooth. No dongles or other external hardware neccessary.
GNU General Public License v2.0
2.56k stars 141 forks source link

Support for iPega 9083s #98

Open GabrielMundo opened 4 years ago

GabrielMundo commented 4 years ago

Hello, as the title says, could you please add support for iPega 9083s? I've tried all the 3 sync modes, but it just doesn't connect. btdb only shows my main joycons, nothing else. I've also tried every "experimental" version of other iPega controller that you have posted in another requests (9087, 9076, etc.), but it's the same, doesn't even connect. Thanks

ndeadly commented 4 years ago

If it's not showing up in btdb then it's not able to complete the pairing process. Try and pair it while running this build to create a log. The log is stored at sdmc://bluetooth-mitm.log and is overwritten every time you reboot the console.

Just to be clear, you're trying to pair the controller at the Change Grip/Order screen, right?

MissionControl-0.2.1-debug-logging.zip

GabrielMundo commented 4 years ago

Yes, of course, at the Change grip/order screen. Here is the log

bluetooth-mitm.log

ndeadly commented 4 years ago

The switch doesn't seem to have seen any devices at all. Was this log taken trying every pairing mode? Can you verify whether a phone or PC is able to see the controller?

ndeadly commented 4 years ago

Which button combo are you using to enter pair mode? There seems to be conflicting information on the ipega website. The manual says to set the switch and hold HOME for 3 seconds, but the other document suggests you should be pressing A+HOME (which is what most other ipega users are using I think)

GabrielMundo commented 4 years ago

Tried all modes with holding HOME (the controller comes with a physical switch to change modes, and also LED indicating each mode), also tried home + A with each mode, but without success. By the way, I waited 30-40 secs on each try. The controller works fine on my android phone.

Here is the log: bluetooth-mitm.log

I thought that maybe switch's bluetooth was not working, but these Eastvita controllers paired successfully (they do pair without the need of MissionControll) 6jXQ7hI Here is the log after pairing eastvita controller: bluetooth-mitm.log

GabrielMundo commented 4 years ago

The iPega also works on PC, and it's detected as a controller y2X156S

ndeadly commented 4 years ago

Yeah it doesn't seem to be getting picked up at all. Even if it couldn't pair properly I would at least expect to see it show up in the logs as discovered. Only other thing I can think of is the controller might be using Bluetooth LE (which I don't currently support). I'm not sure how to verify that though. It would be the first of any ipega controller I've encountered so far to use it if that were the case.

GabrielMundo commented 4 years ago

You are right. 9x5hXaA Well, I hope someday you add support to BLE. Anyway, thank you

ndeadly commented 4 years ago

Ah that's a bummer, but good to know that there are some ipega controllers that won't work. I do plan to support BLE eventually, it's more a matter of not having a clue how it works right now. It could require a second reverse engineering effort.

No problem, I'll revisit this if I ever get BLE going.

afonsocappelo commented 3 years ago

Good afternoon, I'm not sure how to talk to you and I almost gave up ahahah, I'm out of joycon and my salvation would be to use the ipega control, but it doesn't have support for my 9077, could you add? I'm using google translator !

ndeadly commented 3 years ago

@afonsocappelo have you tried to connect the controller already? Does it show up as connected? Many ipega controllers will work without any changes required, even if not listed under supported controllers (I've only listed the ones that users have confirmed working).

If you are still having troubles, please open a new issue for this controller. It may use a different hardware ID that I haven't whitelisted, or it may be another BLE controller like the one in this issue. If you are able to get it to connect to the console, please use btdb to list the paired devices and attach a screenshot to your issue.