Linux Mini Guía Retropie + chiches varios | Raspberry Pi 2

hpf

Jugador casual
Miembro del Equipo
MOD
Se incorporó
7 Mayo 2011
Mensajes
360
(En progreso...)

Estimados Capa9 Users, hoy me sentí inspirado y me dispuse a crear una mini guía para quienes tienen sus Raspberry Pi 2, y son nostálgicos por los juegos clásicos, como yo. Aun no tengo fotos porque lo hice desde la comodidad de una VPN, pero con lo detallado basta y sobra. De todas formas, ¿quién necesita fotos? :risas ... se irán agregando con el tiempo libre.

Con ustedes, la mini-guía.

¿Qué es Raspberry Pi?

Como muchos (o pocos) sabrán, una Raspberry Pi es un mini ordenador -del tamaño de una tarjeta de crédito-, de coste reducido y creado para fomentar la educación en las escuelas, sobretodo en las de bajos recursos.

A día de hoy pueden ser opcionales la cantidad gigante de dispositivos que adaptar, como también los proyectos que abarcan todo tipo de disciplinas.

Utiliza paquetería de Debian compilada para arquitectura ARM, por lo tanto los alcances y servicios que podemos levantar estarán limitados casi siempre a nuestra imaginación. Puede servir como servidor de infraestructura, otorgando DNS, DHCP, FTP, NFS, SAMBA(CIFS), APACHE, MYSQL, etc.

Hay distintos modelos de Raspberry; siendo la versión 2 la más potente hasta el momento, cuenta con:
  • SoC Broadcom BCM2836
  • Procesador ARM11 (v7) Cortex-A7 de 4 núcleos (900 Mhz).
  • GPU Broadcom VideoCore IV 250 Mhz (OpenGL ES 2.0).
  • 4 USB 2.0
  • HDMI 1.4 1920x1200
  • MicroSD
  • Adaptador Ethernet de 10/100 Mbps
  • Consumo de 5v, 900mA, conector USB 2.0 Micro Jack Tipo B. Yo utilizo el cargador de un Galaxy antiguo.

Raspberry_Pi_-_Model_A.jpg


Hay muchas diferencias en cuanto a rendimiento, por citar un ejemplo, emular ROMs de PSX o incluso SNES se torna pesado y tedioso (injugable) para la Raspberry pi 1; sin embargo, en la nueva versión, corre como la seda.

Para más información: https://www.raspberrypi.org

¿Qué es Retropie?

Es un proyecto que busca unificar una gran cantidad de emuladores en la Raspberry Pi, y dar vida a un pequeño sistema de emulación, con la mayor parte de las opciones predefinidas y listas para usar. Se puede colaborar libremente en el proyecto, como también obtener respuestas a dudas en la página de desarrollo.

Para más información: http://blog.petrockblock.com/retropie/

retropieprojectlogofinish.jpg

¿Cuáles son los requisitos de esta guía?

Lo que utilizaremos, y el objetivo, será tener una pequeña “consola” de emulación, con la facilidad de interacción y algunos servicios de red para facilitar, por ejemplo, la carga de ROMs en el sistema.

  • Raspberry Pi 2
  • Fuente de poder (Un cargador de teléfono celular, de 900 mA mínimo)
  • MicroSD de mínimo 4GB. Uso una Sandisk Clase 10 aunque Clase 4 también funciona.
  • Cable HDMI + Televisor
  • Cable Ethernet o adaptador inalámbrico USB + Router casero (Para la salida a internet)
  • Control/Joystick USB. Utilizaré un adaptador de Xbox 360 inalámbrico + 1 control.
  • Teclado USB para las primeras operaciones.
  • Ganas de divertirse y aprender

INSTALACIÓN DEL SISTEMA

1) Bajar y grabar la ISO.

1.1 Podemos descargar la ISO en la siguiente dirección, directamente por http o mediante torrent:

http://blog.petrockblock.com/retrop.../retropie-sd-card-image-for-raspberry-pi-2-2/

A día de hoy es la 3.1 la última. Con una conexión a internet, después podrán actualizar su distribución sin la necesidad de reinstalar todo nuevamente.

2) Grabar la ISO a una tarjeta microSD

Una vez descargado el archivo .zip (en caso de http), descomprimimos la imagen en un directorio y conectamos la tarjeta de memoria, la misma contendrá todo el sistema operativo. Es bueno mencionar que para su Raspberry Pi, actúa como disco duro, por lo tanto pueden tener distintas imagenes en diferentes microSDs, por ende, intercambiar Sistemas Operativos sólo apagando el sistema y cambiando la memoria.


2.1 En Linux:

Una vez inserta la tarjeta microSD, damos un vistazo a los dispositivos de nodo y buscamos nuestra tarjeta.

root@capa9:/# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

sda 8:0 0 465G 0 disk

├─sda1 8:1 0 285M 0 part /boot

├─sda2 8:2 0 1K 0 part

├─sda3 8:3 0 458.3G 0 part /

└─sda4 8:4 0 7.4G 0 part [SWAP]

sdb 8:16 0 14.9G 0 disk

└─sdb1 8:17 0 14.9G 0 part


*Los datos son inventados pero verán algo parecido

Ahora sabemos que el dispositivo /dev/sdb corresponde a la tarjetita.

Procedemos a desmontar con:

root@capa9:/# umount /dev/sdb1

Ahora toca grabar la imagen en el disco:

root@capa9:/# dd bs=4M if=/home/miusuario/Downloads/retropie-v3.1beta2-rpi1.img of=/dev/sdb

root@capa9:/# sync


*Mucho cuidado con el comando dd, tengan total certeza de las rutas, un pequeño error y su sistema puede quedar destrozado. Ni el autor de la guía, ni Capa9 son responsables de que algo malo pase. Ante la duda, pregunte a google o en el foro.

Esperan un momento mientras todo se complete, cuando vuelva el prompt esperando por sus todopoderosos comandos, pueden remover la tarjeta.


2.2 En Windows:

Primero que todo, bajan SDFormatter desde la siguiente dirección:

https://www.sdcard.org/downloads/formatter_4/eula_windows/index.html

*Aceptan los términos

Abren el programa y seleccionan el Disco (Drive E:, por ejemplo). Cualquier Volume Label: RPI (ejemplo). En las opciones de formato marquen formato rápido, y apaguen(off) el ajuste de tamaño de formato. Formatean su tarjeta.

Ahora bajan el siguiente software:

http://sourceforge.net/projects/win32diskimager/

Este realizará la magia. Seleccionan la imagen mediante el símbolo de directorio (azul), en Device escogen el dispositivo, y presionan “Write”.

Toman un té con limón mientras la tarjeta se copia.

3) Configuraciones base: filesystem, red, daemons.

3.1 Encendiendo todo

Una vez inserta la memoria en la Raspberry, prendemos el televisor o monitor, conectamos video, periféricos (teclado usb, gamepad), y por último nuestra fuente de energía. Ojo con tener el televisor prendido antes de iniciar la Raspberry, hay veces en que si nuestro mini pc no detecta un dispositivo encendido en el video out, simplemente no dará señal al televisor.

SysVinit nos va mostrando rápidamente cada demonio/servicio siendo activado, ya que esta versión está basada en “wheezy”, y systemd es implementado a partir de “jessie”. Lo ideal es tener nuestro cable ethernet conectado, y obtener dirección IP dinámica mediante DHCP.

Nos aparecerá una pantalla que muestra la imagen de “RETROPIE”, un pequeño slogan y luego, antes de comenzar el sistema, comenzará a cargar la “Emulation Station” (Un Front End que actúa como nuestro entorno de escritorio).

La pantalla de bienvenida nos dirá si se detecta un joystick, y pasaremos a configurar nuestro dispositivo principal con el cual nos moveremos dentro del entorno. Damos “OK” para finalizar. Estaremos en el front-end.

3.2Primeras configuraciones

Una vez en el entorno, presionamos F4 y pasaremos a la línea de comando, ahí veremos algo como esto:

30myb0g.jpg


The RetroPie Project, http://www.petrockblock.com

Como algunos habrán notado, nuestro espacio total es de 15GB, y con un poco más de 5GB usados debido a las roms que tengo cargadas. Por defecto nuestro sistema de archivos sólo tendrá el espacio máximo de nuestra imagen que grabamos en la microSD, siendo necesario expandirla. Para esto necesitaremos permisos de root:

pi@retropie ~ $ su -
*La contraseña por defecto es “raspberry”

Una vez con permisos de root, ingresamos a la aplicación de configuración:

root@retropie:~# raspi-config

2v1b7s3.jpg


Seleccionamos la primera opción:

1 Expand Filesystem Ensures that all of the SD card storage is available to the OS

Una vez completado el proceso, nos dirá que la partición “/” ha sido redimensionada, y desde el siguiente reinicio podremos hacer uso del espacio. Antes de reiniciar, configuraremos algunas otras cosas.

En la cuarta opción (Internationalisation Options), podremos cambiar apartados de zona horaria y distribución de teclado. Configurar a gusto.

En el punto 8, encontraremos opciones avanzadas.

jq14sw.jpg


A2 Hostname: Recomiendo utilizar un hostname fácil de recordar para cuando vayamos a entrar mediante otro PC utilizando samba.

A4 SSH: Activamos por defecto el acceso ssh. Si van a utilizar la raspberry siempre en sus casa (por lo tanto, asumiendo un mismo dominio de red), una ip fija no nos vendría nada mal para tener, por ejemplo, llaves ssh.

Las otras opciones son a elección, como forzar la salida de audio a 3.5mm (jack) o HDMI.

Recomiendo también utilizar la A0 Update, para tener actualizada nuestra pequeña consola de emulación. Aunque esto después de reiniciar nuestra Rpi.

En la pantalla principal de “raspi-config”, movemos el cursor a la derecha y seleccionamos <Finish>. Volveremos al prompt como usuario root. Una vez ahí, escribimos:

root@retropie:~# reboot

3.3 Configurando controles y demases

Otra vez en el sistema, presionamos F4 nuevamente para ir a nuestra consola. Obtenemos permisos de root:

pi@retropie ~ $ su -

Y una vez como root ejecutamos el siguiente script:

root@retropie:~#sh /home/pi/RetroPie-Setup/retropie_setup.sh

33ncmmt.jpg


Seleccionamos la opción 3 “Setup / Configuration (to be used post install), se entiende per se. Una vez dentro, las opciones cambian según la versión y los dispositivos instalados.

2ltsub4.jpg


ifct9c.jpg


Si tienen un control de Xbox 360, pueden ir a la (generalmente última) opción que dice “Install XBox controller 360 driver.Automáticamente realiza los maps de teclas y calibra palancas.

En caso de un control de PS3, seleccionar la opción “Install/Pair” PS3 controller.Necesitarán un adaptador bluetooth (el demonio carga por defecto).

Si tenemos un dispositivo USB normal o genérico, podemos realizar la configuración de botones presionando en la opción “Register RetroArch controller”, deberán leer cada botón a configurar. Esto sirve para tener siempre el mismo layout del control en los distintos emuladores, exceptuando obviamente aquellos que requieren teclado (Sí! Hay Ports de PC clásicos!).

Reiniciamos para que todas configuraciones tengan efecto, algunas lo tienen al instante.

3.3 Conectividad Ethernet

Para conocer la dirección ip de nuestro dispositivo utilizamos el siguiente comando:

root@retropie:~# ip addr show eth0

Aunque si presionaron F4, entre la información que muestra junto a la Rpi en ASCII, podremos ver la dirección IP asignada.

3.4 Conectividad Wireless

Algunos controladores de adaptadores inalámbricos usb vienen cargados de fábrica, para otros, es necesario actualizar la paquetería, y luego buscar el dispositivo. En mi caso fue:

root@retropie:~# dmesg | less

Buscamos una línea que contenga algo como esto:

[ 3.216693] usb 1-1.3: Product: 802.11n NIC

[ 3.222970] usb 1-1.3: Manufacturer: Realtek

[ 3.229060] usb 1-1.3: SerialNumber: 00E04C0001


Como pueden ver, utiliza un chipset realtek, por lo que podemos proceder a instalar el firmware, no sin antes actualizar la paquetería:

root@retropie:~# apt-get update && apt-get upgrade

root@retropie:~# apt-get install firmware-realtek


Una vez el firmware esté instalado, reiniciamos la raspberry y aparecerán las opciones para configurar tanto en el front-end, como en el script de configuración. Cuando la tarjeta esté configurada, mediante cli podremos revisar la dirección ip presionando:

root@retropie:~# ip addr show wlan0 | grep inet

inet 192.168.1.111/24 brd 192.168.1.255 scope global wlan0


El output nos muestra la dirección 192.168.1.111. Estamos listos para subir roms.

3.5 Subiendo ROMS mediante SAMBA/CIFS

Por defecto, Retropie tiene incluída la configuración de Samba, y el demonio activado por defecto, entonces simplemente revisamos el servicio:

pi@retropie ~ $ service samba status

[ ok ] nmbd is running.

[ ok ] smbd is running.


Desde Linux, pueden abrir su gestor de archivos favoritos y escribir en la barra de dirección:

smb://192.168.1.111/

*Obviamente cambiar la dirección IP con la que corresponda a la suya!

atxidi.jpg


2ql4zg4.jpg


qoelut.jpg


Desde Windows, abrir el explorador de archivos y escribir en la barra de dirección:

\\192.168.1.111/

*Backslash lo pueden hacer con Alt+92 (tecl. Numérico), dos veces.

Dentro de la carpeta roms, podrán encontrar toda la cantidad de plataformas correspondientes, simplemente copiar/pegar.

Para que las roms sean listadas, es necesario reiniciar. Una vez hecho esto, disfrutar!

4) Oh My Glob! es Debian?

Raspbian es una versión, tal como hemos mencionado, ARM de Debian (Su correspondiente paquetería), también es la anterior stable release (Wheezy), por lo tanto será (o debería) estable.

Si nos fijamos bien, corremos un Sistema Operativo con un determinado entorno gráfico, y si son entusiastas a los sistemas GNU/Linux, sabrán que pueden manipular todo.

Instalemos algunos servicios.

4.2 Modificando nuestros repositorios

Quizás la paquetería baja demasiado lento, ¿por qué no descargamos todo de un lugar más cercano o con mejor ancho de banda? Podemos ver una lista de mirrors en:

https://www.raspbian.org/RaspbianMirrors

Vamos a seleccionar el primero listado en “South America*”, el de la “Federal University of Mato Grosso do Sul UFMS” (hu3hu3). Corresponde a “http://raspbian.ufms.br/raspbian/”

Editamos el archivo:

root@retropie:~# vi /etc/apt/sources.list

Nos mostrará algo como esto:

deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi

Lo modificamos para que se vea así:

deb http://raspbian.ufms.br/raspbian/ wheezy main contrib non-free rpi

Guardamos, salimos y actualizamos paquetería:

root@retropie:~# apt-get update

Plof! Debería volar, o por lo menos andar un poco más rápido.

NOTA IMPORTANTE: Si usted no sabe a ciencia cierta qué está haciendo, siempre realice una copia de seguridad de los archivos de configuración, en el caso anterior puede ser:

root@retropie:~# mkdir /root/.backup

*Esto creará un directorio oculto de respaldo, aunque puede ser el de su preferencia, o guardarlo en /root directamente

root@retropie:~# cp -a /etc/apt/sources.list /root/.backup/sources.list.bak

*Para restaurar el archivo, se invierten los argumentos de directorios, ante la duda, pregunte a google o en el foro

4.2 Cliente Torrent

Si tenemos por ahí un pendrive de gran capacidad, un disco duro externo con alimentación propia (ideal), puede que nos interese aprovechar el bajo consumo de la Raspberry y descargar nuestras distros, isos, series, videos o música favorita.

Instalamos el cliente torrent:

root@retropie:~# apt-get install transmission transmission-daemon transmission-cli -y

Antes de editar el archivo de configuración, tenemos que detener el demonio, de otra forma los cambios no funcionarán:

root@retropie:~# service transmission-daemon stop

Luego editamos el archivo de configuración:

root@retropie:~#vi /etc/transmission-daemon/settings.json

Buscamos la siguiente línea:

"rpc-whitelist": "127.0.0.1",

Y añadiremos nuestro dominio de red:

“rpc-whitelist”: “127.0.0.1,192.168.1.*”,

*El símbolo “*” es un comodín (Wildcard) y permitirá todo el rango de hosts dentro del dominio, para permitir sólo a un usuario en particular, colocar la dirección IP específica (Ej: 192.168.1.17).

Guardamos la configuración, y comenzamos el servicio nuevamente:

root@retropie:~# service transmission-daemon start

Utilizará entre un 5 a un 20% de uso en 2 núcleos (de 4) de la CPU. Relativamente poco si utilizamos emuladores livianos. Podremos jugar y estar bajando contenido al mismo tiempo.

Para entrar al a interfaz, con un navegador ingresar la dirección ip:

http://192.168.1.111:9091/

Usuario y contraseña: transmission

Una vez en la interfaz gráfica, pueden ir a TPB y copiar los links magnet o escoger el archivo torrent. Cambiar ancho de banda utilizado, entre otros. También pueden editar el archivos settings.json, para dejar el directorio de descarga dentro de un directorio samba y puedan recoger sus archivos.

Para más info, ver la guía:

http://www.capa9.net/foro/threads/cliente-torrent-en-20-minutos-o-menos.1092849/

4.2 Shell in a box


Si desean utilizar una terminal mediante ssh, pero no desean estar abriendo terminales o bajando Putty, podemos utilizar shellinabox.

Shellinabox es un software que implementa un servidor web con acceso seguro (https), envía comandos mediante Ajax, y entrega el output en el mismo navegador. Para instalar simplemente tecleamos:

root@retropie:~# apt-get install shellinabox -y

Una vez finalizado el proceso, podemos entrar mediante un navegador web, basta con introducir la dirección ip y el puerto 4200. Podemos cambiar el puerto modificando el archivo /etc/default/shellinabox .

http://192.168.1.103:4200

Aceptan el certificado:

2i9mvb.jpg


Luego ingresamos los datos de acceso:

2yughex.jpg


Si presionamos botón derecho, podemos cambiar colores, entre otras pequeñas opciones:
2qjaoll.jpg
 
Última modificación:

Sago7

Tibetan Mod
Miembro del Equipo
MOD
Se incorporó
5 Julio 2006
Mensajes
6.075
Yo tengo una Pi B, deberia aplicar tambien esta guia, de hecho en los downloads tambien esta la imagen.
 
Upvote 0

hpf

Jugador casual
Miembro del Equipo
MOD
Se incorporó
7 Mayo 2011
Mensajes
360
Yo tengo una Pi B, deberia aplicar tambien esta guia, de hecho en los downloads tambien esta la imagen.
También la puedes aplicar, sin embargo, el rendimiento de la B es inferior. A veces injugable algunas plataformas.

Para la parte de infraestructura y servicios de red, te andará sin drama. Tengo una montada con un montón de servicios, incluído el cliente torrent, y no me da problemas (usa menos de 100MB de RAM). En ese caso, es recomendable instalar Raspbian a secas. Sigue el mismo proceso, sólo cambian las configuraciones base.

Saludos.
 
Upvote 0

ayn

MOD
Miembro del Equipo
MOD
Se incorporó
2 Noviembre 2005
Mensajes
5.141
Excelente guía! Aplicando a mi raspberry, al final compre otra microSD era más atao que nada hacrr dual boot con openelec. Recién configurando, cuando termine les cuento cono me va

Enviado desde mi XT1097 mediante Tapatalk
 
  • Like
Reactions: hpf
Upvote 0

ayn

MOD
Miembro del Equipo
MOD
Se incorporó
2 Noviembre 2005
Mensajes
5.141
ya estoy casi listo con retropie pero no se me escucha el sonido, no se que pasa??

Saluda atte.
 
Upvote 0

hpf

Jugador casual
Miembro del Equipo
MOD
Se incorporó
7 Mayo 2011
Mensajes
360
ya estoy casi listo con retropie pero no se me escucha el sonido, no se que pasa??

Saluda atte.

Hola. Estás saliendo por 3.5mm o hdmi? Tienes algo conectado en el jack?
Puedes forzar las salidas de audio.

Qué estás ejeecutando para probar el sonido?

Puede mostrar el output de "# aplay -l" ?

Dentro de las opciones que te da "# alsamixer". Qué dispositivos aparecen?

Saludos

Enviado desde mi iPhone utilizando Tapatalk
 
Última modificación:
Upvote 0

ayn

MOD
Miembro del Equipo
MOD
Se incorporó
2 Noviembre 2005
Mensajes
5.141
Ayer estuve hasta tarde leseando con el famoso retropie, pude jugar un par de juegos de snes, pero sin sonido, hoy llegando a la casa probare los comandos que me indicas para descartar y posteo las salidas de audio.

igual entrete que el sistema corra sobre debian, yo me he alejado de Linux últimamente, pero empece con suse 9.0 hace varios años atrás.
 
Upvote 0

ayn

MOD
Miembro del Equipo
MOD
Se incorporó
2 Noviembre 2005
Mensajes
5.141
ejecute aplay y la terjata que que me sale ahi en el device 0 es la misma que la del alsamixer BCM2835.
 
Upvote 0

hpf

Jugador casual
Miembro del Equipo
MOD
Se incorporó
7 Mayo 2011
Mensajes
360
ejecute aplay y la terjata que que me sale ahi en el device 0 es la misma que la del alsamixer BCM2835.

Muchísimo tiempo sin pasar por el thread. Actualicé algunas cosas.

Tiene el volumen en alto? Probaste salida hdmi y 3,5 al mismo tiempo?
Usar el script de configuración para probar salidas?
 
Upvote 0
Subir