If you have questions or feedback feel free to drop me a comment.
Your guide has helped me a whole lot in configuring my Shield device.This is almost exactly what I was looking for. Thank you very much! I’m very grateful for the big amount of work you must have done to put all this together. It would have taken me years to find all this out by myself – I would have certainly given up or settled for a far less elegant solution.
I encountered one problem while going through this guide: I couldn’t find the folder where RetroArch stores its cores. I was looking for it because I
(a) wanted to remove some of the cores (like Sinclair, Amstrad) and
(b) added some other cores to RetroArch (Gameboy, Gameboy Advance) and needed the exact core names in order to add them to Advanced Launcher. In the end I succeeded with (b) by simply guessing, but it took me some time to figure it out.
Again, thanks for this thorough guide, it is very much appreciated 🙂 Greetings from Germany.
Wow, all I was looking for was a guide to how to configure the shield controllers buttons and your single website solved every single problem I’ve been having with my setup. Great job. This needs to get linked on the Kodi wiki.
Thank you for this walkthrough, it’s very informative. However, I do have one question for you. In your SPMC setup I see that you were able to add the various Nvidia gaming launchers as well as things like Netflix, Hulu+, and Youtube. This is pretty much what I want to do. What I’m exactly wanting to do is basically have only android apps launch in my setup of SPMC.
So for example under my “TV” category I would like to have subcategories or options that have Plex, Netflix, Hulu, DirecTV App, and then maybe another sub category that displays all of the individual channel apps like HGTV, HBO NOW, History, etc.
Under “Music” I would have a link to Google Music, Pandora, Spotify, etc.
Under games, I would like an option for Shield Games, Shield Streaming, Regular Android Games, and then Emulators.
Is this possible?
Thank you for your help in advance!
Yes, if you add the Android apps to your favorites in SPMC then you can add them as main menus or submenu items. If you watch the video in the “Customize main menu” section, you’ll see an example of how to do this about 2 minutes into the video.
Hello i followed the complete tutorial but when i’m on spmc and open up the emulators folder and select arcade it says no content found. I put my zip files on the fba folder. The other problem i’m having is that i can access the games from retroarch directly but when i load any game from street fighter 2 to marvel vs capcom it runs so slow and sluggish.
Did you remember to scan for Arcade games in Advanced Launcher? It’s shown in the video in the guide for setting up Arcade games.
If you did try to scan but it said that it did not find any games, then make sure that you’ve placed the games in the correct folder – shown on the screenshot in the Arcade guide.
Is there a reason why my games run sluggish?
nvm got it working. When you exit the game does it always go back to retroarch app by default though?
You can change the settings in Retroarch if you want it to exit completely.
Would that be like in your video. When i see you exit on your video from a rom it automatically goes back to the kodi interface. Mine exits the game and goes into the retroarch app. Then i have to exit it and go back into spmc.
Yes, you go into the RetroArch GUI then to:
Settings -> Input -> Input Hotkey Binds
Then change the button for “Quit Retroarch” to the button you to use to exit.
Great tutorial. How could i make it so i could save the games to my micro sd card rather then the Shield’s hard drive? My Shield has is the 16gb version and i’m running out of space. So i would like to run them off my micro sd card if possible. I looked in the Retroarch settings but i can’t find where i can point it to the sd card.
It should work if you just change the settings in Advanced Launcher to scan for games in folders on the sd card instead of the folders I suggest in the guide.
It should not be necessary to change settings within RetroArch for this to work.
Would i have to edit the launcher xml?
Yes, or you can do it in Advanced Launcher by selecting the system you want to edit the roms folder for and:
– Select Edit Launcher
– Select Advanced Modifications
– Change Items Path
It might be easiest to just edit the launcher.xml directly, as you mentioned.
Ok let me look around a bit and see. I essentially would like to map it to a roms folder on my server that way i could use it on all of my shields. But not sure exactly how i would map that.
So i kinda made a wrong keybind on my control and now i can quit the program and go back to kodi but forgot to map the one for allowing me to go back to the settings. Is there a file i can access and edit it without using the program? Because if i try to go into retroarch it just closes out. Before i had a key that would take me to the settings. And i don’t want to reinstall everything again.
You can edit the configuration manually outside Retroarch.
The configuration file is called retroarch.cfg and is stored here:
Try setting these value:
input_exit_emulator_btn = “nul”
input_menu_toggle_btn = “nul”
After this you should be able to go into the Retroarch menu by holding the NVIDIA button when a game is running.
What button do you use or suggest to quit out of the game?
At the moment I don’t use a direct quit button, I go through the menu and then select quit from there.
But you could do the following:
1. Go into the Retroarch settings and under “Input” set “Menu Toggle Gamepad Combo” to “L3 + R3”
2. Afterwards set the NVIDIA button to quit game
Now you can press the two thumbsticks at the same time to enter the Retroarch settings, and you can press the NVIDIA button to quit games.
Do you use shaders at all? And i know you said you currently don’t scrape the artwork but would that be hard to do?
I don’t use shaders myself.
You can enable artwork scraping per emulator in Advanced Launcher. I didn’t find it very reliable, though, so I don’t use it myself.
Where and how could I get shades?
You download shaders from within the Retroarch GUI using the updater function.
I recommend that you check out this forum if you have questions or need more info about shaders:
Thanks for the excellent guide! It’s taking some time, but I think I have everything set and sort of working. Two quick questions: (1) Is it possible to remap the buttons for each emulator? I looked through the retroarch settings but couldn’t find the option. (2) Mupen64plus recognizes zip files, but doesn’t recognize .n64 files. Any idea why? I loaded some zips but they seemed to run slowly, so I’d like to try to run the .n64 files directly. Thanks!!
1) Yes, there are a number of ways you can set up emulator specific settings. If you start a game and then go into the Retroarch GUI –> Core Options then you should be able to set up input configuration for just that emulator and save it.
Or you can go into Configuration in the Retroarch GUI and activate “Configuration Per-Core”.
2) Mupen64plus should recognize .n64 files
Do you mean that they are not being detected in Advanced Launcher when you scan for new roms in SPMC? If that is what you mean, then I think it might be because I haven’t added that file extension in the Nintendo 64 launcher in there.
If you go into the settings for Nintendo 64 in Advanced Launcher and select:
Edit Launcher –> Advanced Modifications –> Modify Items Extension
Then you can add the filetype n64 in there.
Thanks for the quick reply! I’ll try this out today.
I don’t see tutorials. There is no link in Libretto Cores page
That’s strange. Perhaps it’s a problem in the browser you are using? I just checked and it’s working fine for me. You should get a menu of cores shown when you move the mouse cursor to the “Libretro Cores” menu headline.
I plan on buying a Shield today and going through your setup. How exactly do you save your games when emulating them? In most emulators you can press F2 or F4 and it will save a snapshot of exactly where you are in the game at that moment, then you can load directly from there. Is there an ability to setup this command with a particular button press? Or can it be done by accessing a certain menu in-game. Thanks for all your work and your help!
Most of the emulators support both snapshots and also emulate the memory cards of the original machines so you can save using the original method as well (Playstation and N64, for example).
You can set up button shortcuts for saving and loading snapshots in the Retroarch GUI. You can also go into the Retroarch GUI while playing and select to save or load a snapshot from in there.
Note though, that some of the emulators do not support saving – it’s mostly the emulators that emulate computer systems, such the Amiga, C64 etc.
I got my shield up and running, it’s awesome, I appreciated everything you’ve done here. I do have one question though, I just cannot seem to figure out how to add an emulator with advanced launcher. I tried to go back in and find the launcher.xml file but the directory wasn’t there. Any chance of a new tutorial for how to do that? I just want to add the dolphin emulator for Wii/Gamecube. Thanks again for everything you’ve done!
Since Dolphin is not a Retroarch core, the command you need to setup in Advanced launcher for that emulator is a little different.
I’ll try to set it up over the weekend and provide some info on it.
From what I’ve heard, Dolphin does not run at 100% speed in many games, so I’m not sure how well it will work though 🙂
I looked into Dolphin this weekend, but I had some issues configuring it, as they seem to have created a new user interface for it and not yet made it possible to configure the gamepads.
I looked into the command that is needed to start a game directly from Advanced Launcher, but it seems that when doing this there is a side effect causing Dolphin to crash when you exit games, and it also seems to prevent you from entering the Dolphin GUI once the game is started.
I think your best bet for now would be to start Dolphin manually with the Dolphin GUI. You can create a shortcut to Dolphin from SPMC by making it a favorite and then adding it as a menu item like I show in one of the video guides on this site.
Hopefully Dolphin will be added as a core in Retroarch at some point, which will make things much easier to integrate.
Anthony again. I’ve got everything working and have been avoiding actual responsibilities just to play around with my new Shield. 🙂
For some reason the N64 emulator is the only emulator that doesn’t seem to work correctly. Each game has major slowdown and whenever I try to quit the emultaor it crashes retroarch and forces me to restart the Shield. Any tips on how to fix this? Maybe I need to reinstall something or replace a file/core?
I’m also interested in adding additional emulators, specifically GBA and MAME. Is this easily done within Retroarch? I installed the version of Retroarch you provided on this website and I don’t want to do anything to screw it up.
I appreciate any guidance you may provide. Thanks again for your time!
Regarding the problems with N64:
When you’ve started a game are you able to go into the Retroarch GUI and into the core settings?
If you are, then try checking if CPU Core is set to “dynamic_recompiler” (it should be). Also check if GFX Plugin and RSP Plugin are set to “auto” (they should be).
Also try going into the Retroarch video settings and set “Threaded video” to off, if it isn’t already.
Did any of those things make a difference?
Regarding other emulators:
You should be able to download other cores using the built in core updater function in the retroarch GUI. I’m not sure which of the cores are best suited for the Shield so you will need to do some experimenting.
Since I wrote the guide I have come up with new way to set things up using the latest version of Retroarch and just downloading my custom cores from within the Retroarch GUI. This makes it a little easier to combine my settings with the latest versions of Retroarch.
I will probably update my guide in the next couple of weeks when I have some spare time.
Thanks for the reply. Unfortunately, Retroarch crashes once I start an N64 game and try to go into the Retroarch GUI. I can enter the Retroarch GUI from every emulator except for the N64.
Correction: It crashes when I try to enter the Retroarch GUI. I can start a game, but they all have a decent amount of slowdown.
I am having the same issue with the N64 Emulator. You said you found a better way to load everything with updated RetroArch? How can I scrap my current setup and do it the new way you have discovered?
Thank you so much for this guide, it really showed me how to work with the system and set it up for my needs. One thing I can’t figure out, and maybe I missed it – is there a way through Kodi to put the Shield to sleep? Something like the option in the original Shield menu and also a sleep after idle function? I can’t get the sleep to work in Kodi. Thanks!
I have not been able to find a way to make the Shield sleep through SPMC/Kodi. Personally I don’t use the sleep function of the Shield as it has been known to cause issues when using a 4K display and it can also cause problems with refresh rate switching.
It seems that if the Shield wakes up before your display is ready then the Shield might not detect the available resolutions and refresh rates properly and default to 1080p with only 60Hz as refresh rate option.
How unfortunate but as I had suspected. Thank you very much for your response, take care.
Amazing stuff, Allan! Thanks so much for taking the time. I couldn’t see any info on what you are doing for the Live TV part of your setup. Any chance of some guides on that?
A few things i’ve found as i’ve proceeded through your instructions:
1. Is it necessary to SSH into the Shield? I find that by allowing network debugging, it appears as a shared device on the Mac, which I can just copy files to. Do you do this for security reasons?
2. I couldn’t change my launcher to SPMC on Mac without beginning the terminal command with ./adb
3. I notice you added power related options to your menu. I’ve found that those options either fail to appear in Aeon Nox, or when they do, they’re not actually capable of powering down the Shield as a whole from within SPMC. They simply restart SPMC. Perhaps there is a fix on the way for this from the developer. If you have a way around this, i’d love to hear it.
Thanks again for such fantastic guides. All I need now is to work out an ideal Live TV/DVR solution for the Shield with a handsome EPG.
1. It’s not necessary to SSH into the Shield. Since I created the guides a function has been added to the Shield that allows access to folders over the network. This might be what you are experiencing when you are able to browse it from the Mac.
2. Yes, the guides were mostly written with Windows in mind, so if you use ADB on a Mac or Linux, then you will need to add ./ to run the files 🙂
3. I added the restart function to the menu because it’s sometimes nice to be able to restart SPMC when you’ve added settings directly to the config files and you need to reload SPMC to make the configuration take effect. Since I wrote the guides I’ve rooted my Shield, and this actually enables the possibility to use the power functions from within SPMC.
About the Live TV function that I use. I’m using one of the DVR solutions that are compatible with the PVR addons built into SPMC. Specifically this is my setup:
1. I’m using an HDHomerun connected to my cable tv to tune into my DVB-C cable tv channels and act as a server for video streams on my local network
2. I’m using DVBLink server installed on my Synology NAS box to control which channel the HDHomerun is tuned in on and grab the video stream over the network. Also the DVBLink server downloads EPG information for each channel.
3. In SPMC I’m using the DVBLink PVR addon to connect to the DVBLink server which enables the EPG in SPMC and allows me to watch and record live tv.
Sounds fantastic. Thanks for the info!
I don’t have a shield but own an r box 2gb 4k android box. I’m guessing this all works the same.
I have installed retroarch and retroarch puae core. But now what?
I see you talking about spmc & advance launcher. Do these two need to be installed on my android box before i starts you superb guide?
The guide I’ve written is centered around using Advanced Launcher in SPMC to start the games, so if you don’t have those installed there will be parts of the guides that will not make sense.
Having said that, you can choose to start the games directly in RetroArch without using SPMC as a frontend. In RetroArch you would then have to load the Amiga core using the “Load core” function. And then load the game using the “Load content” function.
You will still need to create config files like I’ve written in the guide and those config files will be the content files you launch in RetroArch.
I hope this makes sense – if not, then I recommend that you just follow the entire guide and install SPMC + Advanced Launcher 🙂
I have done everything in your guide. But i do not have a games tab in my spmc?
I got the games tab now.
When i launch rtype gane. It goes to the puae main menu and i cant move the white arrow icon?
Have you made sure that:
1. You followed the part of the guide where you place a kickstart rom with the correct file name in the retroarch “system” folder?
2. You are using the retroarch config files that I provided in the guides?
I’m having the same issue and can confirm that I have taken the same steps. Any suggestions appreciated. Cheers!
It also pulls in two files when I scan for R-Type. One with the regular name, and one with an underscore before it. Not sure if that helps!
About the two files and one with underscore problem:
It will scan for all files with .uae extension. It sounds like you might have a temporary file or something called “_R-Type.uae” (maybe hidden?) from when you were editing the file. Try to check for that.
About the problem with starting games:
Could you reply back with the contents of the .uae file you have created so I can see the settings?
Sure. Can’t see any problematic hidden files, as you can see in these screenshots:
Config folder: https://files.app.net/hnlfqPd7Z.png
ADF folder: https://files.app.net/hnlfb9I09.png
Contents of the R-Type uae file:
Thanks for checking into this!
FYI, I only have the kick31.rom in my system folder. I assume there are no other necessary files? You have quite a few in your system folder.
I haven’t seen that problem before.
I suspect that it is related to a problem with either:
a) some of the files not being where they should be
or b) a problem with permissions on the files
The Amiga core can be a bit picky with the file permissions compared to the other cores. This is especially the case when using hardfiles, but it might also be a problem with adf files, I’m not sure.
Could you try to transfer the files to the SHIELD using the method I described in the guide (the SSH solution) ?
Using the SSH solution and FileZilla, for example, you are also able to verify that the path structures where the files are stored match the file paths in the uae config file.
Thanks for that. Going back to SSH turned up the hidden files causing the _R-Type duplication, so that’s fixed. Still frozen on the UAE menu with no control though. Have to crash out of it to get back to SPMC. All files appeared to be owned by my SSH user name and have similar permissions. Weird!
Will definitely try reuploding everything via SSH from scratch next.
Retransferring everything via SSH didn’t help, unfortunately. Interestingly, when I restart SPMC it automatically tries to load the broken UAE emulator.
Yes i have kickstarts in correct folder and adfs. I have edited the rtype.uae gile to reflect same paths of adf and kickstart location.
Emulator always goes into puae and i cant control mouse i am forced to quite
I can send you photos of cfgs but i dont have your email?
Double checked the paths. Changes in the adf and kick path.
Now i load rtype from spmc it goes black for 10 seconds then quits back to spmc?
Also i get a cannot create backup file from the launcher.xml file when i import the rtype.uae
Remember i am running tgis on an R box plus 4k with 2gb ram not a shield.
Could you try to open the .uae file directly in Retroarch by first loading the UAE core and then loading the .uae file as content?
What happens when you do it like that ?
When I do that it goes black screen for about 6 seconds then quits back to android dashboard?
1. Which Kickstart version are you using?
2. What is the exact file size of the kickstart rom
3. Where did you get it from?
kick31.rom 512 KB (524,288 bytes)
Kickstart works perfectly when using uae4arm on android.
any idea why?
You wrote in your first post that you had installed Retroarch and the PUAE core. Do you mean that you downloaded the official version of Retroarch and not the version that I provided in the guide?
The version I’ve compiled already contains the UAE core from the start, and it should not be updated inside Retroarch.
How did you install Retroarch and have you updated the core in the core updater? (you shouldn’t)
I downloaded it off the official website, and updated via the online updater. I will look into the links you provided and do it that way.
There will be a big wait, as my Android box has stopped working, stuck at the R Box Plus 4K Logo & Do not know how to reset the box.
FYI, when I had this problem, I downloaded Allan’s version from this website, so i’m not sure it makes a difference.
Ill give it another try, when i get my android box returned and buy a new one. thx
I loaded your cfg file (retroarch.cfg) and it freezes Retroarch. I don’t know why. I downloaded the latest version from the PlayStore.
I’m really lost. Your config file causes it to freeze (as I previously mentioned) so I simply used the default cfg file and I put your retroarch-core-options.cfg in the proper directory.
I wanted to load Sonic CD for Sega CD, but I don’t want to do it all through Kodi.
I added the bios’s to the proper system directory (the bios’s work perfectly with MD.emu app), I put the Sonic CD .bin and .cue file in the proper directory.
Then I went to Online Updater > Core Updater > Sega MS/GG/MD/CD (Genesis Plus GX) and it downloaded the .zip
Then I went to Load Content > Select File And Detect Core and chose the .bin file for Sonic CD. Retroarch just closes and nothing happens.
I was curious where find your version of retroarch for android and is it possible 2 still try 2 find the old mess core that was separate from mame?
I’ve some troubles while configuring Kodi/SPMC on my Nvidia Shield TV. All steps went nicely, though setting SPMC as default launcher wasn’t working for me. So I’m stuck their.
First I’ve got the message from adb that there were multiple devices connected. Indeed, my PC (emulator) and the Nvidia Shield TV. So running the command ‘adb shell pm hide com.google.android.leanbacklauncher’ directly wasn’t working. After some reading regarding ‘adb’ I found a way to directly connect to my Nvidia Shield TV with the command ‘adb -s shell’. Server from ‘adb devices’. Also trying to execute ‘adb -s
shell pm hide com.google.android.leanbacklauncher’ as well as first connecting to the shell and executing ‘pm hide com.google.android.leanbacklauncher’ gave the same result ‘Error: java.lang.SecurityException: Neither user 2000 nor current process has an
What am I doing wrong? Should the Nvidia Shield TV be rooted first?
hello I like to keep my retroarch updated and I like the buttons as they are so I use the official retroarch but I was wondering if you provide your Frodo Core for it??
C64 was one of the consoles I wanted supported !!!
the other I was waiting for was Amiga CD32 🙁
Hi buddy I was wondering if there was a way to get the hatari config file?…the link on the site is not working, it says 404 error no file found
Hi, I fixed the link now 🙂
Hello Allan Lindqvist thank you very much for this blog helped me a lot to configure my Nvidia shield tv as a multimedia center. You did a great job for sure that we would all like to continue to teach you how to get the most out of this shield tv.
A greeting and thanks from the heart
Sorry for my english I’m from Spain.
Im trying to use this guide to set up my shield tv and I cant even seem to get a controller to work with it. Retroarch just tells me the controller isnt configured? im not using the original controller it broke but the controller i am using is compatible with every other emulator ive tried (epsxe snes9x)
any help would be appreciated.
The thing is, that RetroArch contains configuration files for each gamepad it is compatible with. It sounds like your controller might not have such a configuration file.
What controller are you using?
Hi! I’ve installed retroarch as well as SPMC, I have used the same file structure as you did and I’m able to find games within SPMC. When I try to launch games from SPMC, screen flickers and then nothing happens. On the other hand if I start them from retroarch, everything’s fine, do you know what could I’ve done wrong? I’m using the launchers.xml file you provided.
Thanks for the guide. I have an issue that Whenever I try to load a snes or turbografx 16 game it blinks a black screen and returns to the games menu. NES seem to load fine, I have the syscard3.pce file in the system folder. Does this seem like a rom issue? If so, can anyone recommend working Ramsey’s for each emulator?
That was supposed to say “working romsets for each emulator”
Hi I have followed your guide and have great success with all cores except for the commodore 64 as I can not seem to find the core.
Do you know where I can find the core for download ?
Edit I see you use your own version of retroarch.
The version of Retroarch that I used when I was writing the tutorial is a bit outdated now. You can actually download the C64 core using the core updater in whatever newer version of Retroarch you might be using now.
You just need to do the following:
1. Open your your retroarch.cfg file in a text editor:
2. Find this line in the configuration file:
core_updater_buildbot_url = “http://buildbot.libretro.com/nightly/android/latest/armeabi-v7a/”
3. Edit the line so it says:
core_updater_buildbot_url = “http://lindqvist.synology.me/shield/”
4. Now you can start Retroarch and use the core downloader to download the cores I use
5. When done, change the configuration setting in retroarch.cfg back to:
core_updater_buildbot_url = “http://buildbot.libretro.com/nightly/android/latest/armeabi-v7a/”
You must be logged in to post a comment.