That's fantastic, thanks for the info! I had been searching for usb interfaces on the web, but hadn't seen one like this. I don't see why this wouldn't work. I'll give it a shot, and let everyone know.
@TheBlueBanner@chubsta Another solution is to create "non-merged" romset, definition from the mame website :
A non-merged set is one that contains absolutely everything necessary for a given game to run in one ZIP file. This is ordinarily very space-inefficient, but is a good way to go if you want to have very few sets and want everything self-contained and easy to work with. We do not recommend this for most users.
Clrmamepro allows you to build such romsets, or you can do it manually by copying files from parent and/or bios to the romset you want to launch.
I got it working now. Problem is I don't know what I did differently so I can't explain it for the benefit of others. What I did was I reinstalled meleus joystick script and now it works. If I plug in the SUB pads while still in ES I can then use them as P1 and P2. If I unplug them the Controlblock controllers become 1 and 2. This is perfect. Thank you @mitu for your patience and for being so helpful all the time. In addition to this now being solved I also learned to SCP and SSH in the process so I solved a couple of other issues myself that I couldn't have before. Thank you.
I believe I have figured it out, although I'll see how everything acts for the next few days.
I did have to use a separate bluetooth controller for each switch pro controller. I did everything using bluetoothctl. I left scan on both bt controllers, discovery off, and agent to NoInputNoOutput. I then connected one switch pro to each bluetooth controller and trusted the switch pro controller. Seems like I can now turn off a controller and turn it back on and it will connect automatically, nothing manual required.
I can't figure out the analog sticks with two controllers. I saw a post about using xboxdrv and a udev rule and a systemd service file, I tried that, but only one controller was being recognized as a "Switch Pro Controller", the other still only recognized as a "Pro Controller" (so no analog up or right). Also, for some reason when I had all of this enabled and I would try to configure the inputs on a switch pro controller it would say that 5 gamepads were detected. Couldn't get anything to actually work in a game either, only in emulationstation. Once I uninstalled xboxdrv and deleted the udev rule and systemd service file and restarted retropie then worked correctly, only seeing 2 gamepads and they work in games.
Maybe one day the analog sticks will just werk without messin around with it. Until then I just won't be playing n64, which I guess doesn't work all that well anyway
Use @meleu's joystick selections script, it allows you to choose the (player) order of the joysticks per core/system. But if you're DragonRise controllers are always USB connected, they'll probably always be js0 and js1, so I guess you can use the RetroArch gui and choose that player1/2 and joysticks on 3rd and 4th position and save the the core remapping.
For N64 though, I think you'll need to edit the configuration file explicitly if you're using the standalone Mupen64 - more details are in the docs for the emulator.
@thedatacereal The file in the /boot folder is only read on system boot, and it's copied in the proper folder in /etc. Any modifications you do in the configuration file for wpa_supplicant are not applied in real-time, but you can restart the networking service (which in turn will call wpa_supplicant) and they'll be picked up.
Ok, thanks for the information. The buttons you guys suggested look better than I had envisioned. I didn't have any specific dimensions but I was more looking for something round so I can drill through the side plate vs. something square which I don't have equipment to do properly. :)
You could try using the scraper on your PC . Download the relevant version here and place the binary in a folder containing your roms. They can be from any system but not a mixture of MAME and consoles as they use different databases.
Running the scraper will create a gamelist.xml file and a folder containing boxart which you can place in your roms folder on your pi. If you want to keep your scraped data in configs/all/emulationstation, then you have to use the -image_path flag (or use the find and replace facility in a text editor).
Just thought I could make both controllers have the same privelages in terms of saving and exiting for games.
There's an option named all_users_control_menu, but it's so new that isn't available in a fresh 4.0.2 install. If you install/update retroarch from source you'll get it.
I commented about it here https://retropie.org.uk/forum/post/24548