lunes, 16 de septiembre de 2019

Adaptadores V-USB en juegos modernos, ¡Invoco a Xoutput y a ViGEM en modo de ataque!

Hola, ¿Cómo les va? Espero que estén muy bien y bienvenidos sean de nuevo a este espacio de sano debraye y espectacular entretenimiento. Ha pasado ya mucho tiempo desde la ultima actualización y si bien los proyectos nunca se detienen, no ha surgido mucho material para compartir en este espacio.

En el ambito personal las cosas van caminando, lo cual ya es mucha ganancia. Cuando tenemos un poco de rato libre lo dedicamos a jugar un poco con la computadora y a aprovechar la conveniencia de las consolas portátiles. Recientemente desempolvé mi leal Nintendo DSi XL, ya que fue descubierto un exploit en la aplicación de la cámara fotográfica que posibilita a todas las consolas DSi que tengan instalada la ultima versión de firmware poder instalar la aplicación Unlaunch (que nos permite tener un bootloader personalizado) y el HiyaCFW (que nos permite sacarle mucho provecho a la consola).

Para la instalación del CFW, la mejor referencia que hay en internet es este sitio, que nos indica paso por paso el proceso partiendo desde una DSi en estado "stock" (sin modificaciones). Entre las ventajas que nos brinda tener el CFW instalado en la consola es que se arranca desde una emuNAND, por lo que se reduce drasticamente el riesgo de "brickear" o inutilizar la consola por estar experimentando con aplicaciones. Además nos permite arrancar juegos y aplicaciones desde la tarjeta SD, por lo que ya no se depende del uso una Flashcard (muchas de las cuales tienen un infame "Timebomb"). Para mayor estabilidad en el uso del CFW se recomienda usar una memoria SD de 2GB, o en su defecto si contamos con una más grande (nos referimos a memoria SD amable lector), crear una partición en ella de 2GB. Suena tentador colocar una memoria gigante (32 GB en adelante) para llenarla con aplicaciones y con copias de seguridad perfectamente legales de los juegos que hemos comprado, sin embargo he notado que el lanzador de aplicaciones que soporta memorias de tamaño superior a 2GB suele ser muy lento, además de que suele dar errores aleatorios con algunos temas, a veces se traba al invocar el NDS Bootstrap (el lanzador de aplicaciones NDS) y suele dar muchos problemas con las aplicaciones DSi. Otra ventaja del CFW es que permite arrancar algunos juegos de GBA haciendo uso del lanzador incluido en el firmware de la consola lo cual es una gran adición, considerando que la DSi ya no cuenta con Slot 2 y no puede cargar cartuchos de GBA.

Para jugar con la computadora suelo emplear un control de Xbox 360, debido a que es ergonómico para una gran variedad de juegos y el protocolo xinput definitivamente se ha consolidado como el estandar de facto en los juegos, al punto que ya la gran mayoría de los juegos ponen las indicaciones de los botones con los colores y las formas que se encuentran en los controles de Xbox 360 y de Xbone (siempre le llamaré a esa consola Xbone, no Xbox One y aludiendo al que fue su infame slogan no oficial antes de su lanzamiento, "Deal with it" X_x).

Durante mucho tiempo una de mis grandes pasiones fueron los controles de consolas y la posibilidad de poder adaptarlos a los dispositivos donde me resultaban de más utilidad. En este blog (este espacio antes de cambiarnos de dirección) compartí algunos adaptadores para conectar diferentes controles a consolas y a USB, utilizando el modo HID (Human Interface Device) implementado por la biblioteca V-USB para los microcontroladores AVR.

Comenté en estas líneas hace muchos ayeres que mi primer acercamiento a conectar controles de consolas en la computadora ocurrió por allá del año 2000, gracias a los drivers DirectPad Pro que conocí en algunas homepages de emulación. Esos drivers quedaron obsoletos en Windows NT/2000/XP, en donde la alternativa fueron los drivers PSXPad. Posteriormente estos adaptadores cayeron en desuso debido a la desaparición del puerto paralelo LPT1 de la gran mayoría de las computadoras a partir de la segunda mitad de la década de 2000. Recientemente han resurgido las interfaces "legacy" y ya no es complicado encontrar tarjetas madre con uno (incluso dos) puertos paralelos, PCI estándar e incluso varios puertos seriales (una computadora que armé y presumí en este blog contaba con la nada despreciable cantidad de cuatro puertos seriales). A pesar del resurgimiento físico de los puertos seriales y paralelos, son pocas las aplicaciones modernas que cuentan con los drivers necesarios para sacarles provecho, los sistemas operativos Windows de 64 bits no brindan drivers nativos para el manejo de puertos seriales o paralelos y como ya se requiere que los drivers cuenten con una firma digital, suena complicado que los drivers tipo PSXPad funcionen en computadoras modernas.

Una alternativa surgió cuando fue accesible crear dispositivos USB con la ayuda de microcontroladores como los PIC o los AVR. Gracias a ello comenzó a ser posible la creación de diversos dispositivos compatibles con los sistemas Windows NT/2000/XP/Vista/7/8/9(ahh, este no, perdón)/10. En microcontroladores con hardware y stack USB es posible implementar dispositivos xinput y se puede recurrir a muchos de los recursos de la comunidad como son las bibliotecas LUFA para AVR e implementaciones puntuales como las del fightstick realizado con un Teensy o la implementación de Nesvera con un STM32. Estos proyectos están destinados a crear un dispositivo que la PC detecta como un control de Xbox 360 y se comunica con el protocolo xinput para tratar de tener una mejor compatibilidad con juegos y sistemas operativos modernos. La desventaja de estos dispositivos es que no se pueden utilizar en las consolas Xbox 360 o Xbone, ya que no cuentan con la circuitería de seguridad necesaria para comunicarse con esas consolas. A pesar de que son proyectos admirables, su aplicación está delimitada de forma exclusiva a la PC.

Actualmente ya no cuento con consolas de videojuegos (salvo PS3), por lo que mi enfoque ya es la PC y los dispositivos USB. La idea de poder utilizar controles de SEGA Genesis o Sega Saturn en algunos juegos modernos de PC es muy tentadora, por lo que estuve barajeando las distintas posibilidades que se me presentaban. Por una parte, ya es casi imperativo que la comunicación sea con el protocolo xinput, lo cual deriva en dos alternativas, software y hardware.

Las opciones por hardware ya las hemos repasado. Por cuestiones de costo, alcance y versatilidad la opción ganadora sería utilizar una tarjeta de desarrollo STM32 "Blue Pill" y un programador STM, entre ambos dispositivos el costo no rebasa los $7 USD. Incluso llegué a comprar esos ingredientes para ponerme manos a la obra, sin embargo el hecho de no encontrar mucha documentación para iniciar desde cero y "directamente en los fierros" del STM32 provocaron que el entusiasmo se esfumara. Otra alternativa más familiar era utilizar un Arduino Pro Micro con LUFA, pero el Arduino suele ser mucho más caro y limitado que el STM32.

Por software la opción preferida por muchas personas es el TocaEdit Xbox 360 Controller Emulator. Se trata de una aplicación en la cual se configura el mapeo que deseamos que un control DirectInput, MMsystem o RawInput tenga con respecto a un control de Xbox 360. El programa que genera una DLL y un archivo de configuración, los cuales se deben de copiar a la raiz de la aplicación en la cual deseamos que nuestro control simule un mando de Xbox 360. La ventaja de esta alternativa es que nos permite un ser muy especificos con las aplicaciones en las que se utilizará este emulador. La desventaja es que para cada aplicación o juego en el que deseamos que funcione, deberemos copiar los archivos necesarios y si nos vemos en la necesidad de cambiar de mando hay que reconfigurar y copiar de nuevo a cada aplicación los cambios.

Otras personas prefieren (y no me explico el porqué) utilizar controles de PS3 o PS4 y con ayuda del SCPServer logran que estos controles simulen en la PC un control de Xbox 360. Una opción menos conocida la representaba el programa Xoutput, que también utilizaba el SCPServer pero nos permitía mapear cualquier tipo de control (no solo del tipo DualShock), creaba un control virtual de Xbox 360 que funcionaba en todo el sistema. Este programa funcionaba muy bien pero tenía la desventaja de que no funcionaba el modo exclusivo, es decir, si una aplicación o juego soportaba tanto controles xinput como DirectInput, cada comando se detecta por duplicado (una vez por la interfaz xinput y otra por DirectInput) lo cual provocaba muchos conflictos.

Después descubrí un proyecto llamado ViGEM el cual no es un adaptador o mapeador como tal, sino un backend y una serie de drivers para emular dispositivos de juego en la PC. No cuenta con un instalador a la usanza (o sea, un cómodo Setup.exe) ni con una interfaz gráfica para su uso. En realidad es una herramienta especializada para desarrolladores y no está pensada para usuarios finales. Durante mucho tiempo visité de forma diaria la página del proyecto, esperando el día que en se lanzara un instalador y una interfaz de usuario amigable para usar el proyecto. El tiempo pasó y eventualmente surgió una prueba de concepto en la cual se vinculaba el uso de x360ce con ViGEM, en el cual se mapeaba un control USB y la computadora era capaz de verlo como un control de Xbox 360 en todas las aplicaciones. Fue una prueba de concepto muy prometedora, sin embargo nunca fue lanzado como algo de consumo para el usuario final.

Pasó el tiempo e inclusive llegué a olvidar ese proyecto. Sin embargo esta semana probé un juego llamado River City Girls (secuela del juego River City Ransom de NES). Se trata de un juego con mecánicas que aluden mucho a las de juegos de consolas de 8 y 16 bits, por lo que tuve el deseo de jugarlo con un control de SEGA Genesis. Estaba a punto de utilizarlo de forma directa con un adaptador que armé con un Attiny461, ya que el juego soporta controles DirectInput. Sin embargo decidí buscar una descarga del programa Xoutput para mapear el control y me encontré con un fork que utiliza ViGEM como backend en vez del SCPServer.

Despues de instalar los prerrequisitos, los drivers, ViGEM, Xoutput, configurar el HID Guardian y finalmente mapear el control funcionó a la perfección. El control de SEGA Genesis, conectado a la computadora a través de un simple y económico adaptador creado con V-USB y un Attiny461 es detectado por Windows como un control de Xbox 360, lo que abre muchas posibilidades para poder disfrutarlo con una amplia gama de juegos y emuladores, además de que nos ahorra el paso de mapear en la gran mayoría de aplicaciones.

El proceso de instalación detallado en la página de Github del fork de Xoutput es correcto y funciona a la perfección. Quizás es un poco engorroso, sobretodo la parte de instalar el HID Guardian, pues se requiere de la instalación manual del driver por medio de devcon y Powershell, pero el resultado sin lugar a dudas vale mucho la pena, sobretodo porque la faena de instalar y configurar Xoutput se debe de realizar sólo una vez y nos permite utilizar no sólo los controles y los adaptadores hechos con V-USB, sino cualquier tipo o clase de control original o genérico, inclusive el teclado de la PC.

He probado también con un control genérico con forma de mando de SEGA Saturn que mi amigo Dash "Shingo" Bandith me regaló algunos muchos meses y ha funcionado de maravilla. Esto además fue muy ventajoso, pues dicho control además de tener un mapeado muy extraño, no contaba físicamente con el botón 6 (mapeado a RB en el control de Xbox 360) lo que limitaba mucho su uso en los juegos o emuladores.

Pues bien, espero que esta sesión de debraye en la que simplemente les comparto este tip les haya agradado. En esta ocasión no comparto ligas directas a archivos, ya que se trata de proyectos que aun están en constante cambio y desarrollo, por lo que una revisión puede volver obsoletos los archivos y el proceso de instalación. Además espero que en el futuro cercano el proceso de instalación sea optimizado para ser más amigable con el usuario "de a pie", pues se trata de un proyecto de mucha utilidad. Literalmente, es un proyecto que le ha enseñado a nuestros viejos adaptadores hechos con V-USB, Atmegas y Attinys a hablar un nuevo idioma y los ha sacado de la obsolescencia para colocarlos de nuevo como opciones para el presente y el futuro.

Ha sido un placer saludarles, estamos en contact.

domingo, 14 de abril de 2019

Celeron Pi PC

Hola, ¿Cómo han estado?

Espero que se encuentren bien. Por mi parte esta ausencia tan prolongada se ha debido a que en la vida cotidiana han acontecido muchos sucesos y ha cambiado mucho la situación de su servidor. Hemos decidido pasar a saludar debido a que no queremos abandonar este proyecto.

Somos conscientes que la entrada anterior tampoco fue altamente provechosa. Inclusive el día de hoy tampoco traemos proyectos bajo el brazo para compartir. Así que en esta ocasión haremos una sesión de debraye "freestyle" mientras se comprimen y se queman en disco unos cuantos respaldos. Recuerden siempre hacer respaldos periódicamente de sus archivos más importantes y sobretodo, probar que dichos respaldos se hayan hecho correctamente.

En meses recientes han circulado en internet auténticas historias de terror en la que empresas (y muy seguramente muchos usuarios particulares y anónimos) han sido víctimas de "spearphishing" y "ransomware". En tiempos pasados los virus y malwares se enfocaban en destruir información y en realidad, en molestar al usuario de computadoras. En la actualidad la motivación detrás de los ataques informáticos ha cambiado y ahora resulta más rentable extorsionar y defraudar a los usuarios que caen en las trampas de los malhechores del internet.

Antiguamente la mejor forma de protegerse de los ataques informáticos era utilizar un antivirus y tener costumbres sanas de uso de la computadora. En la actualidad los riesgos, los vectores (y también las superficies) de ataque son muy diferentes de las de hace unos 20 años (épocas de Windows 9X y modems dial-up). La velocidad con la que se propaga la información en internet y la conectividad permanente hacen que los dispositivos estén en constante riesgo de ser atacados por alguna amenaza que ni siquiera los antivirus mejor desarrollados pueden detectar.

Es por ello que actualmente el contar con buenos hábitos de uso de la computadora es más importante para mantener un entorno seguro y hacer respaldos periódicos permite tener una "poliza de seguro" en caso de que seamos victimas de algún ataque informático o nuestro medio de almacenamiento sufra alguna avería. Como sabemos, lo importante de una computadora es la información que en ella se genera y se procesa. Si se nos daña un CPU, una GPU, o una tarjeta madre se puede conseguir hardware a precios acotados que nos permita poner en marcha de nuevo la computadora. Pero si nuestro medio de almacenamiento pierde la información, en la mayoría de los casos no hay marcha atrás y se tiene que recurrir al último respaldo que se haya hecho. De nosotros depende que ese respaldo sea sumamente útil (si se trata de un respaldo muy reciente) o uno simplemente anecdótico (si data de hace unos cuantos años).

El qué, cómo y cuándo respaldar es elección de cada usuario. En lo particular, prefiero hacer copias de todos los archivos que considero importantes en discos ópticos, comprobar que funcionan, colocarles fecha y almacenarlos. En este caso tengo muchos archivos repetidos y no aprovecho de la forma más óptima el espacio en los discos, pero me resulta mucho más rápido de hacer y si uno de los discos deja de funcionar, es muy probable que en otro tenga gran parte de la información. Además, el costo de los discos ópticos ya es muy bajo.

Por otra parte tengo respaldos menos organizados en discos duros externos, los cuales son muy cómodos pero que considero vulnerables, pues siempre dependen de que el disco duro no se estropee.

Actualmente las unidades de estado sólido (SSD) están teniendo un auge sin precedentes debido a que la memoria de almacenamiento NAND TLC se ha hecho muy barata y tiene densidades de almacenamiento bastante altas. El mercado se ha inundado este último año de unidades SSD de bajo costo (y también hay que decirlo, bajo rendimiento y baja resistencia) que las están posicionando en muchos equipos de gama económica (los más comunes en el mercado).

Si bien, en teoría los SSD tienen una taza de fallos inferior a los discos duros, son también propensos a fallar, y con ello hacer que el usuario pierda la información que tenga almacenada en esas unidades. Aún no existe una tecnología que nos libere a los usuarios la responsabilidad de salvaguardar nuestros datos, pues todo aparato fallará tarde o temprano de forma irremediable.

Una de las costumbres que tenia era la de tratar de asegurarme que todos los aparatos que consideraba importantes contaran con piezas de reemplazo suficientes para mantenerse funcionales de por vida. Esto me llevaba a acumular gran cantidad de piezas y refacciones que probablemente en el futuro fuere a necesitar. Es por ello que en alguna ocasión llegué a tener varios Dreamcast, PS2, famiclones y accesorios varios, pues pensaba tener un inventario de refacciones para poder reaccionar ante cualquier contingencia. Eso suena muy bien en el papel, sin embargo se convirtió en una manía que ocupaba gran parte de mi tiempo libre y de mi dinero.

Por desgracia muchos de esos aparatos y consolas dejé de usarlos desde hace muchos años y a pesar de ello en mis visitas a bazares o tiendas de electrónica si veía algo que se pudiere convertir en un proyecto orientado a esos objetos gastaba dinero, adquiría piezas y terminaba acumulando aún más cosas. En ocasiones me inquietaba la posibilidad de que los aparatos que tenía guardados fallaran de forma repentina y que cuando quisiere utilizarlos o ponerme manos a la obra con alguno de los proyectos que había planeado tuviere que invertir más recursos. Afortunadamente todo ello ya es cosa del pasado, pues decidí deshacerme de todas las consolas y aparatos retro que tenía. Eso tuvo un efecto liberador que pocas veces había experimentado, pues de repente y de un plumazo todos esos pendientes, piezas, posibles adaptaciones y preocupaciones se esfumaron de mi vida y me permitieron dormir más tranquilo.

Aún cuento con las consolas portátiles y PS3, tengo la intención de usarlas mientras duren, pero ya no tengo la obsesión de mantenerlas funcionando por la eternidad, sobretodo porque ya los aparatos modernos están diseñados para no durar mucho más que unos cuantos años. Las consolas modernas suelen contar con un sistema grabado en memorias flash, que les permite arrancar, controlar periféricos, gestionar la seguridad y ejecutar los juegos. Las memorias flash tienen un tiempo de vida limitado de retención de datos, con el paso de los años los electrones atrapados en cada celda de la memoria y que le permiten mantener su valor se escapan, lo que degrada las celdas y hace que el valor grabado (0) se revierta a su estado original (1), se corrompe la información del sistema y de forma inevitable fallará sin importar que se haya cuidado con el máximo esmero posible. Todo ello descontando los demás componentes que son más propensos a fallar durante el ciclo de vida de un aparato como las fuentes de poder, los láser, los motores, los conectores, entre muchos otros.

Con lo anterior no digo que la noble labor de mantener, reparar o restaurar aparatos es una causa perdida, por el contrario, es una labor que requiere toda la dedicación, recursos y capacidad que se le puedan canalizar. Sin embargo para un particular que no le da mucho uso a esas cosas, el costo monetario, espacial y temporal suele rebasar los límites prácticos para llevar esa labor a buen puerto.

Y a pesar de lo que he plasmado en estas lineas, aun tengo una buena parte de mis manías intactas, simplemente he tratado que el costo espacial, monetario y temporal se mantenga contenido y no obstaculice demasiado mi vida cotidiana. Por el momento mi enfoque se ha centrado en las computadoras de bajo rendimiento, entre las que se encuentran la Orange Pi, las Thinclient, las laptop viejas y la computadora de retazos que algunas veces he mencionado en el blog.

A raíz de los cambios que han tenido lugar y que mencionaba al principio de la entrada, he vuelto a tener la posibilidad de utilizar una computadora de escritorio para trabajar, así que decidí sacarle provecho a la computadora de retazos para el uso cotidiano, ya que tiene una potencia de procesamiento aceptable y mis requerimientos no son tan elevados. En general la experiencia de uso con la computadora de retazos ha sido buena, sin embargo un detalle bastante molesto es que en los meses más calurosos del año los ventiladores de esa computadora suelen funcionar a muy altas revoluciones y hacen bastante ruido, lo que hace bastante incómodo utilizarla por las noches o para escuchar cosas desde las bocinas (sin utilizar audífonos). La primera alternativa para reducir la temperatura interna del gabinete fue hacer unos agujeros en la tapa lateral a la altura del procesador, para que el ventilador pudiere soplar aire fresco sobre el procesador. Esta adecuación sirvió bastante bien para enfriar el procesador, sin embargo el problema del calor acumulado en la parte inferior del gabinete donde se encuentran las tarjetas de video, audio y red no mejoró, además de que noté que el chipset (el cual solo cuenta con un disipador sin ventilador) se calentaba de forma muy notoria.

Pasó por mi mente invertir un poco más de tiempo en el Thinclient para poder utilizarlo como computadora de forma cotidiana, por lo que pedí de China el cable IDE44 necesario para poderle conectar una unidad de almacenamiento más grande que el módulo DOM de 1GB con el que viene equipado. Sabía que ademas de ese cable iba a ser necesario conseguir una unidad de almacenamiento con interfaz IDE44, entre las cuales consideré una tarjeta Compact Flash o una unidad SSD con adaptador. Lo que si iba a requerir un desembolso extra de dinero era el ampliar la memoria a los 2GB de RAM, ya que el Thinclient sólo traía un módulo de 1GB y resultan bastante acotados para el uso cotidiano.

Mientras estaba buscando alternativas para usar el Thinclient me topé con las tarjetas madre que venden con procesador integrado. Previamente tuve acceso a una tarjeta con un procesador Celeron 1037U el cual consumía muy poca energía, tenía un desempeño decente y no hacia demasiado ruido al trabajar. La tecnología a avanzado un poco en ese aspecto y ahora se encuentran incluso tarjetas con ventilación pasiva, que sólo hacen uso de un disipador para mantener estable la temperatura del procesador. Además de ello algunos de estos sistemas son del tipo SoC (System on a Chip) que integran todos los componentes de la computadora en un solo chip.

Después de meditarlo bastante tiempo, hacer cuentas y esperar que todo saliera bien opté por comprar una tarjeta con un SoC Celeron n3150, el cual cuenta con un procesador de 4 núcleos y un TDP de 6W. En el papel el rendimiento y el consumo se ven parecidos al de aquél Celeron 1037U que tuve hace tiempo, pero la diferencia radica en que el Celeron 1037U debe ser apoyado con un chipset para brindarle conectividad a dispositivos, mientras que el Celeron n3150 tiene todo integrado. La configuración SoC también contrasta con la arquitectura de los sistemas basados en Atom en sus primeras generaciones, en los cuales el procesador tenía un consumo sumamente bajo, pero el chipset era voraz y en ocasiones consumía casi 10 veces más que el procesador.

Otra de las ventajas que vi en la tarjeta con el Celeron n3150 es que contaba con conexiones tipo SATA, lo cual facilita enormemente la labor de conseguir un medio de almacenamiento de capacidad suficiente. Curiosamente el cable IDE44 de China llegó el mismo día que la tarjeta madre con el Celeron n3150, así que tenía que tomar la decisión de cuál sistema era el que iba a utilizar. Me decanté por el del Celeron n3150 ya que me brindaba todas las ventajas que buscaba en el Thinclient, como muy bajo consumo, potencia suficiente para el uso cotidiano y uso silencioso, pero me facilitaba el armado y la puesta a punto.

Después de armar la computadora y estarla usando por un par de semanas estoy muy satisfecho con el rendimiento que ofrece. Pese a que cuenta con un conector PCIe para tarjeta de video, he optado por utilizar el video integrado para mantener el consumo del sistema al mínimo. En el uso cotidiano se siente con una potencia similar a la de la computadora que sustituyó (un Core2Duo E4600), en algunas tareas se siente más ágil (como para navegar en internet y ofimática) mientras que en otras (emuladores y juegos) tiene un rendimiento más bajo. Precisamente estuve probando los juegos que funcionaban bien en la C2D E4600 (que estaba acompañada de una tarjeta de video HD8470) y pues juegos tan básicos como Ultra Street Fighter IV no funcionaron a buena velocidad, aún bajando todo al mínimo. MAME tampoco fue capaz de emular con fluidez juegos de los sistemas ZN1 y ZN2. Posteriormente probé emular el sistema CPS3 y ese si funcionó correctamente, por lo que el rendimiento en emuladores de este procesador es muy similar al que se obtiene con una Orange Pi PC.

La gran ventaja de este sistema es que funciona con arquitectura x86_64, por lo que tenemos acceso a una variedad mucho más amplia de software que con una Orange Pi (o Raspberry Pi), además de que soporta virtualización y podemos correr la máquina virtual de Windows 98 que preparamos en una entrada anterior del blog. En cuanto conexiones de periféricos contamos con puerto PS2, varios USB 2 y USB 3, puerto PCI de 32 bits, dos PCIe, salida VGA, HDMI, dos puertos seriales y un puerto paralelo por si alguien aún lo extrañaba. Así que se trata de una máquina muy versátil con un consumo muy bajo y que para mi resulta simplemente ideal.

Si bien para muchas personas el rendimiento de un sistema tan básico puede ser insuficiente, para mi ha resultado simplemente perfecto, ya que no pretendo forzar ese sistema tratando de que haga cosas que están fuera de sus posibilidades.

Por el momento el acondicionar aún más el Thinclient quedará en espera, ya que el costo de las piezas necesarias para optimizarlo es alto y no entregará el rendimiento que ya disfruto con la Celeron n3150, la cual hemos decidido apodar como la "Celeron Pi PC".

Bueno, ya se han terminado de hacer los respaldos así que me despido, estamos en contact!

¡Feliz 2021! El retorno del debraye pandémico (Edición "Rompemuros").

Hola, ¿Cómo han estado? Espero que estén con bien, con buena salud y con muchas ganas de aburrirse una vez más con una ronda de debrayes. Es...