RunCommand Doesn't Trigger?
-
Ever since I updated my RetroPie-Setup script, I've noticed that I can no longer trigger the RunCommand menu. I think a related issue is that once I leave the ES and access the RetroPie menus in the terminal screens, none of my controller inputs are working. I used to be able to navigate with it and not need a keyboard. Now, a keyboard is the only thing that works. Has something changed that reset what my default input controller is?
Raspberry Pi 3
RetroPie 4.3
ES v2.6.3RP
RetroPie-Setup v4.3.7 (git 9b4fc28) -
@hansolo77 just double check your ES version. Latest is 2.7.3RP. Was that a typo?
-
@jonnykesh No, I just haven't updated ES recently. The last update I did was to try and get that Kiosk function to work. But since It was giving me trouble I restored the old backup I had. The most recent update I did was so I could get the latest version of RetroArch to participate with the new RetroAchievements Leaderboards.
-
@hansolo77 said in RunCommand Doesn't Trigger?:
Ever since I updated my RetroPie-Setup script, I've noticed that I can no longer trigger the RunCommand menu. I think a related issue is that once I leave the ES and access the RetroPie menus in the terminal screens, none of my controller inputs are working. I used to be able to navigate with it and not need a keyboard. Now, a keyboard is the only thing that works. Has something changed that reset what my default input controller is?
Raspberry Pi 3
RetroPie 4.3@meleu I saw your message on github. No, I don't think that my recent change is related to @hansolo77's issue.
My recommendation: update the script, then update all packages - if the latter is not feasible, then at least update the runcommand package. Then reboot and re-configure your controllers (even though they are working in EmulationStation).
Also check if you are able to navigate the RetroPie-Setup script via the controller.
-
@psyke83 said in RunCommand Doesn't Trigger?:
My recommendation: update the script, then update all packages - if the latter is not feasible, then at least update the runcommand package. Then reboot and re-configure your controllers (even though they are working in EmulationStation).
Also check if you are able to navigate the RetroPie-Setup script via the controller.
Alright, I will try this and report back.
-
Updating now... should I use the tool to remove all pre-configured controllers from ES? I don't remember where it is or what it's called, but I know it's in the config tools of the RetroPie-Setup script.
-
I've done a lot of testing and poking around. I think the problem is related to the same problem I had when I updated RetroArch. In order for me to get into RetroArch to reconfigure it, I had to completely remove all USB devices attached to my Pi aside from the USB drive, and the Xbox360 dongle. Normally, I have a raphnet NES to USB adapter connected to one of the ports as well as a Mayflash Atari/Sega to USB adapter connected to another one. The problem comes from the fact that RetroArch is picking up the Mayflash adapter as device #1. So nothing else connected is being recognized. I've tried using @meleu's Joystick Selection addon but RetroArch still isn't playing nice and wants to use the Mayflash as the default. The only way I can fix it is by having everything unplugged, so when I boot up the Pi it only finds the Xbox360 controller (which I use most of the time). Then I can configure it to use the
All Users Control Menu
option. I've tried manually toggling that in theretroarch.cfg
file but it never seems to work. Retroarch still appears to be set up to only accept input from the MayFlash for Player 1. The root problem is the device index.So I suspect the problem with my inability to trigger the RunCommand menu stems from it expecting input from Device #1 as well. In my particular case, Device #1 is always the Mayflash, Device #2 is always the Xbox, Device #3 is usually Mayflash #2, Device 4 is usually the Raphnet. If it only works from Device Index #1, that's my problem.
Is there any way, in a root system setting, where I can specify the Xbox controller as Device Index #1? If not, I imagine an update to the scripts would be required to allow control from any device, and not just #1.
Further testing has revealed that I can completely control the RetroPie-Setup screens with my Xbox controller, but getting into the RunCommand is completely hit or miss. In a hundred times testing, I might have brought it up maybe once. And it was probably during the time I had everything else disconnected.
-
@hansolo77 said in RunCommand Doesn't Trigger?:
I've done a lot of testing and poking around. I think the problem is related to the same problem I had when I updated RetroArch. In order for me to get into RetroArch to reconfigure it, I had to completely remove all USB devices attached to my Pi aside from the USB drive, and the Xbox360 dongle. Normally, I have a raphnet NES to USB adapter connected to one of the ports as well as a Mayflash Atari/Sega to USB adapter connected to another one. The problem comes from the fact that RetroArch is picking up the Mayflash adapter as device #1. So nothing else connected is being recognized. I've tried using @meleu's Joystick Selection addon but RetroArch still isn't playing nice and wants to use the Mayflash as the default.
can you not just change the order of devices in your USB ports?
The only way I can fix it is by having everything unplugged, so when I boot up the Pi it only finds the Xbox360 controller (which I use most of the time). Then I can configure it to use the
All Users Control Menu
option. I've tried manually toggling that in theretroarch.cfg
file but it never seems to work. Retroarch still appears to be set up to only accept input from the MayFlash for Player 1. The root problem is the device index.this option currently doesn't work: https://github.com/libretro/RetroArch/issues/3337
Further testing has revealed that I can completely control the RetroPie-Setup screens with my Xbox controller, but getting into the RunCommand is completely hit or miss. In a hundred times testing, I might have brought it up maybe once. And it was probably during the time I had everything else disconnected.
i can't explain this one...
-
It's probably going to be a lost cause for me. Because of the complexity of my build, there isn't anyway to change the hardware layout. In "Port 0", I have a USB hub. Connected to that, internally in the back, is the MayFlash adapter. Also connected to that, externally in the front, is the Xbox Dongle and my wireless Keyboard/Mouse dongle. I also still have 3 available ports in the front. "Port 1" on the Pi has my USB Hard Drive connected to it. "Port 2" on the Pi houses my Raphnet adapter. "Port 3" on the Pi is left empty for the time being. I considered connecting the Xbox dongle to "Port 0" and the hub to "Port 1", only I've had some issues with the dongle not working. Every now and then, the system will boot up but the light on the dongle is out and my controller doesn't work. If I disconnect and reconnect the dongle, it works again. If I connect the dongle to the port on the Pi, I would have no way to access it in the future if it doesn't work, as my Pi is enclosed inside an old NES case. I will endeavor to investigate this further. Perhaps the reason the dongle doesn't work sometimes is because it's connected to the hub?
-
Ok, I think I know what my problem is now. It's because I'm using the XboxDrv software to override the inputs when I load certain systems. When I first started using it, it was my understanding that I could use configure settings to load on-demand as needed whenever I wanted to use a different controller. For instance, when I play a Sega Genesis game, it detects I'm loading that system and runs an additional driver to let me use my 6-button Pad and the MayFlash adapter. It does this as part of the
runcommand-onstart.sh
. When the gaming session ends, it unloads the driver. Apparently the problem comes from it ALWAYS loading the driver, rather than only when I connect a controller to it. I discovered this by testing the various controllers after moving the Xbox Dongle to the Pi's USB Port 0. I can replicate it every time, with the controllers I have configured.The NES system is configured to use an NES controller. So when I try to launch and NES game, RunCommand is looking for input from that controller only. When I connect a controller to that port, I can now access the RunCommand window. The same is true with Sega games. I can only access the RunCommand windows by triggering it from a controller connected to that port.
In both scenarios, the Xbox Controller works fine in game and in RetroArch. But I can't navigate RunCommand with it. In fact, I can't navigate RunCommand with anything other than the keyboard on any systems I have configured with XboxDrv. I don't have a configuration for SNES, so when I'm using my Xbox controller, everything works like it should. I can trigger RunCommand and navigate with the Xbox controller jut fine.
I think I need to go back through and examine my
runcommand-onstart.sh
settings. I might be able to get it working by adding an Xbox controller configuration to the settings.That's my current settings.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.