viernes, 25 de marzo de 2022

Restauración de teclado semi-mecánico PC

Ha caído en mis manos este viejo teclado semimecánico y voy a intentar repararlo por el simple hecho de aprender a hacer algo nuevo que me puede servir para reparar otros teclados más difíciles de sustituir, como los de un ordenador de 8 bits por ejemplo.

El problema es que se encasquillan muchas teclas y no tengo ni idea de porqué es ni de lo que voy a encontrarme, así que empiezo a retirar las teclas.


Como se puede ver en la primera imagen el aspecto del interior es bastante asqueroso y lamentable, así que habrá que darle una buena limpieza, aunque hay que proceder por orden para no perder ningún elemento y desgraciarlo.



Ya tenemos separados por un lado, las teclas, los muelles y el armazón principal, que también hay que desalmarlo con los destornilladores adecuados para retirar los delicados tornillos de su parte trasera sin redondearlos (más difícil de lo que suena).
Una vez retirados hay que abrirlo porque está también pillado a presión haciendo palanca con mucho cuidado y paciencia por todos sitios.


Al abrirlo nos encontramos con elementos más frágiles aún, especialmente la membrana que debemos dejar límpia pero sin alterarla de ninguna manera, también hay que desconcezca la parte electrónica para poder limpiar el armazón superior que es donde está toda la roña junto con las teclas.


Yo lo he limpiado en el fregadero y como podéis ver queda bastante limpio, las teclas también las he podido limpiar aquí sin peligro de que se colaran por el tapón especial que tiene el mismo para evitar esta circunstancia.

Después hay que volverlo a montarlo todo con el mismo cuidado y orden, prestando especial atención a la parte mecánica pues lo que finalmente ha provocado la avería han sido los muelles que estaban muy mal diseñados ya que tienen tendencia a doblarse sobre si mismos y no hacer bien su trabajo.

Por lo que cuesta un teclado nuevo no merece la pena el esfuerzo por un teclado de membrana regulero y es muy probable que no funcione al volverlo a montar si te has saltado algún paso pero ha resultado bastante instructivo el ejercicio.

jueves, 17 de marzo de 2022

Debian 11: Como encontrar el driver Wi-Fi de un viejo portátil que se resiste

Un problema que tienen algunos usuarios después de instalar Debian 11 en su portátil es que no le funciona la Wi-Fi, ya que muchos fabricantes no liberar el firmware y no va a venir instalado de serie, incluso si hemos instalado la versión non-free de Debian (recomendada si tiene algún hardware que no sea libre).

El portátil al que le vamos a poner Debian 11 es un viejo HP Compaq 6720s.


Vamos a buscar el driver por internet, recuerda que te puedes conectar por cable ethernet, con otro pincho wifi que sí lo reconozca o al móvil por cable.

Lo primero es localizar que tarjeta es la que tiene nuestro ordenador, algo que podemos conseguir con el comando:

lspci | grep -i wireless

Si no obtuvieramos ningún resultado probamos simplemente con lspci y localizamos por pura lógica que línea corresponde al dispositivo wifi.

Una vez que tenemos esa línea podemos hacer varias cosas:

Podemos buscar con el propio synaptic el nombre del firmware, si vemos que hay un paquete que lo contenga lo instalamos, lo más probable es que salga funcionando la Wi-Fi directamente tras la instalación, si no tienes synaptic ya estás instalándolo.

Si no hemos tenido éxito la buscamos en internet junto a las palabras Debian o Linux (o la distro que sea), empezamos filtrando solo resultados del último año para tener recetas frescas para las distros de hoy.

Normalmente encontraremos una receta que nos dirá lo que tenemos que hacer, normalmente instalar un paquete que contenga el firmware o en el peor de los casos una instalación manual con todos los pasos detallados pero... ¿y si no encontramos nada o no nos funciona la solución?

Pues volvemos a repetir la búsqueda, esta vez sin filtrar por fechas, en este caso encontré unas instrucciones de hace 15 años (los años que tiene el portátil) pero no sería inteligente seguirlas a ciegas en una distro de hoy que ha sufrido muchas modificaciones en ese tiempo.

Por tanto, lo que hay que hacer es leer y ver que pistas podemos obtener, en nuestro caso nos había salido que el firmware era el 3945ABG, así que afinando nuestra búsqueda encontramos esta vieja web que nos habla de un firmware llamado iwlwifi, así que lo busco de nuevo para mi distro y encuentro que tengo que instalar el paquete firmware-iwlwifi

Reiniciamos y ya tenemos Wi-Fi

 


miércoles, 9 de marzo de 2022

BBC Basic en GNU/Linux

BBC Basic, es el mismo interprete Basic que usaba el ordenador educativo BBC está disponible para GNU/Linux, tanto para la versión PC como para raspberry pi (en sus foros por cierto hay mucha información).

Una peculiaridad de este intérprete es que exige que los comandos se escriban en mayúsculas o dará error de sintaxis, si vienes de interpretes más modernos y potentes como Locomotive Basic que te convertía los comandos a mayúsculas los pusieras como los pusieras te puedes llevar un susto y creer que no funciona.

También hay un bot en twitter al que le pasas código BBC Basic y te devuelve un GIF con el resultado, un buen sitio para encontrar códigos con ejemplos que ha probado la gente.

Ya está disponible en RetroMultiInstaller.


¡Una buena manera de empezar el día es hacer alguna tontería en el Basic que usaban los antiguos BBC! :D

sábado, 26 de febrero de 2022

MLCad uso práctico: una manera rápida de representar algo en 3D

Éste va a ser el primero de varios artículos sobre el concepto de hachazo, buscar una solución rápida a un problema que hay que solucionar ya y no me puedo poner a ver como se hace correctamente con los programas adecuados, en este caso Blender, OpenSCAD, etc...

El otro día tenía la necesidad de representar un cortinero en 3D y como he comentado tenía que hacerlo inmediatamente y no me acordaba como se hacía con Blender, para estos casos hay que tener inventiva y salir del paso con lo que se tiene y se conoce.

La ocurrencia fue representarla con MLCad, el programa para hacer modelos de diversos juegos de construcción en 3D, en mi caso hice el modelo preliminar con jácenas y baldosas de TENTE, pero bien lo podía haber hecho con fichas de LEGO y hasta de Exin Castillos.


Como véis las cuatro perspectivas vienen de lujo para el caso.

El problema siguiente es que el programa mostraba lógicas separaciones entre las jácenas y las baldosas, cuando solo me interesaba que se mostrara separaciones entre los elementos que realmente son algo distintos, en esto entró en juego GIMP.


Luego lo imprimí para apuntar las medidas reales, de nuevo las pegué con GIMP.


Como veis no es la solución más elegante precisamente pero ha cubierto una necesidad inmediata, hachazo al canto.

jueves, 17 de febrero de 2022

Arreglar pendrive con formato NTFS desconectado indebidamente

Muchos tenemos discos duros externos por USB en formato NTFS para tener compatibilidad con prácticamente todos los sistemas.

A veces se nos ha cortado la transferencia de archivos, porque se ha ido la luz, el cable está mal o lo habéis conectado a algún puerto regulero (normalmente delanteros), y al volver a pincharlo nos sale el siguiente error:


¿Hemos perdido todos los datos de ese disco duro? ¡Posiblemente NO!

Seguramente lo podamos recuperar con el siguiente comando:

ntfsfix -d /dev/sdc1

¡Ojo! en mi caso es sdc1 porque es lo que me ha dicho el error, prestad atención a lo que os sale a vosotros para no confundirnos de partición y que pase algo malo.

Podéis aseguraros de todas formas que no os equivocáis comprobando que no sale al teclear el comando:

mount | grep sd

En todo caso es mejor evitar esta situación desmontad SIEMPRE correctamente vuestros dispositivos USB.

Recordad que es una solución de emergencia y puede que NO funcione siempre.


lunes, 7 de febrero de 2022

BasinC, un emulador de ZX Spectrum... para programar

BasinC es un emulador de ZX Spectrum creado exclusivamente para programar.


Se trata de un programa para Windows, pero funciona perfectamente en GNU/Linux a través de wine, lo podéis descargar aquí.

Este programa muestra dos ventanas completamente diferenciadas:

El editor

El editor es un híbrido entre el entorno de programación de un ZX Spectrum de 128K que responde como tal y uno moderno con coloreado de código y menús para buscar, reemplazar trozos de código, etc...

Permite importar código creado con otro editor para programar, por ejemplo jEdit, recuperar la última sesión de trabajo, volver a cargar alguno de los últimos códigos y ejecutar el código en el emulador propiamente dicho.


Admite tanto Basic como trastear con código máquina, caracteres, etc... (aunque yo solo lo he probado con Sinclair Basic interpretado).

En el caso de Basic, el archivo de texto debe tener la extensión BAS, lo cual es un inconveniente si lo quieres grabar sin esa extensión, por ejemplo, para hacer un cargador de menú para el ZX Spectrum +3 por ejemplo.

Nada de una copia del archivo a mano no pueda solucionar.

 

El emulador

El resultado se muestra en una ventana que es el emulador propiamente dicho, no tiene interactividad con nosotros hasta que lancemos el programa que hemos cargado.


Si hay algún error así nos lo indica tanto en el emulador como en el editor.


Adaptarlo a nuestra vista

El programa permite aumentar tanto la ventana de edición de código como la del emulador, algo muy útil dado que buena parte del público objetivo de este programa somos personas que vivimos los años comerciales de estas máquinas y que tenemos una vista que ya no es lo que era y la configuración por defecto es muy pequeña.

Para cambiarlo debemos cambiar:

  • En el editor:
    • Herramientas ► Opciones BasIN ► Editor Fonts ► Size ► Double/Triple.
  • En el emulador:
    • Display ► 200%



domingo, 30 de enero de 2022

Visor web de modelos LDraw y posibilidad de instalarlo bajo Apache en GNU/Linux para tus propios modelos

Yomboprime ha creado un muy interesante visor de archivos LDraw para un servidor Apache llamado TNTViewer, que podemos instalar en un ordenador de la casa con GNU/Linux y con el que podemos ver los modelos que nos descarguemos o que hagamos con MLCad por ejemplo.


Si simplemente quieres ver los modelos que hay disponibles solo tienes que acceder a estos enlaces:

Esta última opción te da la posibilidad de mover el modelo con el ratón en el ordenador o con el dedo en el móvil, además de ver una animación del montaje del mismo (incluso paso a paso, adelante y atrás) entre otras muchas funciones.

Si no vas a crear tus propios modelos no hace falta que leas el resto del artículo.

Instalar en un servidor para comprobar tus propios modelos

Como está tan cara la luz, voy a usar una raspberry pi para montar el tinglado, en concreto una 400 con el sistema operativo Raspberry Pi OS (antes conocido como raspbian), pero como he dicho cualquier ordenador con GNU/Linux nos valdría, incluso placas más modestas.

Lo primero es, evidentemente, instalar Apache:

sudo apt install apache2

Comprobamos que funciona abriendo desde un navegador de nuestra red la dirección:

http://raspberrypi.local

Y nos debería salir la típica web de inicio de Apache



Ahora descargamos TNTViewer:

git clone https://github.com/yomboprime/TNTViewer

Y movemos la carpeta TNTViewer para que cuelgue dentro de /var/www/html 

Ya puedes acceder a los enlaces locales cambiando el dominio de la URL por el de tu propia raspberry pi en tu red local, por defecto serían éstos:

Rutas locales en la raspberry para añadir tu propio material:

  • Modelos: /var/www/html/TNTViewer/examples/models/ldraw/TENTE/models
  • Fichas: /var/www/html/TNTViewer/examples/models/ldraw/TENTE/parts

Cuando añadamos o cambiemos el nombre a un modelo o ficha hay que ir al directorio /var/www/html/TNTViewer/examples/models/ldraw/TENTE/models y ejecutar el siguiente comando para que actualice el índice json:

node createModelsDataBase.js 

Lo que reconstruye la base de datos (models.json) a partir de los modelos ldraw que haya en TNTViewer/examples/models/ldraw/TENTE/models/ 

Evidentemente, para ello esa carpeta debe tener permisos de escritura para el usuario y tener instalado nodejs:

sudo apt install nodejs
Si el comando node no hace lo que queremos, a lo mejor hay que ejecutar este otro:

nodejs createModelsDataBase.js

Si no vamos a trabajar con tente en lugar de la subcarpeta TENTE, optaremos por LEGO o EXINCASTILLOS.

Y ahora a disfrutar del invento ;-)