errors saving config in retroarch, needing help with settings
-
I've been having a lot of trouble setting up retropie and specifically retroarch the way I want and getting confused about the settings (it's SO hard to find a good walkthrough that's for the Pi). My goal here is mainly to get my controls working, and in order to do that with spinner and trackball, I need Retroarch to kick out the rom.cfg files per game so that I can edit them manually to include my trackball and/or spinner on those particular games (it WAS outputting cfg files, that but then I messed with the Retroarch settings and now I can't be sure).
I've run into some odd behaviors and will track them all here because I'm betting that they are connected. I am also wondering if I'm having a permissions issue on some files or folders? I have re-flashed from the latest RetroPie 4.8 image twice, although I used the same external HDD that I had previously been using, with the roms and the scraped data; perhaps I needed to let the Pi rebuild its own version of that retropie-mount folder? At any rate here are the main errors/issues I'm having:- this error usually appears when quitting Emulation Station on the command line before the stats and prompt:
lv10: Error finding/creating FileData for /home/pi/RetroPie/roms/arcade/mame2003-plus", skipping.
- when at the command line, my keyboard was going inactive! I would have a browser window open on another computer to try and find the right command, I would turn around to the Pi after only a minute or two to try and type a command and my keyboard wouldn't be working. I would have to unplug and replug it into the USB port. Odd!
- I tried using fsck
sudo fsck -fy /dev/mmcblk0p1
to make sure there isn't some corrupt bits, and sure enough it found some, but interestingly it keeps finding this same error and fixing it even though I've backed up the system and restored to a completely different SD card: "0x25: Dirty bit is set. Fs was not properly unmounted and some data may be corrupt. Automatically removing dirty bit. Performing changes." - From Mame2003-Plus core in Retroarch settings > Configuration File >"Save Current Configuration" causes the error: Failed saving config to "/opt/retropie/configs/arcade/retroarch.cfg". I looked and that config file only has the following in it:
# Settings made here will only override settings in the global retroarch.cfg if placed above the #include line input_remapping_directory = "/opt/retropie/configs/arcade/" #include "/opt/retropie/configs/all/retroarch.cfg"
My setup is below:
Pi Model 4
Power Supply used: USB-B to USB-C 5v 2a (ordered the PiHut 3a USB-C power supply)
RetroPie Version Used: 4.8
Built From: Pre made SD Image on RetroPie website (I also ordered a new 128GB SD card)
USB Devices connected (and I have the mouse and event indexes noted):- One 4-port USB3 hub - plugged into Pi USB port
- Seagate 1TB portable HDD - plugged into Pi USB port
- HID 1241:1122 (RetroArcade.us trackball) - plugged into Pi USB port
- HP Keyboard - plugged into hub
- Ultimarc LED Controller - plugged into hub
- Ultimarc SpinTrak (Spinner) - plugged into hub
- Ultimarc UltraStik - plugged into hub
NVIDIA Controller v01.04 - was plugged into hub but recently added via bluetooth.After re-flashing I haven't added this back to the system. I wanted to get the minimum working right first.
Controller used: Ultimarc UltraStik, with 8 buttons connected directly to it in USB "input mode".
Error messages received: See above
Verbose log (if relevant): please assist me in creating/finding log and I'll export to pastebin.
THANKS!! -
- this error was always but now is intermittent: "error saving to /home/pi/RetroPie/roms/arcade/mame2003-plus/" (I'll correct this next time I see it pop up if that's the incorrect path but I know it was pointing to mame2003-plus.
A verbose log would be useful to diagnose that.
- when at the command line, my keyboard was going inactive! I would have a browser window open on another computer to try and find the right command, I would turn around to the Pi after only a minute or two to try and type a command and my keyboard wouldn't be working. I would have to unplug and replug it into the USB port. Odd!
With the amount of USB devices plugged in, there may be an issue with devices disconnecting. The USB ports on the Pi can only output a maximum of 1.2A combined, so I'd advise to use a powered USB HUB for any power hungry devices - like a HDD.
From Mame2003-Plus core in Retroarch settings > Configuration File >"Save Current Configuration" causes the error: Failed saving config to "/opt/retropie/configs/arcade/retroarch.cfg". I looked and that config file only has the following in it:
Input settings are not saved to RetroArch's configuration file. If you wish to configure the controller/other inputs on a per-game basis, save a core input remap from the Controls menu - see https://retropie.org.uk/docs/RetroArch-Configuration/#core-input-remapping. Don't save the entire config, it's no use.
The
.cfg
not saving error may be a bug in RetroArch, try to update RetroPie-Setup and then the packages to the latest version, in this order. -
@mitu said in errors saving config in retroarch, needing help with settings:
- this error was always but now is intermittent: "error saving to /home/pi/RetroPie/roms/arcade/mame2003-plus/" (I'll correct this next time I see it pop up if that's the incorrect path but I know it was pointing to mame2003-plus.
A verbose log would be useful to diagnose that.
In the docs, "the Runcommand launch menu presents the option to Launch with verbose logging. This outputs more information to the log file found in /dev/shm/runcommand.log " - that doesn't explain where this option is set in order to turn ON the option when one does NOT find the log file mentioned in that location, as is my case. Also "These options are saved in /opt/retropie/configs/all/runcommand.cfg" - but I looked at that file using nano and there was no option to turn on or off the runcommand.log file.
- when at the command line, my keyboard was going inactive! I would have a browser window open on another computer to try and find the right command, I would turn around to the Pi after only a minute or two to try and type a command and my keyboard wouldn't be working. I would have to unplug and replug it into the USB port. Odd!
With the amount of USB devices plugged in, there may be an issue with devices disconnecting. The USB ports on the Pi can only output a maximum of 1.2A combined, so I'd advise to use a powered USB HUB for any power hungry devices - like a HDD.
Indeed, I failed to mention that the 4-port USB hub is powered (via 5v 3a AC adaptor). I also removed a second 4-port powered USB hub (exact same make/model) from the setup in order to minimize the cause of these oddities.
BUT you have a great point that the external HDD could be drawing too much from the onboard USB ports. I'm usually not in the habit to plug external storage into a powered hub only because when it comes to data (vs. controllers and such) it's one more thing that could get unplugged by accident but it's definitely worth a shot to move that HDD to the powered hub instead.From Mame2003-Plus core in Retroarch settings > Configuration File >"Save Current Configuration" causes the error: Failed saving config to "/opt/retropie/configs/arcade/retroarch.cfg". I looked and that config file only has the following in it:
Input settings are not saved to RetroArch's configuration file. If you wish to configure the controller/other inputs on a per-game basis, save a core input remap from the Controls menu - see https://retropie.org.uk/docs/RetroArch-Configuration/#core-input-remapping. Don't save the entire config, it's no use.
The
.cfg
not saving error may be a bug in RetroArch, try to update RetroPie-Setup and then the packages to the latest version, in this order.Thanks for your help - I'll do the core input remap - and could you let me know why I can't find that log file?
-
@hoeveler said in errors saving config in retroarch, needing help with settings:
and could you let me know why I can't find that log file?
The log file is in
/dev/shm
, but it only shows up after you're running a game and it's always overwritten by the current running game. There is no - permanent - option to enable this, you can only toggle verbose logging fromruncommand
launch menu. Note that you'll need SSH to see this file, since it's not shared via file shares.
You can also copy the file (from the command line) to one of the shared folders so you don't have to enable SSH to access it:cp /dev/shm/runcommand.log $HOME/RetroPie/roms/
-
@mitu AHHH... I re-read that runcommand page and it finally clicked where that menu comes up. I know it's all very necessary, but for the n00b it's an endless barrage of menus from multiple sources (ES, RetroPie, Raspi-config, MAME, runcommand, core, retroarch...!). Although in part because of my issues with inputs, I wasn't ever seeing the runcommand launch menu when I hit keys... which also could have been related to this USB keyboard disconnecting.
-
@mitu Here is the runcommand.log file contents:
https://pastebin.com/HnhQ0Y9Z -
OK, I see the save errors in the log, but unfortunately there's no indication of the cause. I can't reproduce the issue - if I save manually the configuration or enable 'Save Config on Exit' from the menu (not recommended), the configuration is saved successfully:
.... [INFO] [Playlist]: Loading favorites file: "/opt/retropie/configs/arcade/content_favorites.lpl". [libretro INFO] [MAME 2003+] Preparing emulated CPUs for execution. [INFO] [RCHEEVOS]: mitu logged in successfully [INFO] [RCHEEVOS]: Game could not be identified [INFO] [Environ]: SET_GEOMETRY. [INFO] [KMS]: New FB: 1280x1024 (stride: 5120). [INFO] [KMS]: New FB: 1280x1024 (stride: 5120). [INFO] [Config]: Saved new config to "/opt/retropie/configs/arcade/retroarch.cfg". [INFO] [Config]: Saved new config to "/opt/retropie/configs/arcade/retroarch.cfg". [INFO] [Config]: Saved new config to "/opt/retropie/configs/arcade/retroarch.cfg". [INFO] [Core]: Content ran for a total of: 00 hours, 00 minutes, 08 seconds. [INFO] [Core]: Unloading game.. [INFO] [Core]: Unloading core..
For some reason the save message is logged 3 times (!).
I'd check the permissions on the folder - all
configs
files and folders should be owned by the installation user (pi
on a Raspberry Pi). -
@mitu Hi, it's possible it logged that error 3 times because I was trying again so I could write down the exact path in the error message. Interestingly, I went into the Retroarch GUI from the Retropie menu in ES, then went to Main Menu > Configuration File, then "Reset to Defaults", and then "Save Current Configuration" and it WORKED, no error, saved to "/opt/retropie/configs/all/retroarch.cfg"
Then I went to Settings > User Interface and changed the menu to xmb (SOOO much easier to read and navigate!) and then saved the configuration again. Now I'm not getting the saving config errors.
But... I know I can look this up but I don't want to screw anything up by using the wrong command... could you please post the command-line commands I can run (chmod?) to correct the config files and folders recursively? Thanks! -
I don't recommend the 'save config on exit' option nor the reset to defaults, since some settings are not applicable to each system, but if you're a previous RetroArch user, that may work for you.
But... I know I can look this up but I don't want to screw anything up by using the wrong command... could you please post the command-line commands I can run (chmod?) to correct the config files and folders recursively? Thanks!
You can run
chown -R pi:pi /opt/retropie/configs
and it will change the owner of any file/folder to thepi
user. -
@mitu Thanks again - can you recommend a walkthrough of the settings in Retroarch as it pertains to a RetroPie setup? It's very hard to find good tutorials, either video or text. Lots of info but all of it very scattered, hard to follow and hard to find specific to RetroPie and RaspPi.
-
@mitu said
You can run
chown -R pi:pi /opt/retropie/configs
and it will change the owner of any file/folder to thepi
user.that worked with the exception of two errors:
chown: changing ownership of '/opt/retropie/configs/all/attractmode/attract.cfg.bak': Operation not permitted chown: changing ownership of '/opt/retropie/configs/all/emulationstation/es_systems.cfg': Operation not permitted
(so I used
sudo su
and it worked. Thenreboot
and no more usingsu
! LOL) -
@hoeveler have you seen the official docs? https://retropie.org.uk/docs/RetroArch-Configuration/
these are really the only recommended guides. appreciate they may be complex and hard to follow, but it’s a complex and hard to follow system :) i would again really recommend not using the retroarch menu to reset settings or save over the configs as the hierarchy quickly breaks down. follow only the instructions on that link (though i fancy it may be too late)
-
This post is deleted! -
@dankcushions Yes, I have read and re-read the docs several times, but there's nothing there that walks through the Retroarch MENUS, plain and simple.
Again, all I really wanted to do was to follow the docs to get my trackball and spinner working for specific games. I feel like the docs take an "all or nothing" approach to adding spinner and trackball support via mouse input. It doesn't really detail very well how to add it PER ROM.
Where it talks about the:
3 main ways to configure input for RetroArch:
Autoconfigurations - made in EmulationStation
(this won't work because it's not part of this "retropad" concept)
Hardcoded Configurations - made by editing retroarch.cfg file(s)
(this won't work because it takes the "all or nothing" approach mentioned above)
Core Input Remapping - an easy way to do specific control configurations for specific cores, made in the RetroArch RGUI
(and here is where I find myself, desparately trying to re-find the place where you can save out a rom.cfg file but getting warned because I'm treading too deep into Retroarch menus)
SOMEWHERE buried deep within the docs is a couple lines about how to save out and edit the config PER ROM. I feel like I read it once and now can't find it again. This really shouldn't be this hard, and I would argue that ES really needs to just add an option to add the spinner and the trackball in the inputs there to make it JUST as easy as the gamepads and joysticks and buttons are. -
@hoeveler said in errors saving config in retroarch, needing help with settings:
@dankcushions Yes, I have read and re-read the docs several times, but there's nothing there that walks through the Retroarch MENUS, plain and simple.
there’s sections to walk through the retroarch menu in the above doc, where appropriate, but note that for the retropie config hierarchy to maintain integrity it’s not always possible to do it via retroarch menus.
Again, all I really wanted to do was to follow the docs to get my trackball and spinner working for specific games. I feel like the docs take an "all or nothing" approach to adding spinner and trackball support via mouse input. It doesn't really detail very well how to add it PER ROM.
i don’t use a spinner/trackball but i presume to add it to a particular rom you would follow the guide here, but when it refers to updating cfg files, you’d instead create and update the per game rom cfg as per here - just add the relevant line(s) to that. also note that when the spinners doc talks about setting core options it links to here where it links to the core options doc which explains how to set them per rom/game
This really shouldn't be this hard
if you can think of a better way to document please update the docs :)
-
@dankcushions Thanks for the help. I forgot that the docs are in github, so I think I will throw my hat in the ring to writeup a step-by-step guide specifically for lr-mame2003 / lr-mame2003-plus. My problem is simply because of my own ignorance, I'm wading through a bunch of information about capabilities and code examples from 4-5 different sections of the docs, spread out over 3-4 different cores, but as a new user it's hard to understand exactly HOW to do it.
Another part of my confusion has been the mental model of how everything works together. With so many layers to how inputs go through the system (Pi > ES > Retroarch > MAME), and because the menus in Retroarch look a lot like the menus in MAME, at first I was having a hard time knowing where I was. -
@hoeveler said in errors saving config in retroarch, needing help with settings:
that worked with the exception of two errors:
...Not sure how permissions got changed there, on Linux (RetroPie included) you should not use
sudo
/su
/ theroot
account except for system related functions. The excessive use ofsudo
can break permissions and will cause - sometimes subtle - issues. If something doesn't work, magically usingsudo
is not a solution - most likely you'll end up with garbled permissions and errors caused by it.For normal RetroPie operations (editing/adding config files for games, adding new games, copying/removing saves, etc.) you don't need any special permissions.
Thanks again - can you recommend a walkthrough of the settings in Retroarch as it pertains to a RetroPie setup?
What is particular to RetroPie are 2 main things:
-
the config hierarchy explained in the RetroArch controller page. If you're just looking to change the input configuration though, you can safely use the core remaps directly from the Controls menu' and you don't have to edit any configuration files.
-
the Configuration Editor that can be used to change a few RetroArch parameters globally or per-system. This includes the menu driver (interface) - you can switch here from the RetroPie default to
xmb
or the more modernozone
UI.
Other than that, the complexity comes mainly from RetroArch's own plethora of knobs and options. My advice would be (adding to @dankcushions's post):
-
don't enable Save on Exit, but instead save a conf override for the game / core / folder. What works for one system/game may not work for the other.
-
For the input settings - use the RetroArch's menus to change it using the Controls menu, test it and then save a remap (again, for core/game/folder). Input settings regarding the controller are not saved to the configuration file.
-
Shaders have their own configuration menu, with separate saving options (they're not saved by saving the configuration file).
-
if you need to change something globally and that option it's not part of the Configuration Editor, then start RetroArch from the RetroPie system and do the changes, this will be applied globally to all systems and cores. Options related to RetroAchievements, Netplay, Notifications, etc.
-
-
@mitu Well, I definitely learn things by breaking things, which is why I love the Pi - I can learn and learn and then re-flash if I get into too much trouble.
Which brings me to my next question - given all that I've learned recently about the right way to do things, but also knowing that this time around I didn't just delete config files at random but have tried to be very careful in what I'm editing - should I (for the 3rd time) reflash retropie to the defaults and start all over again? I mean... things are working fine now with the exception of thelv10: Error finding/creating FileData for "/home/pi/RetroPie/roms/arcade/mame2003-plus", skipping.
that we never quite fixed. -
@hoeveler said in errors saving config in retroarch, needing help with settings:
I mean... things are working fine now with the exception of the lv10: Error finding/creating FileData for "/home/pi/RetroPie/roms/arcade/mame2003-plus", skipping. that we never quite fixed.
Is this another permission issue ? Does that folder exist and it's accessible by the
pi
user ? -
@mitu I tried the same pi user chmod command on that but it didn't make the error go away.
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.