How to Set Up Batocera Linux — Complete Emulation OS Guide 2026
I want to set up Batocera Linux on a spare PC (or Raspberry Pi) as a dedicated emulation machine. How do I download and flash it to a USB drive, add my ROMs, place BIOS files so consoles like PS1/PS2/Switch actually launch, and configure my controller — and what are the most common issues to watch out for on first boot?
Solutions
solution #1621
What Batocera is: Batocera.linux is NOT an emulator — it's a complete bootable operating system built around EmulationStation as its front-end, with RetroArch and standalone emulators (PCSX2, Dolphin, RPCS3, Eden) running under the hood. You flash it to a USB drive or SD card, boot into it, and get a controller-driven emulation station with no Windows setup, no individual emulator downloads, and a unified save system. It's the right choice for a dedicated emulation machine (living-room PC, spare box, Pi 4/5). If you want to add emulation to an existing Windows or Mac gaming PC, install individual emulators there instead.
Compatible hardware:
- x86_64 PC (recommended for full coverage): Any PC from the last decade works. For PS3/Xbox 360 emulation you need at least an Intel Core i5-8th gen / Ryzen 5 2600 + discrete GPU. For Switch (Eden) you need at least an i5-10th gen / Ryzen 5 3600 + GTX 1660. AMD GPUs consistently work better than Nvidia on Batocera (Mesa/RADV is open-source and ships out of the box).
- Raspberry Pi 4/5: Pi 4 handles everything up through PS1, N64, PSP, Dreamcast well. Pi 5 extends coverage to lightweight PS2 and DS. Neither handles PS3, Xbox 360, or Switch.
Step 1 — Download and Flash:
- Go to batocera.linux → Download. Choose your architecture: x86_64 for a PC, Raspberry Pi 4 or Pi 5 for Pi. Download the
.img.gzfile. - Flash with Balena Etcher (free, Windows/Mac/Linux — handles
.img.gzdirectly, no extraction needed). Target: a USB drive (32 GB recommended) or microSD for Pi. - Run Etcher as administrator if it doesn't detect your drive. Verify you have the right drive selected — Etcher erases everything on the target.
Step 2 — Boot and First-Run Config:
- PC: enter BIOS/UEFI (Del, F2, or F12 on boot), set USB drive as first boot device, save and reboot.
- Raspberry Pi: insert the microSD, connect HDMI, connect a USB keyboard, power on. Pi 4/5 boot from SD by default.
First boot takes 2–3 minutes while Batocera expands its storage partition. You land in EmulationStation with a controller configuration prompt — connect your controller and map all buttons accurately. This mapping feeds every emulator, so take 60 seconds to do it right.
After controller config, press Start → Main Menu to set language, timezone, and Wi-Fi. Enable "Show Only Systems With Games" under UI Settings to hide the 70+ empty system folders until your library is populated.
solution #1622
Adding ROMs — three methods:
Method A — Network Share (recommended for large collections): while Batocera is running, it broadcasts a Samba share. From Windows, open File Explorer → type \\BATOCERA in the address bar. The roms/ folder mirrors the expected directory structure — drag your ROM files into the correct system subfolder:
roms/snes/— SNES.sfc/.smc|roms/psx/— PS1.bin+.cueor.chdroms/ps2/— PS2.isoor.chd|roms/gc/— GameCube |roms/wii/— Wiiroms/nds/— Nintendo DS |roms/switch/— Switch.xci/.nsproms/mame/— MAME.zipsets
After copying, press Start → Game Settings → Update Game List to scan for new ROMs.
Method B — USB Drive: place a USB drive (FAT32 or exFAT) with a roms/ folder at root level into Batocera — it auto-imports. Good for Pi users without Ethernet.
Method C — SSH: enable SSH under System Settings → Services, then copy files via scp or SFTP. Default root password is linux — change it after enabling SSH.
BIOS Files (critical): Batocera consolidates all BIOS into one flat directory: SHARE/bios/. Place your BIOS files there. Key requirements:
- PS1:
scph5501.bin(USA),scph5502.bin(EU),scph5500.bin(JP) - PS2: any regional PS2 BIOS file (e.g.
SCPH-70012.bin); required, no HLE - Dreamcast:
dc_boot.bin+dc_flash.bin— Flycast requires both - Nintendo DS:
bios7.bin,bios9.bin,firmware.bin— melonDS requires all three - Switch:
prod.keys,title.keys, and firmware folder — place inSHARE/bios/switch/ - PSP: none — PPSSPP runs without a BIOS
- GBA:
gba_bios.binoptional but improves boot compatibility
Verify your BIOS files: Main Menu → System Settings → Information → Check Missing BIOSes — lists every emulator's expected file and automatically MD5-verifies what you placed.
solution #1623
USB Controllers: Xbox, PlayStation, and generic HID controllers are plug-and-play. If you plugged one in after first boot, re-run controller mapping: Main Menu → Controller Settings → Configure a Controller.
Bluetooth Controllers: Main Menu → Controller Settings → Pair a Bluetooth Controller. Put your controller in pairing mode:
- Xbox: hold Xbox button + sync button until LED blinks
- DualSense: hold PS + Create button until light bar pulses
- 8BitDo: set the mode switch to "D" (DirectInput) or "X" (XInput) — "S" (Switch mode) may not be recognized
Unified hotkeys (Select as the hotkey button, configured automatically by Batocera):
- Select + Start → exit game, return to EmulationStation
- Select + R1 → save state (slot 1) | Select + L1 → load state (slot 1)
- Select + Right/Left → next/previous save slot | Select + X → screenshot
- Select + B → open RetroArch menu (for in-game settings)
Switching emulator cores per system or per game: Batocera chooses a default core for each system. To override:
- For a whole system: press Select on any game → Advanced System Options → Emulator
- For one game: highlight the game → Select → Advanced Game Options → Emulator
Key overrides worth making:
- PS2: switch from PCSX2 libretro → PCSX2 standalone (higher accuracy + game patches)
- GameCube/Wii: switch from Dolphin libretro → Dolphin standalone (better performance + widescreen patches)
- N64: try ParaLLEl N64 (Vulkan) over Mupen64Plus-Next if you want more accuracy
solution #1624
Global Video Settings (Main Menu → Game Settings → Video Options):
- Integer Scaling: ON — prevents blurry non-integer upscaling on pixel-art games
- Smooth Video: OFF for 2D/pixel art; optional for 3D games
- Shaders: apply CRT-Royale or CRT-Easymode per system via Game Settings → System Advanced Settings → Shaders. Apply to NES/SNES; leave N64/PS1 on nearest-neighbor or xBR.
Per-game resolution overrides (PCSX2 up to 8× native, Dolphin standalone up to 8× internal) are available via the emulator's own GUI while a game is running (Hotkey + B to open the RetroArch menu).
Updating Batocera (safe — never touches your ROMs or saves):
- GUI: Main Menu → System Settings → System Update
- Terminal:
batocera-upgrade(Main Menu → System Settings → System Information → Launch Terminal)
Save files are stored in SHARE/saves/ with per-system subdirectories; save states go to SHARE/saves/sstates/. Both survive Batocera updates. Back up by copying SHARE/saves/ via the network share.
Common issues:
- Game doesn't launch — "BIOS not found": missing or misnamed BIOS file → Check Missing BIOSes tool; rename to exactly the expected filename
- Black screen on launch (PS2/GameCube): BIOS present but standalone emulator not configured → switch core to PCSX2/Dolphin standalone (Select → Advanced Options → Emulator)
- No controller detected in-game: controller was plugged in after Batocera booted → unplug and re-plug, or remap in Controller Settings
- Bluetooth controller disconnects mid-game (Pi): USB power insufficient → use powered USB hub or switch to USB cable
- Screen overscan / image cut off on TV: disable overscan in TV settings; or set overscan offset in Batocera Video Settings
- ROM not appearing after copy: game list not refreshed → Main Menu → Game Settings → Update Game List
- MAME game won't launch: ROM set version mismatch → MAME ROMs must match the exact MAME version Batocera ships; check System Information for the version number
- PS3 game crashes / freezes: RPCS3 firmware missing → open RPCS3 menu → Install PS3 Firmware (PSP3UPDAT.PUP from Sony)
- Switch game won't launch: missing prod.keys or firmware → place
prod.keys,title.keys, and firmware folder inSHARE/bios/switch/
Comments (0)
Sign in to_leave_comment