wiredopposite / OGX-Mini

RP2040 USB gamepad emulation for multiple platforms.
MIT License
109 stars 8 forks source link

Question: BlueRetro support? #6

Open MrKittenK opened 6 months ago

MrKittenK commented 6 months ago

I was wondering if this has support for BlueRetro? There is a GitHub, I've linked, that sends commands from BlueRetro to ogx360 over I2C

https://github.com/konwektor/BlueRetro

Could this work/be Intergrated?

Thank you for the great work so far ☺️

wiredopposite commented 6 months ago

It would be pretty easy to make this work with I2C, with that repo though I'd have to take a closer look at what it's doing and spend some more time getting familiar with Blueretro.

I have spent a considerable amount of time working on a way to do the same thing with the Bluepad32 library though, it'll have a BLE web app for choosing the console you're using, remapping buttons, and setting joystick deadzones. I will be posting my work on that pretty soon, I still have to sort out some details.

Invictaz commented 6 months ago

@MrKittenK So you want to have Blueretro working on a Pico or use a Blueretro adapter on the usb input side of this OGX adapter? Then you will have two adapters in a row? I really like the Blueretro crossover. Not really familiar with the Bluepad32 developments yet.

bbsan2k commented 6 months ago

How about adding BluePad32 library to be used with a Pico W? It could be used as an alternative to USB Host if no usb dev is detected… https://github.com/ricardoquesada/bluepad32

Invictaz commented 6 months ago

@bbsan2k It would be wise to see what the pros and cons are. Bluepad32 is already ported to RP2040, see the PicoSwitch github, but Blueretro seems to support more controllers, has longer development and has different features. It's difficult to say.

bbsan2k commented 6 months ago

It probably comes down to how much time you want to invest into that. BlueRetro IIRC has lots of dependencies into the ESP-IDF which first have to stubbed using the Pico SDK. Additionally it uses more resources. BluePad is more or less Plug and Play and can be integrated in way less time. I‘ll probably also have a deeper look in integrating BluePad in the coming weeks, if I find some spare time😉

Invictaz commented 6 months ago

So in essence a Frankenstein mod of PicoSwitch and OGX Mini would happen. Not sure about the ESP32 stuff. I think it is possible to port Blueretro to Pico but resources are limited on both platforms. Especially the WebUI is something that Bluepad32 doesn't have. The webUI makes controller configuration and remapping possible.

I managed to compile the legacy version of PicoSwitch with the keys mapped to X is A and Circle is B. The legacy version of PicoSwitch is based on the original Bluepad32 without any modifications and supports much more controllers. However in the newer versions of PicoSwitch it is used as a submodule making updates easier, but PicoSwitch now has problems with controller connection making it very unstable. The legacy version is working for hours without problems.

https://github.com/juan518munoz/PicoSwitch-WirelessGamepadAdapter/issues/6#issuecomment-2017041909