domingo, 23 de julio de 2017

Configurar el mando de juegos Xiaomi en recalbox 4.1

Hace unos meses me pillé un mando inalámbrico Xiaomi que funcionaba bastante bien en recalbox 4.0.

Pero ahora me he pasado a recalbox 4.1 (recordemos que sigue siendo una versión inestable) por tener muchos más sistemas disponibles y Kodi más actualizado y el mando ya no se configura tan fácil como en la versión estable.

Algunos usuarios hemos reportado el problema al equipo de Recalbox y, aunque todavía no han dado con la solución, al menos nos han dado algunas pistas para configurarlo de una manera manual. Vamos a verlo:

En mi caso, tengo una raspberry pi 2, a la que puedo conectar y desconectar los pinchos wifi y bluetooth a voluntad, esto viene muy bien porque los dos a la vez no funcionan siempre, es conveniente conectar primero el wifi y cuando sea necesario el bluetooth. La cosa mejora cuando usas un hub usb alimentado pero tampoco es la panacea.
  1. Apagamos la raspberry y desconectamos el pincho bluetooth.
  2. Volvemos a encenderla con solo el pincho de wifi (el del teclado puede seguir conectado).
  3. Accedemos por ssh (recuerda que por defecto el usuario es root y la contraseña recalboxroot):
    ssh root@recalbox.local
  4. Enchufamos el pincho bluetooth.
  5. Encendemos el mando con pulsación larga en el botón de encendido para que entre en modo visible (a partir de este punto tenemos que teclear el resto de comandos antes de que se apague por inactividad o tendremos que repetir algún paso a partir de este punto).
  6. Ejecutamos bluetoothctl y nos aparecerá un nuevo prompt en el que introducir órdenes:
    bluetooth#
  7. Ejecutamos los siguientes comandos:
    paired-devices
    agent on
    default-agent
    power on
    discoverable on
    pairable on
    scan on
  8. Este último comando mostrará todos los dispositivos bluetooth al alcance de nuestra raspberry entre ellos el mando, que aparecerá con su nombre chino:
    [CHG] Device  Name: 小米蓝牙手柄
    [CHG] Device 1C:96:5A:DD:BC:CE Alias: 小米蓝牙手柄
  9. Así que como ya conocemos la MAC de nuestro dispositivo procedemos a asociarla con los siguientes comandos:
    pair 1C:96:5A:DD:BC:CE
    connect 1C:96:5A:DD:BC:CE
    trust 1C:96:5A:DD:BC:CE

    Si nos pidiera un pin al emparejarlo ponemos 0000.
Si todo ha ido bien ya tendremos el mando asociado a la raspberry, eso sí, durante un rato sin usar el mando se volverá a desconectar y habrá que repetir el proceso, a no se que hagamos permanente...

Hacer los cambios permanentes

Hay que modificar dos archivos:

/etc/init.d/S32bluetooth

Donde pone:
/recalbox/scripts/bluetooth/test-device list
Debe poner:
PYTHONIOENCODING=UTF-8 /recalbox/scripts/bluetooth/test-device list

/etc/init.d/S32bluetooth

Cambiar test-discovery por btDaemon en todos los sitios en los que aparezca en el archivo.
(Ahora es cuando nos damos cuenta de la gran idea que ha sido instalar mc en recalbox).

Una vez hecho esto al pulsar en el botón xiaomi del mando se empareja a los pocos segundos.

Eso sí, si usamos un pincho bluetooth y lo conectamos con el sistema ya arrancado hay que reiniciar recalbox para que lo reconozca.

viernes, 14 de julio de 2017

Aplicar css sobre el tema en blogger para hacerlo más adaptativo

Una cosa que nunca me ha hecho mucha gracia de blogger son los bordes que pone cuando tienes mucho ancho disponible y que no se vea todo cuando el ancho no es suficiente.

Afortunadamente esto tiene remedio y el resultado lo podéis ver desde hace poco tiempo en el blog, para ello hay que añadir algo de css y ajustar algunas cosas en el tema.



Para añadir css que prevalezca sobre el del tema tenemos que ir al backend de blogger opciones Temas > Avanzado > Añadir CSS.

En mi caso he añadido el siguiente trozo de código para que los anchos se adapten mejor, el código esté bien separado, las imágenes no se salgan de su zona sin deformarse y algunos ajustes más:

body {
    min-width: 0px !important;
    padding: 0px;
}

.content-outer, .content-fauxcolumn-outer, .region-inner {
    min-width: 0px !important;
    max-width: 10000px !important;
}

th {
    background-color: #006600;
    color: #ffff99;
}

th, td {
    padding: 0.04em 0.3em;
}

code {
    background-color: white;
    padding: 0.2em 0.7em;
    margin: 0.5em;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.15);
    border-radius: 0 0 2px 2px;
    display: block;
}

.main-outer img {
    max-width: 99%;
    height: auto;
}

.post-body img, .post-body .tr-caption-container {
   background: none;
}


Es conveniente usar el tema especial para móviles, para ello vamos a la opción tema y pulsamos en la tuerca que hay debajo de la vista previa para móviles, ya allí basta con activarlo.


martes, 4 de julio de 2017

Ejecutar juegos de MS-DOS en Batocera o Recalbox 4.1

En Batocera y Recalbox (a partir de la versión 4.1 beta) se pueden ejecutar juegos de MS-DOS a pantalla completa, deben copiarse de la siguiente manera:
  1. Nos vamos a la carpeta /recalbox/share/roms/dos/
  2. Creamos dentro una carpeta con el nombre del juego terminado con la extensión pc (p.e.:  galaxia.pc)
  3. Copiamos el juego a esa carpeta.
  4. Creamos un archivo dosbox.bat que solo contendrá el nombre completo del archivo ejecutable del juego, incluida su extensión (p.e.: GALAXIA.EXE).
  5. Vamos a la opción de actualizar juegos en el menú de recalbox/batocera.
Y ya está, tendremos que repetir el proceso por cada juego que queramos añadir, aunque el último paso lo podemos dejar para el final para que reconozca todos los juegos del tirón.

Para conseguir juegos DOS de libre descarga recuerda el artículo ¿Donde conseguir juegos y ROMs legales de libre descarga para tus emuladores? (la magia del homebrew), apartados DOS y varios sistemas.



sábado, 24 de junio de 2017

Autologin en Debian 9 (stretch)

Hacer autologin es simplemente que al iniciar nuestro debian abra la sesión del usuario que le indiquemos sin introducir la contraseña.
Esto es muy cómodo, pero implica un riesgo ya que si alguien tiene acceso a nuestro equipo puede acceder a su contenido, así sería muy interesante para un equipo público sin datos personales para uso genérico pero no para un portátil por ejemplo.

Eso sí si accedemos por red, por ejemplo por ssh, nos seguirá pidiendo la clave.

Para conseguir esto en Debian Stretch hay que modificar el archivo /etc/lightdm/lightdm.conf y cambiar las líneas:

#autologin-user=
#autologin-user-timeout=0

Por:

autologin-user=tuusuario
autologin-user-timeout=0

Así se simple y rápido.
This article is also on English

sábado, 17 de junio de 2017

Malagueños Originales y Libres en inglés

Selections of M.O.L. (English)Algunos usuarios no hispanohablantes me han mostrado su interés para que algunos artículos de este blog estén en inglés, llegando incluso a usar traductores automáticos, lo cual da unas traducciones muy malas y destrozan cualquier código que haya en el artículo.

Así que he creado otro blog paralelo en inglés en el que iremos traduciendo mi mujer y yo los artículos que puedan tener cierto interés internacional, poco a poco y en la medida de nuestras posibilidades.

De paso refrescamos la lengua de Shakespeare que nunca viene mal.

See you soon on Selections of M.O.L. (English)! ;-)

viernes, 9 de junio de 2017

Reparado mi viejo Pentium 4 de 2002 por 0,75€

Hace un par de meses os conté que se rompieron mis dos equipos que soportan disquetera a la vez, mi pentium II y mi pentium 4.

Mi pentium 4 cuando era un equipo puntero. Archivo personal.

Hoy que conseguido reparar mi pentium 4, de hecho ya tenía localizada la causa de la avería, una chorrada tan gorda como que una pestaña de la abrazadera del disipador del micro se había partido y esto hacía que no estuvieran en contacto el micro con la superficie del disipador y se detuviera por calor a los segundos de arrancar.

La suerte es que era un viejo micro Intel no un AMD, en cuyo caso hubiera terminado como un humeante carboncillo irrecuperable.

De todas formas no las tenía todas conmigo, temía que la pestaña muelle metálica al saltar hubiera hecho un corto en la placa madre y la hubiera estropeado o que el micro hubiera tenido daños.

Hoy he probado iniciar el ordenador sujetando firmemente el disipador contra el micro con un objeto que no impedía el flujo de aire y no se ha colgado, así que solo me quedaba encontrar alguna manera de mantener fijos ambos elementos, la solución ha sido ponerle una micro abrazadera de plástico (brida) que une la abrazadera con la pestaña muelle y tensarla para que mantengan el contacto, y ha funcionado tan bien que este artículo lo estoy escribiendo desde el propio pentium 4 mientras actualizo su debian.
Creo que no va a ver problemas con el calor al menos a corto plazo pues está enganchado a una zona que no genera mucho, ya iremos viendo y si no ya buscaré otras soluciones (están los pegamentos extrafuertes pero prefiero no llegar a eso).


El coste de la reparación ha sido 0,75€, el precio de una bolsita llena de minibridas.

En fin, el futuro de este equipo pintaba muy mal, carne de punto limpio y ahora vuelve a la vida una vez más. Muy contento.

A ver si consigo resucitar también al pentium 2.

miércoles, 31 de mayo de 2017

Configurar la raspberry pi en modo kiosko

Poner un ordenador en modo kiosko es hacer que un ordenador arranque con un navegador sin opciones en una determinada página web y sin posiblidad de cerrarlo.
Esto es muy útil para congresos, demos, máquinas de bienvenida, etc...

1. Partimos de una raspbian jessie with pixel recién descargada de su página oficial, muy fácil de instalar desde cualquier linux.
El proceso es bastante sencillo y rápido si se hace desde la consola de linux:

2. Arrancamos la raspberry con la tarjeta dentro.

3. Ejecutamos
sudo raspi-config
Hay que cambiar los siguientes valores:
  • Change user password :: ponemos la que queramos siempre que no sea la de por defecto ni ninguna demasiado fácil de adivinar.
  • Hostname :: ponemos el nombre del equipo
  • Localizasion options:
    • Change locale :: cambiamos las locales y el idioma por defecto a es_ES_utf8
    • Change Timezone :: elegimos Europe Madrid
    • Change keyboard layout :: elegimos es_ES
  • Interfacing options:
    • SSH :: lo activamos
    • VNC :: lo activamos
  • Advanced options:
    • Expand filesystem :: elegimos esta opción para que la partición ocupe todo el espacio disponible en la tarjeta
4. Salimos de raspi-config y reiniciamos.

5. Configuramos la red, si es necesario (IP fija y/o proxy).

6. Automatización. Hay que crear dos archivos:
  • Si lo que queremos es interactuar con una página web creamos el archivo /usr/local/bin/mylauncher con el siguiente contenido:
#!/bin/bash
chromium-browser --kiosk http://www.pagina_a_la_que_accedo.com
  • Si lo que queremos es que se ejecute un vídeo de manera continua hay que cambiar la línea que abre el navegador por algo así:
omxplayer -o local --loop /home/pi/mivideo.mp4
  • Asignamos permiso de ejecución a este archivo:
sudo chmod +x /usr/local/bin/mylauncher
  • /home/pi/.config/autostart/.desktop con el siguiente contenido:
[Desktop Entry]
Type=Application
Exec=mylauncher 
7. Evitar que se oscurezca la pantalla:
Añadimos la siguiente línea a /etc/lightdm/lightdm.conf en la sección [SeatDefault]:
xserver-command=X -s 0 dpms

8. Control remoto:
Si necesitamos reiniciarla o manejarla a distancia necesitamos acceder a ella desde control remoto, tiene que ser desde otro ordenador que esté en la misma subred (también vale tu smartphone).
  • Para conectarnos por VNC a la misma pantalla que se muestra añadimos a /etc/rc.local la siguiente línea:
/usr/bin/x11vnc -bg -forever -passwd laclavequeusemosparavnc
Ahora nos podríamos conectar con cualquier cliente VNC introduciendo la IP/nombre de red de la raspberry y la clave elegida.

  • También nos podemos conectar por ssh para ejecutar comandos de consola:
ssh pi@ip_o_nombre_de_red_raspberry
En este caso nos pedirá la clave que le introdujimos con raspi-config.
  • Se puede ejecutar programas gráficos sueltos también por ssh, pero en este caso tenemos que habernos conectado con el comando:
ssh -XC pi@ip_o_nombre_de_red_raspberry
  • Hay un truco para reiniciar la raspberry sin pegarle el botonazo si se queda colgada por red:
ssh -t pi@ip_o_nombre_de_red_raspberry 'sudo shutdown -r now'

¡Y ya está! con toda esta información puedes montar tu raspberry en modo kiosko y gestionarla según tus necesidades.

Enlaces de interés