Quantcast
Channel: How To – Freedom Penguin
Viewing all articles
Browse latest Browse all 90

Recalbox Raspberry Pi Retro Gaming

$
0
0

recalboxI’ll be first to admit that I’ve been putting off setting up a Raspberry Pi for my wife to use for retro gaming. I knew there were a few games she missed but Mario Kart 64 was the big one. I’ll also be first to point out that setting up a RetroPi isn’t difficult with the correct setup guide. I will, however, point out that configuration can be time-consuming…unless you have all of your ducks in a row. This means you’re remembering to configure Bluetooth if you’re using Bluetooth controllers, you’ve verified you’re setup to add games wirelessly via your LAN and other minor considerations that are easy to overlook. Basically, you need to make sure your have all of your hardware handy and the ROMs ready to go.

Since everyone and their mother seems to flock to RetroPi, I decided to try something different called recalbox. It shares many of the same features as RetroPi and other solutions like it but I found recalbox to be a brain-dead simple way to get into retro gaming immediately. Note: RetroPi is a good option for those needing maximum customization.

Important: As cool as recalbox is, it has issues with its documentation. Recalbox.conf mentions “Network”, which should be “Wifi” (without quotes). This article will also help you overcome the known WiFi WPA bug using two methods instead of one, plus you’ll also learn how to get N64 games running as well.

Installation

This is the hard part – ready? Download, unzip to your micro SD card, boot/select/install/run. That’s all there is to it. Just select recalboxOS with your space key and install with the “letter i.”

In a perfect world, you just happen have some XBox360 controllers laying around. If you do, just plug and play! For those of us who don’t own console gaming rigs, I’ve had great success with Logitech Gamepad F310 controllers. I own two of them, with USB extension cables and while they’re unwieldy, they work really well.

I should point out that if you use the XBox360 controllers you won’t have to configure the controllers. Using the Logitech option means you will. This matters because not all of the button configurations will work as expected. Pressing down on the sticks for example, won’t take. Nor will one of the trigger buttons. Pressing either of these options simply skips that part of the configuration. Those hiccups aside, I would recommend the controllers “overall” as a low-cost solution.

First impressions

I’ve seen video of EmulationStation in the past, but man, I had no idea how slick it looked in real life! Even though the games provided by default aren’t anything to get excited about, having ROMs for each game platform category allows the EmulationStation UI to show off what is available. In order for EmulationStation to show off what is available. In order for EmulationStation to display each category/platform, at least one ROM matching that platform must be present in the corresponding directory.

Once you get a handle on the controls and tour the various emulators installed, the next logical step was to add my ROMs to my recalbox installation.

Getting WiFi running and adding ROMs

One of the things I discovered early on was what a pain it was to get connected to the WiFi. Having used vanilla Raspbian previously, I knew the dongle I had connected was compatible. The obvious fix was to edit:

/recalbox.conf

located in:

/recalbox/share/system

How you decide to connect is up to you. Some people have found it’s easiest to just pop out the micro SD card and browse to the conf file from their main PC using a card reader. Being too lazy myself to pull my case apart just to retrieve my micro SD card, I instead opted to do the following:

From the EmulationStation screen where I select the games to play, I grabbed my iPazzPort keyboard/touchpad and got myself into a command prompt by first pressing F4, then ALT+F2.

If you’re looking at this on a large TV, the next step is going to be really small and located in the upper left corner. Your default login is as root and looks like this:

User: root

Password: recalboxroot

From here, I’m able to browse to my conf file using nano.

nano /recalbox/share/system/recalbox.conf

With both the nano and micro SD card to PC method, the text you’re going to be looking for is WiFi (case sensitive).

# ------------ B - Wifi ------------ #
## Set direclty your WiFi key and ssid here
;WiFi_ssid=new ssid
;WiFi_key=new key

Change new ssid and new key to match your own WiFi settings. Save and then reboot. Should this not work for some reason, you may have to resort to removing the card as described above and browsing to your /etc/wpa_supplicant/wpa_supplicant.conf for manual editing. If the former didn’t work, this solution will work so long as you follow the right format.

Here’s mine for example:

ctrl_interface=/var/run/wpa_supplicant
ap_scan=1

network={
ssid="SecretAgentPoliceVanDeathStarNaughtyPlace"
psk="WouldntYouLikeToKnow"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP
auth_alg=OPEN
}

 

Save this and reboot. You’ll connect to your wireless network if you’re using WPA (WiFi Protected Access) for router WiFi security and your router is handing out IP addresses correctly.

Now that we have the recalbox connected, let’s add those ROMs! From your file manager, browse to your Samba shares:

smb://recalbox/

One of the directories you’ll see listed is going to be named RECALBOX. Click into this directory and you’ll be presented with a list of directories that reflect various emulators and functions. Everything from XBMC to System files are listed here. Some of these directories will be easily recognizable while others are going to look rather strange. The easiest way to navigate this is to click into each directory and read the “readme”files provided. For example, famicomdisksystem represents the Japanese NES system while mastersystem represents the Sega Master System.

To make ROMs readily accessible to your Pi, simply drag and drop them into the correct directory representing the correct system emulator.

Pro-tip: After adding ROMs to their corresponding directories, make sure to reboot your Pi. This will ensure the games appear. Also, not all games are going to run perfectly. Atari, NES, SNES, Sega Master System and other older systems will run fine. PSX (Playstation 1), GameGear and others are hit and miss. Also, some emulators will require specific BIOS to work. Easiest way to know for sure: when you see a game goto black screen/start and stop when executed. For the sake of simplicity, older system based emulators will generally be free of this. Some hand-held system emulators can be an exception. The RetroPi wiki has a fairly decent roundup that you can browse through.

N64 won’t work out of the box!

Depending on bug fixes and emulator release cycles, this issue may be fixed by the time you read this. However as things stand now, it’s still a problem. With my current recalbox installation, trying to play N64 games leads to a whole lot of “NOPE” and that can be pretty frustrating.

Before I provide you with my N64 fix, understand the following: this will NOT work on all games. Some N64 games simply won’t work at all. And even with those that do, some understandable audio stuttering can still take place. The two games I’ve had success with are Mario Kart 64 and Super Mario 64. To date, I’ve not had any success with games like Paper Mario. Then again, I haven’t looked too deeply into what’s causing the problem, either.

To get your N64 emulator working with Mario Kart 64 and Super Mario 64, do the following. First, SSH into your recalbox (so you can do this from your desk). Then do the following:

cd ../recalbox/scripts
cp emulatorlauncher.sh emulatorlauncher.bk

(This ensures even if you do something foolish, you can restore your launcher easily)

nano emulatorlauncher.sh

Look for the very first instance of:

if [[ "$emulator" == "n64" ]]; then

Immediately below or beside this, you’ll see:

/recalbox/scripts/runcommand.sh 4

You need to change the 4 into a 2. Once you’ve done this, do a Ctrl+X and then press Y.

Important:DO NOT use nano’s search function to locate this entry. I’ve tried this and found it actually made changes to the file for some reason – phantom characters or something similar. Just scroll and look for the first instance of code as stated above.

Once you’ve done this, simply reboot the Pi from SSH to make sure the changes take effect.

reboot

Hit the enter key and you’re all set!

SSH settings and security considerations

By default, recalbox has its users running as root and with a password SSH connection. Secure, it’s not. The default login (mentioned previously) is:

User: root
Password: recalboxroot

As I’ve talked about in the past, setting up SSH keys on a Linux system needs to rely on SSH keys and not merely a password. Use the aforementioned link as your guide for correcting this issue. By using authorized keys, you’ll make your recalbox installation much more secure.

Should you choose to retain a password protected SSH setup instead, then at the very least make sure you’re not leaving the WiFi dongle plugged in. I generally don’t recommend security by obscurity, but this will reduce the “attack window” that brute force attacks have to work with.

Closing thoughts about recalbox

As happy with recalbox as I am, my wife swears by it. Each day she returns home and immediately boots up the Pi. She insists that the two of us playing Mario Kart 64 in battle mode does wonders for our marriage. Personally, I believe she’s just looking for an excuse to fling turtles in my general direction.

Joke aside, recalbox is great and it comes highly recommended. Despite its attempt at a fool-proof setup however, there are tweaks that need to be made in order to have an outstanding gaming experience. If you have the ROMs, free time and an interest in retro-gaming, recalbox is a heck of a platform.


FTC required disclosure of Material Connection: The Amazon product links in the post above are “affiliate links.” This means if you click on the link and purchase the item, I will receive an affiliate commission. Regardless, I only recommend products or services I use personally and believe will add value to my readers.

The post Recalbox Raspberry Pi Retro Gaming appeared first on Freedom Penguin.


Viewing all articles
Browse latest Browse all 90

Latest Images

Trending Articles



Latest Images