Puesto al día el 31 de agosto de 2025.

instalación de la versión 37 2023/06/15
las instrucciones para instalar batocera en una raspberry pi 3 se encuentran en la «installation guide» de la wiki de batocera.linux: se trata, en suma, de descargar la imagen de la raspberry pi 3 B/B+ para grabarla en una tarjeta SD mediante raspberry pi imager.
instalación de raspberry pi imager
sudo snap install rpi-imager
rpi-imager
una vez abierta la aplicación, basta con seleccionar el archivo de la imagen de batocera y la tarjeta SD de destino:
Operating System > Choose OS > Use custom > batocera-bcm2837-37-20230615.img.gz
concluida la operación de write
, ya se puede introducir la tarjeta SD en la raspberry pi 3 porque batocera.linux ya se ha instalado.
configuración
terminal local
es posible abrir una sesión nueva mediante teclado, en cualquier momento, con Ctrl + Alt +F5
:
READY TO RETRO
BATOCERA login: root
Password: linux[root@BATOCERA /userdata/system]#
la contraseña por defecto es «linux». si ésta no permite el acceso, si se ha cambiado de algún modo, se puede consultar la nueva contraseña en el menú de batocera:
menú principal > ajustes del sistema > seguridad > contraseña root
cambio de la contraseña de root
menú principal > ajustes del sistema > seguridad > reforzar seguridad
al reforzar la seguridad, se genera una nueva contraseña de forma aleatoria (ésta se puede consultar justo debajo, en este mismo punto del menú). si se quiere cambiar la contraseña por cualquier otra, puede emplearse el siguiente comando:
«Changing the default root (ssh) password» en Batocera documentation
batocera-config setRootPassword batoceraroot
batocera-config getRootPassword
batoceraroot
en ambos casos, la nueva contraseña se aplica después de reiniciar el sistema operativo (v41).
red inalámbrica
menú principal > configuración de red > activar wifi
menú principal > configuración de red > SSID o nombre de la wifi
menú principal > configuración de red > clave wifi
red inalámbrica oculta
si la red inalámbrica a la que batocera trata de conectarse está oculta, hay que añadir hidden
a los parámetros wifi.ssid
y wifi.key
de batocera.conf:
nano /userdata/system/batocera.conf
## Wi-Fi SSID (string)
wifi.hidden.ssid=red-inalambrica-oculta
## Wi-Fi KEY (string)
## Escape your special chars (# ; $) with a backslash. eg. $ becomes \$
wifi.hidden.key=contrasenna_oculta
ssh: acceso como root mediante secure shell
se puede activar este servicio desde el terminal local:
nano /userdata/system/batocera.conf
# Disable SSH, see https://wiki.batocera.org/access_the_batocera_via_ssh
«SSH/Xterm and Common Commands» en Batocera documentation
system.ssh.enabled=1
1 para activarlo, 0 para desactivarlo.
luego, desde un terminal externo, se puede acceder a batocera con la siguiente instrucción:
ssh root@192.168.1.7
root@192.168.1.7's password:
Disk format: ext4
Temperature: 54°C
Architecture: bcm2837
Model: Raspberry_Pi_3_Model_B_Rev_1_2
System: Linux 6.1.25-v8
Available memory: 609/910 MB
Cpu number: 4
Cpu max frequency: 1200 MHz
OS version: 37c 2023/06/15 02:49
[root@BATOCERA /userdata/system]#
acceso sin contraseña
chown root:root / /userdata/ /userdata/system/
chmod 755 / /userdata/ /userdata/system/
mkdir -p ~/.ssh
touch ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chown root:root ~/.ssh/*
chmod 600 ~/.ssh/authorized_keys
una vez hecho esto, dado que el comando ssh-copy-id
no funciona con batocera, hay que copiar la clave pública del cliente al final del archivo authorized_keys de manera manual.
en este punto, si batocera sigue solicitando la contraseña, basta con generar una clave privada al uso:
dropbearkey -t rsa -f ~/.ssh/BATOCERA
Generating 2048 bit rsa key, this may take a while…
Public key portion is:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCw1PwMBsjcDETpGaXKvPiFmAsTtoY1JKrbKPvgSONOeoxolBfOLvOzxPON4ZjlQINfUqAUHDAYQSbcRcT42YE8nNmq2xjphMadygpLXKuHpLmSAIE2YWfpkqVK5Nb+UNe62Ex+Y90qHKbANJkmpbLtKU33MQqENeeQftvA8VsWNOh6LhF9SgOLD7cOz5TpfzdqSWHqvnKeIt6Fg34caoRiVEncT4r6Aj+P5BRG4wetSSuyo8wo0mO183gZ8AN4PWda3ObhV0DjenVMMlT4+nz2X4Mv9NqKpubBHuYvrKMqHpnlzDQI0VUwCezeyuZovd4IZgrYA9j7v+htVRIBKtOb root@BATOCERA
Fingerprint: SHA256:j1bzdJI/1ez2vzoiyU/dOf2dpFt4u8Y4StqGAPBNMA4
la clave pública debe copiarse en el archivo ~/.ssh/BATOCERA.pub: en el ejemplo, la clave pública ó public key portion comienza con ssh-rsa y acaba con root@BATOCERA.
idioma y distribución del teclado
main menu > system settings > language (region) > español
nano /userdata/system/batocera.conf
## System language
system.language=es_ES
## Set the keyboard layout (fr,de,us,es).
system.kblayout=es
carpeta bin en home
mkdir -p ~/bin
nano .profile
## HOME/bin ##
if [ -d "$HOME/bin" ] ;
then
export PATH="$HOME/bin:$PATH"
fi«bin: archivos ejecutables en home» en cuaderno.poderna.com
bash
salida de vídeo
menú principal > ajustes de juego > ajustes globales por defecto > modo de vídeo > 1360x768 59.799 Hz
menú principal > ajustes de sistema > hardware >
- salida de vídeo > HDMI-A-1
- modo de vídeo > 1360x768 59.799 Hz
salida de audio
menú principal > ajustes del sistema > salida de audio > VC4-HDMIDIGITAL STEREO (HDMI)
menú principal > ajustes del sistema > perfil de audio > VC4-HDMI DIGITAL STEREO (HDMI) OUTPUT
si este cambio no persiste después de reiniciar el sistema, puede fijarse vía consola en el archivo de configuración de batocera:
es stop
nano batocera.conf
audio.device=alsa_output.platform-3f902000.hdmi.hdmi-stereo
las opciones de audio disponibles se obtienen mediante batocera-audio
:
batocera-audio list
auto auto
alsa_output.platform-bcm2835_audio.stereo-fallback bcm2835 Headphones Stereo
alsa_output.platform-3f902000.hdmi.hdmi-stereo vc4-hdmi Digital Stereo (HDMI)
tema
menú principal > ajustes de interfaz de usuario > tema activo > ES-THEME-ARCADEPLANET
si un tema no aparece en la lista de temas activos, probablemente sea posible instalarlo desde el siguiente punto:
menú principal > actualizaciones y descargas > temas > disponible > Arcadeplanet
salvapantallas
menú principal > ajustas de interfaz de usuario > ajustes de salvapantallas >
- iniciar salvapantallas tras > 3m
- tipo de salvapantallas > vídeo aleatorio
- detener música en salvapantallas > sí
orden de los sistemas
menú principal > ajustes de las listas de juegos > ordenar sistemas > alfabéticamente
en la versión 40 de batocera (al menos), esta opción está disponible en este otro punto:
menú principal > ajustes de colecciones de juegos > opciones > ordenar sistemas > alfabéticamente
retroachievements
menú principal > ajustes de juegos > ajustes de retroachievements
- Ajustes
- retrologros (retroachievements) > sí
- usuario > ernesto
- contraseña > *****
- Opciones
- modo hardcore > no
- clasificaciones > sí
- modo detallado > sí
- rich presence (info y estados en tiempo real) > sí
- modo encore > no
- captura de pantalla automática > no
- indicadores de desafío > sí
- sonido de desbloqueo > ninguno
- mostrar entrada en el menú principal > sí
más información al respecto en recalbox en raspberry pi 3.
retroflag
Here are some commercial power switches/commercial cases with power switches that are currently supported. These offer a real power cut, that means the Raspberry is really switched off. Usually these small power devices are plugged on top of the Raspberry using it's 40 Pin header. For further install instruction use the links provided.
«Add Powerdevices and Buttons to your Raspberry Pi 1 - 5» en Batocera.linux Wiki.
nano /userdata/system/batocera.conf
## RETROFLAG -> http://www.retroflag.com -- note: enable UART in config.txt for LED action
system.power.switch=RETROFLAG
existe una otra vía, la oficial de retroflag:
nano /userdata/system/bin/batocera_sh
wget -O - "https://raw.githubusercontent.com/RetroFlag/retroflag-picase/master/batocera_install.sh" | bash
chmod +x /userdata/system/bin/batocera_sh
«instrucciones para batocera» en NESPi Case PLUS del cuaderno.poderna.com.
batocera_sh
roms
compatibilidad: emuladores disponibles según plataforma
existe una tabla de compatibilidad entre sistemas (emuladores o cores) y la plataforma donde se instala batocera (en este caso, una raspberry pi 3):
luego, si alguna plataforma no aparece en la instalación de batocera, probablemente se deba a que no está disponible porque no es compatible con la plataforma donde se opera:
All available cores are always installed by Batocera; you never need to “add” cores. There is a compatibility chart on the main website.
«Games/systems not appearing/advanced system options are missing» en System Troubleshooting
versión de MAME
si, por ejemplo, se dispone de la romset 0.139, puede definirse qué versión de MAME se ejecuta por defecto:
menú principal > ajustes de juegos > ajustes de sistema > configuración avanzada por sistema > MAME > emulador > LIBRETRO: MAME0139
ubicación de las roms
cada sistema de juego tiene su propia carpeta dentro del directorio roms:
almacenamiento interno
/userdata/roms/
copia de archivos vía rsync
rsync -avzP ~/roms/megadrive/ root@192.168.1.7:/userdata/roms/megadrive/
de este modo, se copian todos los contenidos de ~/roms/megadrive a la carpeta /userdata/roms/megadrive de batocera.
colecciones
las colecciones permiten agrupar juegos de distintos sistemas en un mismo punto.
colecciones editables
batocera v37 > menú principal > ajustes de las listas de juegos > crear una colección editable > contra
batocera v40 > menú principal > ajustes de colecciones de juegos > crear colección editable > contra
«contra», en este ejemplo, es el nombre de la colección que se crea. hecho esto, en la lista de sistemas (el menú principal de batocera), debería aparecer la opción de sistema colecciones y, en su interior, la nueva colección contra.
los juegos de la colección se añaden uno a uno:
nes > botón B presionado varios segundos sobre el juego super c > añadir a colección personalizada > contra
o, por ejemplo,
snes > botón B presionado varios segundos sobre el juego super probotector > añadir a colección personalizada > contra
etcétera.
colecciones dinámicas
Dynamic collections on Batocera are the same: you start by creating rules to set up your dynamic collections (match a string in the game name, a gaming system, a genre…) and when you add new ROMs matching those rules, they show up automatically in your dynamic collection.
«Game Collection Settings» en Batocera.linux Wiki.
hay dos manera de generar colecciones dinámicas:
batocera v40 > menú principal > ajustes de colecciones de juegos > crear colección dinámica >
- Introduzca un nombre > Castlevania
- Buscar juegos > castlevania
de esta manera, las colecciones se agrupan dentro de un mismo sistema llamado «colecciones».
batocera v40 > menú principal > ajustes de colecciones de juegos > crear colección dinámica > crear a partir de un tema > CASTLEVANIA
de este otro modo, la colección aparece como un sistema independiente:

scraper
menú principal > escrapear (obtener info de juegos) >
- Origen
- obtener de > SCREENSCRAPER
- Ajustes de escrapeo >
- imagen principal > PANTALLA DE TÍTULO
- tipo de caja > CAJA 2D
- tipo de logo > MARQUESINA
- región preferida > EUROPE
- sobrescribir nombres > sí
- sobrescribir descripciones > sí
- sobrescribir medios > sí
- Obtener >
- valoración de la comunidad > sí
- vídeo > sí
- fanart > no
- bisel (16:9) > sí
- trasera de la caja > sí
- mapa > sí
- manual de instrucciones > sí
- ajustes de padtokey (mando a teclas) > no
manuales
Scrape Manual: Batocera 5.27+ offers you the ability to show game manuals (by hitting [Select] on a game) if you scraped the manuals.
«menu_tree» en la Batocera documentation
atajos
SELECT
(durante el juego) = muestra el manual del juego (si lo hay).
captura de pantalla
batocera-screenshot: Saves a screenshot of the current screen in the /userdata/screenshots folder.
«Miscellaneous Scripts» en SSH/Xterm and Common Commands de la Batocera.linux Wiki.
batocera-screenshot
ls /userdata/screenshots/
screenshot-2025.08.31-15h16.59.png
screenshot-2025.08.31-15h21.14.png
problemario
tamaño incorrecto de la tarjeta SD
menú principal > ajustes del sistema > información
en este punto, puede consultarse el espacio que ocupan tanto el usuario como el sistema en el total de la tarjeta SD (o lo que corresponda). si el tamaño total que se muestra es incorrecto, puede deberse a que batocera no haya ampliado la partición del usuario durante el proceso de instalación como prometía:
df -h
/dev/mmcblk0p1 4,0G 1,5G 2,5G 38% /boot
mount -o remount,rw /dev/mmcblk0p1
nano /boot/batocera-boot.conf
## Automatically resize the userdata partition if unallocated space is present on the drive. Disables itself once completed successfully.
autoresize=true
hay que borrar la almohadilla (#) que hay delante de autoresize
, guardar los cambios en el archivo y reiniciar el sistema: batocera, entonces, debería encargarse de ocupar todo el espacio de la tarjeta SD.