Please do not post a support request without first reading and following the advice in

Network Speed

  • Not sure if a Raspberry Pi question, or RetroPie... trying to backup my roms and it's very slow.

    Basically, disabled WiFi and connected with a 3' ethernet cable because the router is right beside the RaspPi3. Router is 10/100/1000, and generally, when transferring files from my PC to HTPC, I'm getting 45-60MB/sec speed. Connected to RetroPie on my Win7 system, trying to copy folders over, I'm getting maybe 7MB/sec. Plus... I can't select the ROM folder and copy/paste, nor can I select numerous folders at once and copy/paste, it only allows me to copy/paste 1 folder at a time, at about 1/5th the speed I was expecting.

    Is it a case of the ethernet being able to handle higher speed, but the SD Card isn't? Though I have the Sandisk 64GB card with 48MB/sec speed... so would expected to see more than 7MB/sec.

    Any suggestions? I was hoping to just highlight all the folders, copy/paste to my PC's backup drive and just go to bed and let it run... even if 7MB/sec was as fast as I can get... but only allowing 1 folder at a time, is a bit strange. Can't even copy 2 at a time.

  • @THRobinson Well, the Pi3 has a 10/100 Ethernet port (via USB). The best connection at maximum theoretical throughput is obviously 100 megabits per second, but that ignores framing/packet overhead. Taking that into account, the best you could get from ANY system, (barring compression) is around 12 megabytes. You are getting 7, which by many accounts is pretty average. It's hard to say there is a big bottleneck, as it's not really running that slow. You certainly won't get 48 megabytes via ethernet, as the port won't let you get 1/4 that. Surely the Pi architecture and software plays a part. Running the Ethernet through USB cannot be the most efficient way to do it, but that's what we have.

    The one folder at a time issue sounds problematic. Have you tried another SD card or a fresh image?

  • @THRobinson your computer + HTPC are obviously both connecting at 1000 megabits (gigabit ethernet) but even they are only able to saturate the bandwidth up to about 50%. You are getting more efficiency than that from the Pi on 100 megabits, though obviously a magnitude slower.

  • Played a bit with it last night and it does allow more than 1 folder at a time, if small. If I click on a folder with say 5GB in it, even just 1 folder not multiples, it won't let me copy/paste.

    I did play with the RetroPie file manager and it allowed me to copy a 5GB to a USB stick, so will try tonight to hook up an external hard drive maybe. Though, I still think it will be a folder at a time, unless file manager allows me to click the ROM folder and copy it over. Hopefully that works.

  • @THRobinson You should get better throughput to an external drive as opposed to ethernet.

  • I have an old IDE/USB drive case and a small collection of old drives.... hopefully one big enough, a few 20GB but going to need an 80GB which I think I have.

    I have a much faster 2TB drive as well, but it's my main computer's backup drive and don't want to connect it in case I screw up and wipe something out.

    Sadly, biggest USB stick I have is 16GB, never needed anything bigger, until today. :D

    Hopefully it lets me simply copy/paste the entire ROM folder over. Save some time.

    Then wipe out the SD Card and stock official install of RetroPie again.

  • @THRobinson Definetely the way you should do it

  • On the regular image, I never really sorted out MAME...

    Would it make sense to copy the configs/bios folder over as well? then when done, copy the MAME folders back over and reboot and hopefully works?

    Upside I guess, if fails.... format and reimage takes only a short amount of time.

  • @THRobinson
    If you want to do a fresh install I would recommend this:

    There is a thread about backuping some folders. (I took the informations from there)
    I would suggest saving these folders:


    You can use this script to save the folders and contents on a usb drive:

    ##Change the numeral in "head -n -*" to however many backups are to be kept.
    foldername=$(date +%Y%m%d%H%M%S) && \
    mkdir -p /media/usb0/Backups/RetroPie/"$foldername" && \
    sudo cp -rfv \
    	/boot/config.txt \
    	/etc/fstab \
    	/etc/udev/rules.d \
    	/etc/rc.local \
    	/etc/samba/smb.conf \
    	/opt/retropie/configs \
    	/home/pi/.config \
    	/home/pi/.local \
    	/home/pi/.openMSX \
    	/home/pi/.q3a \
    	/home/pi/RetroPie \
    cd /media/usb0/Backups/RetroPie/ && \
    ls -1tr | head -n -2 | xargs -d '\n' rm -rfv --

    Credits for the script: @mediamogul (added /home/pi/RetroPie, that saves all roms as well)

    Hope that helps

  • I will give it a try... never seem to have much luck with the command window stuff, but often give it a try. :)

  • @THRobinson said in Network Speed:

    I will give it a try... never seem to have much luck with the command window stuff, but often give it a try. :)

    That's the spirit!

    The Pi is an educational device, after all. The whole purpose of its existence is to teach young people how to code, but the flexibility of the Pi is allowing many of us to relive our youth as well! RetroPie was never intended to be a turnkey solution to ALL retro gaming, but it obviously simplifies the process a LOT. Still, I find that the rewards of getting the Pi to do what I want include the experience and the education through tasks like this. When it is all said and done, you will have built something truly unique and to your specifications. You will also have the knowledge to expand your creation and to troubleshoot (and maybe, to help others).

    Another challenge with a pre-configured image--especially when it comes to MAME is that you just don't know what you have. If it isn't documented, you can't tell what version of ROMs are there, so even if you try to save them, do you really know what you have? The more you learn about MAME and romsets, the more you realize that a backup of MAME roms of unkown origin is really just a trial-and-error crapshoot when you are trying to make a specific emulator work.

  • @caver01 Agreed!
    After all the Raspberry Pi and things like RetroPie and Emulators are a good start to try and test stuff and obviously learning new skills and understanding the system behind it.

  • I know little about Pi, but already have a few projects I'm researching.

    Next project would be to replace my alarm clock with an alarm clock with audiophile quality sound for a headphone jack. I have sleep troubles, so often lay in bed for hours listening to music waiting to get tired. iR remote operated Hi-Def unit on the nightstand would be great.

    Found some good info online about parts of what I want, but still sorting out how to shove it all together. :D

    MAME wise, ya it's where I got stuck, with all the types/makes of MAME, wasn't having much luck getting games to start and just kinda left it. Had plenty of NES games to pass time with. But, I'd like to get everything up and running when I build the console... given all the work/cost involved be nice to get everything running. I still have to go through and weed out stuff that doesn't work, and sports games. No one in the house wants to play any games that are hockey, baseball, golf, basketball... if you count wrestling as a sport, then that's the only sport I'm keeping. :D

    Just want to free up a good sized chunk of space so I can add a few PSOne games like the Spyro series, and Medievil. Nieces/nephews loved those games, but the PSOne is dead and they all have Xboxes now.

    But again, eBay HK, so ETA is between 3-8 weeks, likely 8 if not lost in the post like often happens so, I have some time to work on the Pi portion and get it running.

  • @THRobinson MAME can be hard for everyone at first. I've been doing this for over a decade and a half and so have a lot of folks, so it is easy to forget what it was like back before you really had a good grasp of MAME.

    The basic idea is that each arcade emulator has different capabilities. MAME has always had the goal to archive video games through accurate emulation, regardless of playability/performance. That's why we are using lr-mame2003 by default, as this is the best compromise of performance and features. The newer MAME is, the more ROMs it supports, but also, the the ROMs themselves get better. Earlier versions may have skipped certain elements of the game hardware, taking shortcuts etc. to make them work, but as the emulator evolved, so did the capabilities to emulate, so new versions of ROMs had to be created. Therefore, the version of MAME you use has to be paired with a set of ROMs that correspond to it.

    Sure, some ROMs don't change from version to version of MAME, and it is possible to use a ROM from the wrong romset and it will still work--but this is a recipe for problems. The worst situation is having a ROM, not knowing what version it came from, and trying to run it on a known version of MAME. When it fails, you can't really blame the emulator, or your configuration, and if you cannot see an error log, you have no idea where to troubleshoot. It is always best to start with a known ROM version and for that version to the the CORRECT version for the MAME you are running.

    The docs here describe in detail the romsets each version of MAME requires. It is like going back in time, but that's what we need to get a playable game on our Pi. It is possible to convert from one ROMset to another using CLRMAMEPRO, but this is complicated. You need a whole set AND any changed items through the versions in order to build a complete conversion from one romset to another. The utility can also scan and verify ROMs for their contents, but for me, CLRMAMEPRO has always been a little mysterious, and I just don't have the patience for it.

    Finally, MAME roms are built with a hierarchy--some games are clones that are subordinate to "parent" roms. If you don't have the parent, you cannot play the clone. Depending on how the zip files are organized, sets can be made so each rom will work standalone, but this wastes a ton of disk space, so most sets "share" components and require parents to be present for certain versions to work. The clones are often regional variants, but can be different games that share elements, or bootlegs.

    FBA leverages the same kind of ROM files as MAME, same situation with versions, sets, etc. It is a lot to keep straight.

  • Well so far so good... hopefully keeps transferring, had a hiccup on a file and stopped running until clicked to skip file... USB drive enclosure and an old 120GB IDE HDD, USB2.0 but stuck transferring at a whopping 1.21Mb/sec. ETA is 11h, again, assuming it doesn't get stuck on a file again. :S

    EDIT - 9h later seems fine... had the below errors though that I'll play around with later.

    cannot chown target file "/media/usb0/BIO~stDatabase.xml"
    Operation not permitted (1)

    Cannot create target symlynk "/media/usb0/rom~/advmame/nvram"
    Operation not permitted (1)

    Not sure what "chown" means... that was in the BIOS folder. The 2nd error, actually had about 3 or 4 similar errors in the same folder, once skipped everything else went fine. Slow... but fine.

  • Backed up... must be a RaspPi thing. That USB External drive was running 1.21MB/s for 11h solid backing up the files.

    Same drive, cable etc... transferring files to my main PC, solid 15MB/sec for about 1h.

    So... not being able to copy/paste files over the network from the Pi to Win7... is that a Pi thing? Linux vs Windows? or what's the protocol... SSH? Samba? something like that?

    Initially I was hoping to take the ISO image, mount to a virtual drive and copy/paste from that, wouldn't open... mounted fine, but unable to read. So figured put the SD card into the reader and open that way, some stuff showed, some stuff didn't. Then tried over the network, but again, wouldn't let me copy/paste folders more than about 2gb. Finally used the File Manager on RetroPie.

    A learning experience for sure, though... not sure what I learned. Is it just because one system is Windows and the other isn't?

  • @THRobinson said in Network Speed:

    A learning experience for sure, though... not sure what I learned. Is it just because one system is Windows and the other isn't?

    No, not really...
    For transfering files though: You could use winSCP, it's a very good program and there were no problems so far

    @THRobinson said in Network Speed:

    take the ISO image, mount to a virtual drive and copy/paste from that

    That's probably not working because it is a bootable image and a virtual drive is, obviously, no raspberry pi

  • Well... all backed up with exception of a MAME subfolder. Tonight, format and reinstall the stock RetroPie image.

    Still having play issues with my PS3 controller, but I also noticed for some reason, when I turn on the Pi, even before I turn on the PS3 controller, it says 1 joystick detected. Turn on the PS3 and works fine, but maybe the MAME games see it as Player2 and that's why half the time it won't work?

    Really hoping none of these issues when I get the joysticks built. Speaking of which, the joystick/buttons/Zero Delay boards just shipped. Can start building when those arrive but until the rest of the eBay parts show, kinda stuck.

  • @THRobinson You can play with buttons by shorting pins if you have to.

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.