Tutoriales

Retropie: consola de videojuegos retro con Raspberry Pi

Veremos los pasos para convertir una Raspberry Pi 2 modelo B en una consola de videojuegos retro.

DSC_0003DSC_0004

¿Qué es el Proyecto Retropie?

El Proyecto retropie es una colección de obras que tienen el objetivo general de convertir la Raspberry Pi en una consola de juegos retro. El proyecto utiliza Raspbian como sistema operativo en la parte inferior y se integra un amplio conjunto de emuladores para una amplia variedad de sistemas informáticos de las últimas décadas. Además de los emuladores, también una interfaz gráfica y un montón de otras características de software son parte del proyecto para que sus recuerdos nostálgicos revivan. La secuencia de comandos de configuración retropie es una pieza central de software para la instalación y configuración de estos componentes. Existe una imagen de tarjeta SD con una instalación completa de la secuencia de comandos de configuración retropie que viene con todos los emuladores y funciones compatibles. Además de los aspectos del software del Proyecto retropie también se compone de una solución para la conexión de ciertos mandos de juego original directamente a la Raspberry Pi. El adaptador GPIO retropie es una pequeña pieza de hardware que soporta la conexión de los mandos de juego, además de darle un pulsador y la protección de circuitos. El ControlBlock es otro módulo más avanzado que proporciona funcionalidades para la lectura de diversos tipos de reguladores, así como un interruptor de encendido.

Instalación de RetroPie

Se necesita:

  • Raspberry Pi 2
  • Cable HDMI
  • Micro SD Card (preferiblemente de 8 GB o más)
  • Suministro de energía (adaptador y cable USB Micro)
  • Teclado USB
  • Lector de tarjetas SD

DSC_0040

Paso 1.

Descargar la imagen SD. Existen dos versiones: una para Raspberry Pi 1/Zero (Model A, A+, B, B+) y otra para las versiones de Raspberry Pi 2/Raspberry Pi 3.

Captura de pantalla 2016-03-31 a la(s) 16.31.59

RetroPie SD-card image Version 3.6 for Raspberry Pi 1 and Pi Zero.

RetroPie SD-card image Version 3.6 for Raspberry Pi 2 and 3.

1.2. Una vez que haya descargado la imagen de la tarjeta SD, debe extraerlo usando un programa como 7-Zip . Se extrae al archivo .gz descargado y el archivo extraído será un archivo .img .

Paso 2.

Instalar imagen de retropie en la tarjeta SD

Para instalar RetroPie 3.6 SD image en su tarjeta MicroSD.

  1. Para Windows puede utilizar un programa llamado Win32DiskImager
  2. Para Mac puedes usar Apple Pi Baker
  3. Para Linux puede utilizar el comando dd o Unetbootin

Screen Shot 2016-03-31 at 2.25.06 PM

Paso 3.

Una vez se tiene RetroPie instalado en la tarjeta se mete en la Raspberry Pi y arrancamos, luego de iniciar aparece EmulationStation, el ‘frontend’ de RetroPie. EmulationStation es un menú interactivo para ejecutar los emuladores de forma sencilla con sólo pulsar un botón y sin tener que escribir comandos en la terminal.

DSC_0006 DSC_0020

3.1 Al arrancar pide configurar los controles para navegar por los menús de EmulationStation y jugar las Rom. Dejar pulsado un botón, seguir las instrucciones y listo, la lista de compatibilidad con dispositivos usb es bastante amplia.

DSC_0017 DSC_0018

3.2 Configuracion de la raspberry y retropie.

Presionamos F4

Escribimos la siguiente linea y presionamos Enter

sudo raspi-config

Elegimos la primer opcion Expand FileSystem. Esto permite que todo el espacio de la tarjeta sea usado.

DSC_0009 DSC_0010DSC_0011

3.2.1. Opción: Hacer ‘overclock’. Eligiendo la opcion 7 se puede subir la cantidad de Mhz que tiene establecida la placa. Recuerda que subir de vueltas el procesador hará que se caliente en exceso y puede generar daños.

DSC_0012

3.2.2. Opción: Para configurar controles de RetroArch o joystick:

Setup Retropie:

cd RetroPie-Setup
sudo ./retropie_setup.sh

opcion 317

DSC_0037

Configuracion de mandos:

1. jstest /dev/input/js0
2. sudo nano /opt/retropie/configs/all/retroarch.cfg
3. input_enable_hotkey_btn = 8
4. input_exit_emulator_btn = 9
5. emulationstation

Paso 4.

Configuración de Wifi

Si desea utilizar un dongle WiFi para transferir roms través de la red en lugar de una memoria USB o un cable Ethernet que necesita para configurar su wifi- que también se puede hacer desde el menú retropie en emulationstation:

DSC_0026

Se abrirá en este menú:

DSC_0027

Cambiar la SSID de una lista:

DSC_0029

Escriba su contraseña Wifi

DSC_0028DSC_0030

Paso 5.

Transferencia de las ROM

Descargue los Roms que prefiera.

Emuladores soportados

  • Amiga (UAE4ALL)
  • Apple II (LinApple)
  • Atari 800 (Atari800)
  • Atari 2600 (RetroArch/Stella)
  • Atari ST/STE/TT/Falcon (Hatari)
  • Apple Macintosh (Basilisk II)
  • C64 (VICE)
  • Amstrad CPC (#CPC4Rpi)
  • Final Burn Alpha (RetroArch/PiFBA, RetroArch/FBA)
  • Game Boy (RetroArch/Gambatte)
  • Game Boy Advance (GpSP)
  • Game Boy Color (RetroArch/Gambatte)
  • Sega Game Gear (Osmose)
  • Intellivision (jzIntv)
  • MAME (RetroArch/mame4all-pi, RetroArch/mame4all)
  • MSX (openMSX)
  • PC – x86 (rpix86)
  • NeoGeo (PiFBA, GnGeo)
  • Nintendo Entertainment System (RetroArch/FCEUmm)
  • Nintendo 64 (Mupen64Plus-RPi)
  • TurboGrafx 16 – PC Engine (RetroArch/Mednafen/pce_fast)
  • Ports
    – CaveStory (RetroArch/NXEngine)
    – Doom (RetroArch/PrBoom)
    – Duke Nukem 3D (eDuke)
  • ScummVM
  • Sega Master System / Mark III (RetroArch/Picodrive, Osmose, DGen)
  • Sega Mega Drive / Genesis (RetroArch/Picodrive, DGen)
  • Sega Mega-CD / CD (RetroArch/Picodrive, DGen)
  • Sega 32X (RetroArch/Picodrive, DGen)
  • Playstation 1 (RetroArch/PCSX ReARMed)
  • Super Nintendo Entertainment System (RetroArch/Pocket SNES, snes9x-rpi)
  • Sinclair ZX Spectrum (Fuse, FBZX)

Hay tres métodos principales de transferencia de roms:

5.1. USB

  • (Asegúrese de que el USB está formateada en FAT32 o NTFS)
  • primero cree una carpeta llamada retropie en la memoria USB
  • conectela al pi y espere a que termine de parpadear
  • aque la USB y conectela a el computador
  • añada las roms a sus respectivas carpetas (en la carpeta retropie / roms )
  • vuelva a conectarlo a la Raspberry pi
  • espere que termine de parpadear
  • reinicie emulationstation

5.2. FTP (necesita una conexión a Internet)

  • Con conexión de cable (necesita cable de Ethernet)
  • Inalámbrica (wifi necesita dongle) Hay muchos programas FTP por ahí, para Windows muchas personas utilizan WinSCP para Mac puede usar algo como Cyberduck

5.3. Navegando desde las carpetas del pc.

  • En MAC OS X, en el Finder seleccione menú “Ir” y “Conectar al servidor”. Escriba SMB: // retropie y pulse “Conectar”.

Paso 6.

Jugar!

Después de añadir ROMs es necesario reiniciar emulationstation con el fin de que aparezcan. Puede reiniciar emulationstation desde el menú de inicio, o reiniciando su pi con sudo reboot .


DSC_0024DSC_0039

DSC_0033DSC_0035

Información tomada de RetroPie Project y Github.

Configurar Microsoft Kinect en Mac OS X 10.9 (Mavericks)

Guia corta para configurar la Kinect de Microsoft en Mac con Mavericks. Basada en el completo tutorial creado por Glen McPherson en su blog y en el Github de Homebrew-openni.

 

Paso 1: Instalar y actualizar Xcode.

1.1. Instalar Xcode desde la Mac App Store. Una vez instalado, abra la aplicación y seleccione la opción de menú

Herramientas Xcode / herramienta de desarrollo Abrir / Desarrollador Más ...

xcode-developer-tools

1.2. Al hacer clic en esto le llevará a la página web de desarrollador de Apple. Basta con iniciar sesión utilizando su ID de Apple y contraseña y continuar hasta que vea las Descargas de Apple para desarrolladores pantalla.

1.3. En la lista de descargas, búsqueda de la versión más reciente de las

herramientas de línea de comandos (OS X Mavericks) para Xcode ( liberación del 23 de octubre, 2013).

Haga clic en el link azul con la imagen de disco a la derecha de la descripción de descarga.

xcode-install-mavericks-command-line-tools

1.4. Una vez descargadas las herramientas de línea de comandos, basta con abrir la imagen de disco e instalar el paquete.

En este punto ya cuenta con Xcode, ahora vamos a pasar a la instalación de los controladores de Kinect.

 

Paso 2: Instalar Adiciones

Lo siguiente es una lista de aplicaciones / herramientas que se deben instalar. Se recomienda instalar la versión más reciente.

2.1. Descargar XQuartz , una versión de código abierto del sistema X Window X.org para Mac.

2.2. Descargar CMake , un sistema de automatización de construcción de plataforma cruzada.
Seleccione el enlace de descarga al lado de

Mac OS X 64/32 bits universal (para Intel, Snow Leopard / 10.6 o posterior)

A través de la instalación de CMake se le pedirá a Instalar las herramientas de línea de comandos , asegúrese de hacer esto haciendo clic en el Comando de instalación cuando le de la opción. Otra forma es en el menú Herramienta de Cmake ir a la opción cómo instalar para uso de línea de comandos y seguir los pasos.

5 cmake

2.3. Descarga MacPorts , lo que le permite compilar, instalar y actualizar el software a través de la aplicación Terminal.
Seleccione la descarga titulado

OS X 10.9 Mavericks

 

Paso 3: Instalar Dependencias

En este punto se han instalado las principales aplicaciones, ahora sólo necesita instalar un par de dependencias para más adelante.

Libtool: Una herramienta de soporte genérico de librerías.

3.1. Para instalar Libtool, abra la aplicación Terminal:

Aplicaciones / Utilidades / Terminal .

3.2. A continuación, escriba la siguiente:

sudo port install libtool

3.3. Presione Enter, a continuación, introduzca la contraseña cuando se le solicite. Si todo va bien, debería ver algo similar a lo siguiente aparecen en el terminal:

libtool

Libusb: Una herramienta de soporte para aplicaciones USB.

3.4. En Terminal, escriba lo siguiente:

sudo port install libusb +universal

3.5. Presione Enter, a continuación, introduzca la contraseña cuando se le solicite. Si todo instalado correctamente, debería ver algo similar a esto:

3 libusb

Desde este punto vamos a alejarnos del metodo elaborado por McPherson y tomaremos otro camino (un poco más rapido).

Homebrew: Un gestor de paquetes para OS X

3.6. En Terminal, escriba lo siguiente:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

3.7. Presione Enter, a continuación, introduzca la contraseña cuando se le solicite. Si todo instalado correctamente, debería ver algo similar a esto:

homebrew

 

Paso 4: Instalar OpenNI, SensorKinect y NITE

Bien, ahora nos estamos moviendo en territorio Kinect. OpenNI es el primer software de Kinect-específico que va a instalar. OpenNI es creado por un grupo de empresas, entre ellas PrimeSense ( ahora propiedad de Apple ) que desarrolló el original Microsoft Kinect. El software OpenNI contiene una pila de bibliotecas de middleware y aplicaciones que ayudaran en su viaje con Kinect.

SensorKinect es simplemente un módulo que ayuda al interactuar con Kinect OpenNI. Es necesario para que Kinect trabaje en su Mac.

Nite es un impresionante middleware que ha sido desarrollado por el mismo equipo detrás OpenNI. Supervisa profundidad, color, infrarrojos y audio para el seguimiento del cuerpo y las manos en su uso como dispositivos de entrada.

Nota: asegúrese de no intentar instalar Nite v2. Al igual que OpenNI 2, por desgracia, esta versión se basa en el nativo de Microsoft Kinect SDK, que es incompatible con el Mac.

Siguientes pasos tomados de: https://github.com/totakke/homebrew-openni

Descarga fórmulas

En primer lugar, toque homebrew-ciencia y homebrew-OpenNI.

4.1. En Terminal, escriba lo siguiente y presione entre tras cada linea:

$ brew tap homebrew/science
$ brew tap totakke/openni

4.2. Presione Enter

Instalar

Instalar OpenNI, SensorKinect, y NITE con Homebrew.

4.3. En Terminal, escriba lo siguiente y presione enter tras cada linea:

$ brew install openni

$ brew install sensor-kinect

$ brew install nite

 

4.4. Si al instalar nite obtiene este error:

error nite

debemos hacer lo siguiente: (solución encontrada acá)

404 error es un problema de redireccionamiento en homebrew. Descargamos los paquetes directamente de acá https://onedrive.live.com/download?resid=33B0FE678911B037%21573 y editamos el enlace.

 

$ wget 'https://onedrive.live.com/download?resid=33B0FE678911B037%21573' -O /tmp/nite.zip
$ brew edit nite
  url 'file:///tmp/nite.zip'

[ Para editar el enlace nos abrirá por defecto el editor Vim, acá encontramos unos trucos básicos para usarlo, lo que necesitamos para este paso es:

Pulsando la tecla <i> entramos en el modo de inserción (para editar el texto, aqui es donde cambiamos la dirección de la url),

pulsando la tecla <ESC> entramos en el modo comandos

Vamos a guardar el archivo:

:w

Para salir del editor:

:q

]

Finalmente

$ brew install nite

nite

5. Hacemos una prueba con un ejemplo.

Conectar el dispositivo al PC y ejecutar un programa de ejemplo.

5.1. En Terminal, escriba lo siguiente y presione enter tras cada linea:

$ cd `brew --prefix`/share/openni/samples/Bin/x64-Release


$ ./Sample-NiSimpleViewer

 

Debe aparecer en pantalla la imagen capturada por kinect.

Captura de pantalla 2016-03-21 a la(s) 20.43.04 prime thres

Pedalera para tambora

IMG_1250[1]

Materiales

_Retal de MDF o aglomerado

 _Trozo de goma de mínimo 3cm de grosor

_1 bisagra pequeña

_Resorte metálico grueso

_Eje roscado

_8 tuercas del mismo diámetro del eje roscado

_Trozo de cadena de bicicleta

_

 

Holograma con teléfono celular

En un correo en la lista Brolín preguntaba que si sería real un video que encontró:

Hologramas con el celular y una caja de cd http://digg.com/video/smartphone-hologram-how-to

El sabado se dieron a la tarea de comprobarlo. Primero se siguió paso a paso el video tutorial: conseguir una caja de cd, tomar las medidas y recortar, pegar los pedazos y… pues algo salio mal porque no funciona bien. Luego de unos ajustes y pequeños cambios: en lugar de caja de cd se usa acetato de bajo calibre y se ajusta la medida 1 cm.

El resultado:

holo07 holo08 holo09

Cómo se hizo.

Primero se recortan 4 trapecios iguales en el acetato.

holo01 holo02-2

Luego se pegan formando una piramide.

holo02 holo03

Ponemos la pirame invertida sobre el celular.

Damos play al video y listo.

holo04 holo05 holo06

Todavía me sorprende pensar lo sencillo que es y el gran efecto que produce.

Ajustar la escucha de conferencias para la ciudad

La ciudad tiene mucho ruido, ya ni siquiera podemos decir ruido de fondo, pues es tal el nivel que el ruido no es fondo sino sujeto. El transeúnte que quiere usar el tiempo de transito para escuchar en sus audífonos alguna conferencia o radio novela, se ve en problemas pues las partes leves de la voz son incomprensibles y si se sube el volumen general, las partes fuertes ya incomodan, necesitamos entonces reducir la variación de volumen de la grabación (rango dinámico).

En GNU/Linux podemos usar el Compander de sox , un ajuste inicial sería:

$ sox [archivo_origen] [archivo_destino] compand 0.02,0.20 5:-60,-40,-10 -5 -90 0.1

Un ejemplo:

$ sox The_Power_of_Abstraction-GDVAHA0oyJU.mp3 abstraction_bicicleta.mp3 compand 0.02,0.20 5:-60,-40,-10 -5 -90 0.1

Los parámetros que usa el Compander (compresor+expander) son:

compand attack1,decay1{,attack2,decay2}
[soft-knee-dB:]in-dB1[,out-dB1]{,in-dB2,out-dB2}
[gain [initial-volume-dB [delay]]]

Pueden detallar en estos parámetros aca: http://sox.10957.n7.nabble.com/Compander-help-limiter-td2920.html

La diferencia de los rangos dinámicos en diferentes entornos se puede ver mejor en esta gráfica:

Nota: Para descargar una conferencia de YouTube, Vimeo, SoundCloud, etc puede usar el programa youtube-dl incluso ese programa trae una aplicación para extraer el audio, pero alguna vez no me funcionó entonces uso este script de ffmpeg para extraer el audio a una carpeta con videos de YouTube:

for f in *.mp4; do ffmpeg -i “$f” -vn -c:a libmp3lame -ar 44100 -ac 2 -ab 192k “${f/%mp4/mp3}”; done a una carpeta con videos de YouTube:

for f in *.mp4; do ffmpeg -i “$f” -vn -c:a libmp3lame -ar 44100 -ac 2 -ab 192k “${f/%mp4/mp3}”; done

Piratebox en TL-MR3020

copiado  de  http://cc.mdelibre.co/?LaPiraDok   con ajustes de http://cookingcomputersandmore.com/piratebox-on-tp-link-mr3020/


1.  Descargue el firmware de OpenWRT para la MR3020: http://piratebox.aod-rpg.de/openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-factory.bin
2. Mueva el switch al modo WISP en el hardware MR3020
3. Conéctese via cable (no via wireless) al router, si no obtiene un número IP por defecto asigne uno en el rango 192.168.0.XXX. Despues habra con un navegador la siguiente URL: http://192.168.0.254
4. Entre el username & password por defecto (admin & admin)
5. Vaya a System Tools > Firmware Upgrade y seleccione el firmware OpenWRT descargado en el paso #1.
6. De clic al botón de ‘upgrade’ y espere a que reinicie.

7. Cambien su número IP al rango 192.168.1.XX y con Telnet entre al router:  telnet 192.168.1.1
8. Use el comando ‘passwd’ para asignar un nuevo password y activar automáticamente SSH: passwd
9. Edite la configuración de la red:

NOTA: Se asume que su gateway es 192.168.2.1 Ud. debera cambiarla segun el router local que le provee internet a la red local:

vi /etc/config/network

El archivo modificado se vera asi:
config interface ‘loopback’
option ifname ‘lo’
option proto ‘static’
option ipaddr ‘127.0.0.1’
option netmask ‘255.0.0.0’

config interface ‘lan’
option ifname ‘eth0’
option type ‘bridge’
option proto ‘static’
option ipaddr ‘192.168.2.111’
option netmask ‘255.255.255.0’
option gateway ‘192.168.2.1’
list dns ‘192.168.2.1’
list dns ‘8.8.8.8’

——————————————-

en mi caso , realizo este procedimiento tmb

vi /etc/config/firewall , que quede como el de la imagen

——————————————–

10. Desconecte el router. Espere unos 5 segundos y reinícielo conectado de nuevo el cable de poder.
11. Conéctese esta vez usando su red inalámbrica.
12. Podrá Ud. conectar con el cable ambos router. Luego use el comando SSH: ssh root@192.168.2.111
13. Use el password asignado unos pasos atrás y ejecute el comando: ping google.com
14. Si no responde al ping deberá Ud. revisar bien la configuración de la red. De funcionar procedemos a instalar los controladores de dispositivos USB para el almacenamiento de archivos. Aca los comandos a ejecutar:

opkg update
opkg install kmod-usb-uhci
insmod usbcore ## may return: file exists
insmod uhci
opkg install kmod-usb-ohci ## may return: up to date.
insmod usb-ohci
Instale el software PirateBox

Conecte si dispositivo USB previamente formateado como FAT32 y con 1na sola partición. Cambie de directorio con el comando:

cd /tmp

Ejecute:
opkg update && opkg install
http://piratebox.aod-rpg.de/piratebox_0.6.3_all.ipk
Una vez la instalación termina, 5min tal vez, verá un mensaje que dice ‘reboot’, desconecte el cable de poder y espere unos 10 segundos antes de re-conectarlo.

Una vez reinicie verá una nueva red inalámbrica con el nombre: “PirateBox – Share Freely”. Unase a dicha red e intente abrir con su navegador cualquier URL. Será recibido por lapáginaa de instrucciones de uso de la PirateBox.

Disfrute de su propia red libre para copiar y compartir archivos!

PD:

MODS para la PIRATEBOX  (cambiar nombre,logos, ssid, etc..)

http://piratebox.aod-rpg.de/dokuwiki/doku.php/modifications/scriptbased_04
http://www.disk91.com/2012/technology/systems/customizing-piratebox-configuration/