darthcloud / BlueRetro

Multiplayer Bluetooth controllers adapter for retro video game consoles
https://blueretro.io
Apache License 2.0
1.32k stars 110 forks source link

GameCube Digital Triggers Analog Merge #56

Closed shimmytoast closed 3 years ago

shimmytoast commented 3 years ago

Love the project just got a DIY unit built up and it's running great. I'm using the internal memory and the latest .19 binary universal.

I ran into what I believe is a bug when I try to select the preset profile for GameCube Analog and Digital Triggers Merge. Once I do this and power cycle the unit I can no longer access the advanced settings through the web browser and I no longer get any output to the GameCube. I also tried to use the GameCube specific binary and saw the same issue.

If I use the OTA update to re-download the main binary everything starts working like normal again. Good looking out on that too BTW because I can't access my USB port easily once my DIY unit is fully assembled.

darthcloud commented 3 years ago

Will take a look at it this week.

darthcloud commented 3 years ago

Look to work fine for me, can you copy the logs output from the preset and advance webpage here.

Can you also grab the logs from the USB serial?

Maybe try to factory reset your BlueRetro by holding BOOT button 10+ sec then release and let power on for a minute, then power off. Power on, then try to configure preset again. Once configure wait a min then power cycle.

shimmytoast commented 3 years ago

Apologies for the late response, and thanks for the response.

I did the factory reset first because I'm bad at instructions, but now I'm not getting the error messages so that's a good thing. The digital part of the triggers still aren't working for some reason though.

Here's the output from the webpages now.

Preset after saving Merge profile to output 1 Requesting Bluetooth Device... Connecting to GATT Server... Getting BlueRetro Service... Init Cfg DOM... Input: 0Preset: 6 Set Input Ctrl CHRC... 0 Writing Input Data CHRC... Input Data Written Input 0 Config saved

Advance page after doing that Requesting Bluetooth Device... Connecting to GATT Server... Getting BlueRetro Service... Get Api version CHRC... Reading Api version... Api version size: 1 Init Cfg DOM... Get Global Config CHRC... Reading Global Config... Global Config size: 3 Get Output 0 CTRL CHRC... Set Output 0 on CTRL chrc... Get Output 0 DATA CHRC... Reading Output 0 Config... Output 0 Config size: 2 Get Input 0 Config CHRC... Set Input Ctrl CHRC... 0 Reading Input Data CHRC... Got Input Data 187 Got Input Data 23 23 Input 0 Config size: 2051 Input 0 Config size: 2051 Loading Mapping Found: 23 nbMapping: 23 cfg: 23

Also doesn't look like I mentioned I'm using PS4/5 controllers currently if that matters.

shimmytoast commented 3 years ago

I can see in advance config that RM and LM are set to RT and LT after 95% in the profile. Messing with those percentages doesn't make a difference for me. I tried 50%-100% to see if that would work.

I can get the digital triggers to function as buttons if I set those to the R3 and L3 buttons by adding settings in the profile for RJ/LJ to equal RT and LT.

darthcloud commented 3 years ago

I reproduced the issue, it's related to mapping analog trigger to 2 destination doesn't work somehow.

It used to work some version back, will investigate.

It still work for controller with digital trigger like wiiu or switch.

Thanks for raising issue!!!

darthcloud commented 3 years ago

Fixed in v0.19.1 https://github.com/darthcloud/BlueRetro/releases/tag/v0.19.1

Thanks again!

shimmytoast commented 3 years ago

Awesome glad I could help hell yeah!

Thank you also!