Project help needed
@Luxous What kind of encoder? Can you post a link to the brand and model?
@Luxous Just to confirm, did you remap the controllers in EmulationStation, and are you using the libretro (lr- prefix) emulators?
@pjft i reset controls, as i had assumed i had messed up, ssh in and ran script to wipe controls, ran emulation station, one set of controls work, the second set have no effect at all
with regards to the libretro (lr- prefix) emulators, im unsure how to do that?
For your controllers:
First thing I'd do is start up your pi with only the non-working controller plugged in and see if it recognizes it as a new controller that you need to configure.
Second, there's a test you can do to see what controllers are plugged in, and see what button presses correspond to numeric inputs on the pi. I'm guessing this video is still applicable:
If the two controllers give different inputs you might need to rewire your buttons. If certain buttons or the controller aren't recognized I would suggest going over your wiring with a fine tooth comb to make sure you didn't miss anything.
For the power on/off:
One option other than the powerblock is shown here:
I haven't tried it, so maybe someone else would be able to tell you if that's as robust of a solution as the more expensive hardware. At least you can test that with one of your extra buttons, and not have to worry about spending more money for now.
Another option would be something like this: https://mausberry-circuits.myshopify.com/products/shutdown-circuit-use-your-own-switch
The benefit (in my mind at least) is that I think it fully cuts power to the pi, but it requires an on/off switch.
@thedeathstar thanks for the info, the arcade set ive got is two complete sets of buttons and joysticks but they share the same double encoder, so there is only one usb into the pi, this is why i think its only finding it as a single controller
today i took one of the encoders off of the other button sets and connected the two separate sets of joysticks and buttons via two encoders, the pi then seen i had two sets of controllers.
i wipe the controllers settings and i go through emulation station programming joystick 1, everythings fine.
once in emulation station i then hit menu, configure joystick 2, everything seems to be working, only its not... it then throws off all controls for joystick one. only the bottons though not the joystick
I recommend you switch out to using a keyboard based encoder like the iPac 2. Those cheapo chinese encoders that come in those bundle kits are usually pretty low quality, and with no documentation there's no way to easily troubleshoot them. The iPac is more expensive, but infinitely easier to work with since it's recognized as a keyboard and not multiple gamepads.
@Luxous A possibility is that you could find the input numbers for the buttons for each users controls (using both controls in one usb controller still) and then set up the controller config file for each system using those inputs. Those config files are set here: /opt/retropie/configs/whatever system you are setting up for/retroarch.cfg
The code you would change would be something like:
player2_a = 1
player2_b = 2, etc.
You would leave the player 1 controls, and just change the player 2 controls. This may not even work though because it may require player2 to be a separate controller.
On the other hand, you could do a similar thing using two of your current controllers for each system. The controllers may not be consistent with each other , but you could get the input number for each one and set the player two controls to those inputs.
if the second way works, you could get away with not having to buy new control boards for all of your systems.