sábado, 2 de octubre de 2021

¡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. Este año ha sido una verdadera montaña rusa para su servidor en la que ha pasado de casi todo en cuestiones personales, familiares y de trabajo. Afortunadamente en cuestiones de salud todo ha marchado muy bien gracias a la estricta cuarentena a la que me he sometido.

La última entrada en este recinto de la procrastinación y las malas ideas data de hace más de un año, lo cual me apena porque en realidad fue una entrada muy floja que pretendía fuera la introducción a una serie de entradas en las que iba a compartir mis aventuras con la TwinPOS G7 pero nunca me dí el tiempo de documentar nada... Ha pasado un año y ahora ya ni siquiera uso más la TwinPOS (está acá en mi recámara/taller/oficina/laboratorio, pero le ha donado sus unidades de almacenamiento a la computadora que uso actualmente). Voy a tratar de repasar lo que ha ido aconteciendo en este año y les compartiré aquello que considere relevante o que pueda serles de alguna utilidad.

Comenzaremos con un tema que en esta pandemia tomó a muchas personas por sorpresa y fue la necesidad de incrementar la robustez de sus redes domésticas.

Personalmente antes de la pandemia no prestaba demasiada atención a la red doméstica con la que me conectaba al internet. Me limitaba a cambiar el SSID del router que el proveedor de servicio me brindaba, cambiar las contraseñas de administrador y conexión, colocarlo en un lugar donde brindara una cobertura de red decente para la mayoría de la casa y listo. Sin embargo al cambiar mi trabajo a formato remoto me resultó necesario asegurar que mi conexión a internet fuera estable y con suficiente velocidad para trabajar de forma efectiva.

Esta parte del debraye me remonta justamente a hace un año, cuando estaba buscando alternativas para dotar de conexión de internet a la TwinPOS. Aclaro que mi recámara/taller/laboratorio/oficina no se encuentra muy cerca del router que el proveedor de internet instaló en casa, por lo que hacer un tendido de cable UTP no es conveniente. En un principio pensé aplicar la filosofía "menos es más", así que decidí probar suerte con un adaptador WiFi USB muy básico marca "Ele-Gate" (aunque he visto el mismo tipo de módulo en múltiples marcas).

El primer invitado a este retorno a los debrayes.

Internamente se trata de un adaptador marca Mediatek (célebre por sus SoC de bajo costo para celulares y tabletas de marca genérica) que debido a su diminuta antena me presentaba desconexiones aleatorias con mucha regularidad.

Detalle del interior del adaptador (reverso).

Detalle del interior del adaptador (frente).

Traté de mitigar esas desconexiones colocando una antena de un cuarto de lambda (en términos menos técnicos un cable soldado a la antena que tiene el módulo en el PCB) y las desconexiones disminuyeron notablemente. Sin embargo un breve movimiento o jalón a la antena/cable provocaba que se desprendiera del PCB, por lo que decidí renunciar a esa opción, revertir el adaptador a su forma original y probar una alternativa más robusta.

Nuestro segundo invitado es un verdadero caballo de batalla.

Entre mis triques cuento con un adaptador WiFi USB Tp-Link WN722N. Este es un modelo muy viejo que en su interior usa un chip marca Realtek. Suele funcionar bastante bien y gracias a la antena tiene muy buena recepción. Estuve utilizando este adaptador unos cuantos días pero empece a notar que si se le somete a uso intenso (descargar varios GBs de información en poco tiempo) se calienta y el adaptador comienza a trotar (funcionar a baja velocidad) o pierde la conectividad.

Hace tiempo tuve un adaptador WiFi USB más robusto también marca Tp-Link modelo WN8200ND que podría mitigar los problemas con los que me estaba topando con las alternativas que había estado probando (del cual sólo les puedo mostrar una foto stock para fines ilustrativos, pues se lo regalé a mi hermano hace mucho tiempo). Ese adaptador cuenta con dos antenas desmontables (por lo que tiene buena cobertura) y está montado en una carcasa que le permite disipar muy bien el calor.

Este es un invitado "virtual", ya no cuento con este adaptador.

Sin embargo el precio actual tiene ese adaptador lo hace poco atractivo (poco más de 20USDs, casi la mitad del precio del TwinPOS). Llegado a este punto, entre mis opciones estaba contemplando perforar la carcasa del adaptador WN722N para permitirle trabajar con más frescura y colocar cerca de la parte trasera del TwinPOS un mini ventilador cuando en el blog de Guru encontré la que podría ser una solución muy atractiva a mi dilema. En una de las entradas cuenta su aventura tratando de reparar el firmware de un access point marca D-Link DAP-1155 y menciona que lo utilizaba para brindar conexión inalámbrica a dispositivos que cuentan con tarjeta de red alámbrica.

Eso despertó mi curiosidad y encontré que algunos access point del mercado se pueden configurar en diferentes modos, entre los cuales los más comunes son:

  • Access Point: El dispositivo recibe conexión a una red (red 1) por medio de un cable y emite una red inalámbrica (red 2) que le permite a otros dispositivos que se conectan a la red 2 acceder a la red 1.
  • Repetidor: Muy similar al modo Access Point, solo que la conexión a la red 1 se hace de forma inalámbrica y la red 2 puede compartir el SSID de la red 1.
  • Puente: Es un modo contrario al modo Access Point, el dispositivo recibe conexión a una red (red 1) por medio de una conexión inalámbrica y le permite crear una red alámbrica (red 2) para conectar otros dispositivos a la red 1. Si sólo se conecta un dispositivo a la red 2 funciona prácticamente como un adaptador WiFi Ethernet.

Mi esperanza era que un viejo router marca Linksys WRT55AG que se compró hace muchos años me brindara la opción de poderlo configurar en modo puente, sin embargo la suerte no estuvo de mi lado.

Nuestro cuarto invitado es un campeón de mil batallas, de la época del Xbox 360.

Pero no toda la esperanza estaba perdida. Existen un par de proyectos que desarrollan firmware personalizado para diferentes modelos de routers que les permiten ampliar sus capacidades y funcionalidad, se llaman OpenWRT y DD-WRT. Ambos proyectos tienen en su nombre las siglas WRT que aparecían en el modelo mi router, por lo que decidí revisar la lista de compatibilidad de ambos proyectos con la esperanza de encontrar WRT55AG ver.2 entre los dispositivos soportados... Sólo para llevarme la decepción de que mi router no contaba con la capacidad de almacenamiento ni de RAM necesarios para que funcionara alguno de esos firmwares.

En ese momento caí en la cuenta de algo que se me había pasado de largo todo este tiempo, las conexiones de red alámbricas e inalámbricas requieren de poder de procesamiento, no funcionan como los multicontactos eléctricos. Por lo que un dispositivo de red con más poder de procesamiento afectará de forma positiva la transferencia de datos y por el contrario, un dispositivo con poco poder la afectará de forma negativa.

Decidí buscar en el mercado un access point que tuviera un buen rendimiento, que pudiera configurarse en modo puente y que no estuviera excesivamente caro. Después de mucho buscar encontré en el mercado usado un buen candidato, un access point marca D-Link modelo DAP-1360 a un precio de 7 USD.

El quinto invitado es el héroe de esta historia.

Configurar este access point en modo puente es muy simple, primero hay que restablecerlo a sus valores de fabrica (presionando el botón "reset" que tiene en su parte trasera), conectar una computadora con un cable de red ethernet al access point e ingresar a la dirección http://dlinkap (los datos de ingreso vienen en la etiqueta inferior del access point). En caso de duda es conveniente leer el manual, que se encuentra en la página del fabricante o en mi respaldo personal.

Este access point se configura facilmente, ya que soporta DHCP tanto para conectarse a la red inámbrica como para el dispositivo que se conecta a la red alámbrica, así que sólo necesita que introduzcamos el SSID y la contraseña de la red a la cual deseamos que el puente se conecte para que el dispositivo conectado por cable pueda acceder a los recursos de la red inalambrica.

Algunos otros access points no soportan DHCP en la red alámbrica, en la red inalámbrica o en ambos, por lo que la configuración puede ser un verdadero desafío, sobretodo si el manual de usuario no aborda el tema. Mencionaré el caso específico del access point marca Zonet ZEW3003.

Y todo héroe necesita un villano, en este caso nuestro sexto invitado.

Este access point lo compré por menos de 2 USD, pero el vendedor amablemente me incluyó uno extra, por lo que en realidad costó menos 1 USD (como diría Bixby Snyder de Robocop "I'd buy that for a dollar!"). El manual de este access point se puede encontrar en varias páginas de internet o en mi respaldo personal pero no he hallado una página del fabricante, por lo es posible que sea un access point genérico remarcado (o "rebranded").

El truco (truco, porque es algo no documentado en el manual del access point) es que para que funcione el modo puente (en el manual lo llaman "Client mode") es necesario establecer manualmente la IP del access point dentro del segmento de red de la red inalambrica a la que deseamos que se conecte. Por ejemplo, supongamos que el router de nuestro proveedor de internet tiene la IP 192.168.0.1, deberemos primero establecer la IP del access point dentro de ese segmento (por ejemplo 192.168.0.200), aplicar los cambios y reiniciar el access point.

En ese momento perderemos la conexión desde la computadora conectada por cable para realizar la configuración con el access point, por lo que deberemos establecer la IP de la computadora que estamos utilizando dentro del segmento al que cambiamos al access point (por ejemplo 192.168.0.201). Esto debido a que en modo puente el DHCP del access point deja de funcionar de la forma esperada y tenemos que recurrir a establecer direcciones IP fijas.

Y bueno, este es un inconveniente menor, lo que convierte a este access point en un verdadero villano es su abismal rendimiento. La velocidad de descarga de cualquier archivo de internet está limitada a un máximo de 2 MB/s. Esto debido a su poca potencia, ya que al soportar conexiones inalámbricas 802.11 b/g debería tener una velocidad teórica máxima de 54 Mbit/s o 6.75 MB/s.

En caso de que usted, amable lector, se encuentre buscando dispositivos para conectar a su red inalámbrica le recomiendo que se decante por aquellos que soporten estándar 802.11 ac/n. Y también preste atención a las características del hardware de los dispositivos. Puede costar trabajo encontrar esa información en las páginas de los fabricantes o en "publirreseñas", pero hay sitios en los cuales hay personas que revisan el interior de los dispositivos y comparten sus hallazgos.

Desde que utilizo el DAP-1360 como "adaptador WiFi Ethernet rompemuros" he tenido muy pocos problemas de conexión, le coloqué unas antenas más grandes para tener una mejor recepción. Además he percibido que la carga en el procesador al navegar por internet es mucho menor que al utilizar un adaptador WiFi USB. Otro beneficio es que con mis configuraciones anteriores de conexión (USB WiFi o adaptador PCI/PCIe WiFi) mi velocidad máxima de descarga era de 5.8 MB/s, mientras que con el DAP-1360 es de 7.0 MB/s (sin cambiar plan de internet).

Como anécdota y para ejemplificar cómo en ocasiones el sentido común nos puede confundir. Hace unos meses uno de mis amigos comenzó a presentar problemas de conexión inalámbrica lenta en su computadora ubicada en una parte de su hogar. Vive en una casa muy grande, donde el router del proveedor de internet está colocado muy lejos del punto donde requería conexión. Para mitigar el problema hizo una extensión alámbrica del router a un access point más cercano al punto de interés, pero aún así presentaba lentitud (pues el access point aun así  quedaba muy lejos y no le brindaba muy buena cobertura). Le sugerí conectar su computadora a un access point en modo puente en una configuración similar a la que utilizo y posicionar ese puente en un lugar con buena cobertura (ya que en mis pruebas era una configuración satisfactoria), sin embargo me dijo que no debido a que se haría lenta su conexión.

Comparto esta experiencia, ya que existe el mito que si una señal de red es procesada por más nodos irremediablemente se degradará. Aunque el sentido común nos indicaría que es un razonamiento correcto, debemos considerar que al navegar por internet la información pasa por innumerables nodos antes de arribar a su destino (no existe una conexión directa hacia un ficticio "nodo central" de internet). Se experimentará una degradación notoria sólo cuando los dispositivos que procesen los datos tengan poca potencia (CPU poco potente, poca RAM, firmware poco optimizado, poca potencia de transmisión, etc). Por eso es importante tomarse el tiempo de investigar las características de cualquier elemento que conectemos a la red, pues de ello dependerá que se comporte como un héroe o como un verdadero villano.

Aquí terminamos esta dosis de debraye, espero poder saludarles con mayor regularidad y que les vaya muy bien.

¡Estamos en contact!

jueves, 3 de septiembre de 2020

NEC TwinPOS G7 (de Point of Sale, no de Piece of Sh*t X_x)

Hola que tal, ¿Cómo están?

Espero que se encuentren bien, sobreviviendo a la pandemia y a la nueva normalidad. Por mi parte las cosas han ido avanzando a un ritmo reducido, lo cual es natural dada la situación mundial por la que estamos pasando. 

Recientemente anunciamos que un Thinclient que compré hace algunos años dejó de funcionar de forma repentina y sin darme oportunidad de darle uso. Justamente se descompuso en un mal momento, en el cual requería contar con una computadora de bajo consumo.

La computadora que apodamos como Celeron Pi pasó a manos de mi madre, asi que me di la tarea de buscar ofertas de computadoras de bajo consumo y de tamaño reducido.

Mi primera intención era conseguir una Gigabyte Brix o una ECS Liva, ya que son computadoras de muy bajo consumo y muy pequeñas. Sin embargo los precios a los que se están vendiendo en la actualidad no las hacen atractivas, además de que los modelos más populares tienen rendimientos abismales y pocas opciones para incrementar su almacenamiento.

Ampliando un poco más los parámetros de búsqueda encontré una computadora que me pareció tan extraña, que decidí comprarla por impulso. Se trata de la computadora de una unidad de punto de venta NEC Twinpos G7. Esta computadora tiene un factor de forma singular, ya que no es de los estándares ATX o BTX. La unidad que compré viene equipada con un procesador Intel Core i3 330E de primera generación (dos núcleos, cuatro hilos de ejecución) y una memoria RAM DDR3 de 4GB. Por fortuna tenía entre mis piezas otra memoria de 4GB, por lo que completarle los 8GB mínimos necesarios para trabajar con comodidad no requirió de mayor inversión.

Pese a que esta computadora no traía unidad de almacenamiento, el vendedor indicó que contaba con dos bahías para unidades tanto de 2.5" como de 3.5". Eso es una gran ventaja, ya que por ejemplo los Thinclient o las Brix sólo permiten la instalación de una sola unidad de 2.5", lo cual nos orilla a colocar un SSD de gran capacidad (con su respectivo costo) para poder utilizar la computadora de forma cómoda o recurrir a un lento HDD (la mayoría de los de 2.5" usan la lenta tecnología SMR) y batallar con su lentitud de forma cotidiana. En el caso del Twinpos, venia en una las bahías un caddy para colocar una unidad de 2.5" y un solo cable combinado SATA/alimentación.

Bahías del TwinPOS

Debido a la construcción del chasis de esta computadora no es posible colocar y fijar un HDD con tornillos, a menos que nos pongamos a realizar perforaciones, así que para aprovechar las bahías es necesario colocar las unidades en caddys que nos permitan fijarlas y retirarlas cuando sea necesario.

Caddys

Mi intención con esa computadora era utilizar una unidad SSD para la instalación de los sistemas operativos y aplicaciones, en conjunto con un HDD de 3.5" para tener un buen compromiso entre velocidad y capacidad de almacenamiento.

El primer punto a resolver es el fijar la unidad de 3.5" en una de las bahías de la computadora, para lo cual me serví de unos rieles que venian de regalo en una ocasión de compré unas unidades SSD de 64GB de segunda mano. Esos rieles no eran de la medida exacta que necesitaba, pero un poco de trabajo con unas pinzas de corte y una navaja me permitió adaptarlas de forma satisfactoria.

Caddy y rieles adaptados

El otro punto a resolver era la alimentación para la segunda unidad de almacenamiento, ya que la fuente de alimentación no brinda conectores SATA. La alimentación a las unidades se toma desde unos conectores en la tarjeta madre, de forma similar a como ocurre en las consolas XB360 y XBone. El conector de alimentación tiene una forma peculiar, pero es bastante similar a la de los conectores de alimentación que usan los FDD (Floppy). Así que me puse a adaptar un conector de alimentación de floppy con la ayuda de una navaja, un cautín y unas pinzas hasta que obtuve la forma requerida. En el otro extremo de los cables coloqué un conector SATA, basándome en el código de colores del cable que venía con la computadora.

Izquierda: Cable de alimentación casero.

Afortunadamente estas labores de bricolaje fueron satisfactorias y pude colocar ambas unidades de forma fiable en el equipo. Me dispuse a instalar Windows 7, así que arranqué la computadora con un USB de instalación, esperé un momento para que comenzara la instalación, luego esperé más y más, esperé cerca de tres horas y la computadora se quedó en la pantalla que decía "Iniciando la aplicación de instalación". Otra desagradable sorpresa que me llevé es que los ventiladores del equipo hacían un ruido bastante fuerte y molesto en todo momento, además de que el gabinete completo se sentía muy caliente al tacto.

Revisando la arquitectura del gabinete se puede notar que no tiene tomas de aire frío ni salidas de aire caliente, por lo que la unidad conserva todo el calor que generan el procesador y las unidades de almacenamiento. Para resolver ese inconveniente realicé unas perforaciones en la tapa, para crear una ruta de entrada al aire frío y una de salida al aire caliente. En un principio estaba escéptico a esta solución, sin embargo los resultados superaron mis expectativas.

Perforaciones en el gabinete.

Antes de reintentar la instalación del sistema operativo decidí darle mantenimiento a los ventiladores y cambiar la pasta térmica al CPU. En este punto me llevé otro par de sorpresas, la primera es que los ventiladores que tiene esta computadora son hidroneumáticos, por lo que desmontarlos para darles servicio no es una faena que pueda realizar con las herramientas que tengo, así que me tuve que limitar a limpiarlos. La otra fue encontrarme con que alguien en algún momento trató de darle servicio al equipo y dejó el CPU sin pasta térmica, con varios rayones y con las esquinas del die de silicio estrelladas. Debo aclarar que el procesador se encuentra soldado a la tarjeta madre. Viendo esto, es posible que la incapacidad de instalar el sistema operativo se debiera a un daño en el CPU. Para contrarrestar el ruido excesivo que producen los ventiladores es posible ajustarles el ciclo de trabajo y la temperatura objetivo en el apartado SMART FAN de la BIOS (entramos a ella presionando F1 durante el arranque y después seleccionar la opción ENTER BIOS SETUP).

Una vez realizado el mantenimiento y limpieza me dispuse a realizar la instalación de Windows 7, pero en esta ocasión coloqué el SSD en otra computadora, inicié la instalación, al momento del primer reinicio apagué la computadora y devolví el SSD al Twinpos para proseguir la instalación sin inconvenientes.

Tarjeta madre TwinPOS.

En este punto las cosas ya iban caminando con más soltura, aunque quedaban dos grandes pendientes. El primero es conectar la computadora a internet de forma inalámbrica, para lo cual tuve que utilizar un adaptador externo USB Wifi, ya que la tarjeta madre del Twinpos no cuenta con ranuras PCI, miniPCIe o PCIe. El otro pendiente lo representaban los drivers de audio, video y red cableada (por si en el futuro existe la opción de usarla). Después de mucho buscar en internet di con los drivers necesarios, ya que no se encuentran en la página del producto de NEC, ni tampoco están disponibles para su descarga en el sitio de Intel por ser ya una arquitectura legacy. Los drivers que encontré se encuentran acá.

Ahora si, con todos los pendientes resueltos procedí a instalar Linux Mint y a probar el rendimiento en algunos juegos y emuladores, llevándome algunas sorpresas con los resultados.

La primera muy desagradable sorpresa fue que las versiones modernas de GZdoom no funcionan, las legacy pueden arrancar pero se traban ya sea al salir o al iniciar un nuevo nivel. Otra desagradable sorpresa fue que Guilty Gear XX se estrella al tratar de cargar la pantalla de selección de peleador. Por otra parte usando el emulador MAME no es posible jugar el juego Fighting Layer a 60 cuadros por segundo, se queda rondando los 40 cuadros por segundo. Una vez superadas las malas noticias, es posible jugar juegos de SEGA Naomi a 60 cuadros por segundo usando el emulador NullDC, juegos como QOH99, QOH2001 y Melty Blood Actress Again Current Code funcionan perfectamente. Los juegos de placas ZN1 y ZN2 funcionan perfectamente con el emulador Zinc.

Así que en varios aspectos es como un Thinclient, pero con espacio para alojar unidades de almacenamiento, una ventilación activa bastante robusta y además ofrece decodificación por hardware de códec h.264 MAINLINE, por lo que tiene buena flexibilidad.

Sin embargo no recomendaría este tipo de computadoras para HTPC, ya que Youtube y sitios de streaming hacen que el procesador trabaje casi al limite de su capacidad, por lo que la temperatura del equipo sube mucho y los ventiladores comienzan a hacer mucho ruido.

En la parte trasera hay varios puertos USB, algunos marcados con la leyenda 24V y 12V, sin embargo es seguro conectarles dispositivos USB normales, ya que esos voltajes altos sólo están presentes en una extensión del conector, no son parte del conector estándar.

Detalle de los USB de 24V y 12V.

Sin lugar a dudas son equipos bastante buenos para labores de oficina y uso cotidiano y si se consiguen a bajo precio pueden ser buenas opciones. A precios altos mejor optar por otros equipos que nos brinden un mejor rendimiento y mayores opciones de expansión, por lo menos en el apartado gráfico.

Aprovechamos esta entrada para rendirle homenaje a otra personalidad que ha partido en este 2020, Grant Masaru Imahara, que en paz descanse.

Manténganse sanos, cuídense mucho y estamos en contact!

sábado, 6 de junio de 2020

Nueva normalidad

Hola, ¿Cómo están?
Espero que se encuentren con bien y con salud. Estos últimos meses han sido sin lugar a dudas un reto bastante duro para la mayoría de la humanidad. Por fortuna acá las cosas van caminando con relativa normalidad.
A pesar de que ya han pasado algunos meses, aun siento cercano el fallecimiento de una de las personas que a través de su trabajo me inspiraron de niño a elegir mi vocación. Me refiero a Gus Rodriguez, quien debido a una complicación por un extraño cáncer de pulmón falleció el pasado 10 de abril de 2020. A pesar de que ya no seguía de cerca sus proyectos mas recientes, la noticia de su fallecimiento caló bastante hondo en mi mente. En este blog le hemos rendido tributo de forma constante a la influencia de su trabajo en la revista Club Nintendo con algunas frases y "huevos de Pascua" en algunas entradas que seguramente los fans que llegaron a leer la revista han identificado. Y desde aquí aprovechamos para agradecer el legado que ha dejado para mucha gente que fuimos inspirados por su trabajo.
La pandemia también se ha cobrado la vida de otras personas como artistas, deportistas, comediantes y familiares lejanos, por lo cual necesitamos mantener las medidas sanitarias necesarias para evitar ser víctimas del COVID19 y poder seguir disfrutando de la vida.
Respecto a los proyectos relacionados con videojuegos, pues han estado en estado de pausa indefinida. A pesar de que el confinamiento por la pandemia me ha dado la oportunidad de tener más tiempo libre, debido a situaciones personales he decidido aprovechar ese tiempo de forma diferente a la acostumbrada, además de que me he tenido que replantear las prioridades de mi vida.
Aunque como siempre tenemos actualizaciones. La primera es un poco triste, ya que después de muchos meses me disponía a tratar de incrementar el almacenamiento de mi Thinclient T5730, sin embargo me llevé la desagradable sorpresa de que se ha averiado. El equipo en cuanto recibe alimentación enciende todos los LEDs y no arranca ni muestra imagen alguna, falla que me ha recordado los infames "LEDs azules de la muerte" que aquejaban a las laptops de la época de ese Thinclient. Así que desgraciadamente eso ha marcado el fin de la aventura con ese aparato, que si bien fue entretenido de configurar y probar, me deja un mal sabor de boca el no haberlo aprovechado prácticamente para nada salvo pruebas.
La otra es que por fin, muchos años después le estoy dando uso a un amplificador de audio de baja potencia que me armé. Todo comenzó justo después de los sucesos descritos en la entrada donde me quejaba de una estafa que pasé con la compra de unas bocinas, en la cual anticipé que me estaba encontrando experimentando con algunos amplificadores. Pues bien, como en esa época aún era estudihambres y AG Electrónica era una empresa menos rastrera de lo que es ahora me di la tarea de armar un amplificador con el menor costo posible. Uno de los circuitos que encontré son los amplificadores TA7368P. Los que conseguí eran "New old stock" de la marca Toshiba fabricados en Japón. Honestamente no recuerdo en cuánto me salieron los circuitos y las piezas, pero recuerdo que no fueron caros. Para no complicarme las cosas decidí armar el circuito de prueba de la hoja de datos del circuito y quedé bastante satisfecho con la calidad y la potencia de los amplificadores, pues lo utilizo con unas bocinas de 3W de un microcomponente y el sonido de la música es bastante agradable, mas claro y con más fuerza que el obtenido con los amplificadores TDA2822. Sé que la tecnología de esos amplificadores ya ha quedado desfasada estos años, pues se han popularizado los amplificadores monolíticos clase D que tienen una eficiencia y potencia muy superiores a los amplificadores clase AB (como el TDA2822 o los TA7368P), sin embargo si desean armar un amplificador de audio de clase AB les recomiendo que utilicen un transformador de por lo menos el doble de la potencia de salida que entreguen los circuitos amplificadores. Esto debido a que si el transformador se calienta, se comienza a oír un zumbido un poco molesto y esto se evita justamente utilizando un transformador de bastante potencia que no se caliente con la demanda del amplificador. En mi caso utilicé un transformador de 5VCA y 1.2A, el cual alimenta una fuente rectificada (no regulada, ya que sólo lleva el puente de diodos y los capacitores para atenuar el voltaje de rizo) y esa fuente alimenta directamente los amplificadores TA7368P. Para alimentar amplificadores clase AB se utilizan fuentes rectificadas debido a que tienen una respuesta mucho más rápida a los cambios en la potencia de salida que las fuentes reguladas.
Aquí se aprecia el armado rústico del amplificador.
El encendido se controla con un interruptor en la parte posterior, el interruptor rojo que se aprecia es "mute", ya que conecta las bocinas a tierra, muy útil para evitar el "pop" al encender el amplificador.

Honestamente, si tienen contemplado el proyecto de armar un amplificador les recomiendo directamente comprar un módulo equipado con el amplificador clase D PAM8403. Incluso venden un modelo que incluye el potenciómetro doble necesario para ajustar el volumen. Este tipo de módulos se alimentan con una fuente regulada de 5V, por lo que la mayoría de los cargadores para celular o tableta los pueden alimentar sin problema y por lo que he visto en algunos vídeos, la calidad de sonido es buena.
Comparativa en tamaño entre un amplificador TA7368P (0.6Wx1 izquierda) y un modulo PAM8403 (3Wx2 derecha). Disculpen la calidad de fotografía, la tableta no tiene autofoco.

Aprovecho para enviarles un cordial saludo. ¡Estamos en contact!

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!

martes, 21 de agosto de 2018

Renuncia de responsabilidad.

Hola ¿Cómo están? Espero que estén bien. En esta ocasión sólo traigo un aviso parroquial y es que he decidido formalizar los términos de uso y la renuncia de responsabilidad de este blog. Esto es debido a que en la actualidad han surgido varias noticias donde hay sitios que se meten en aprietos legales debido a que sus políticas de uso no son claras.

Considero que entre personas el entendimiento es la base de la comunicación, por lo que es oportuno colocar de forma explícita la renuncia de responsabilidades de este sitio. Admito que en su mayor parte es una traducción libre de la renuncia de responsabilidad del proyecto GOES de la NASA, pero mucho se aplica de igual forma a un proyecto de una envergadura similar, como es este blog.

Descargo de responsabilidad.

"Los Mega Debrayes de Raven Izerion" (en lo subsecuente MDRI) proporciona este artículo "tal como está". MDRI no proporciona ninguna garantía del artículo, ya sea expresa, implícita o estatutaria, incluyendo entre otras, cualquier garantía de comerciabilidad o idoneidad para un propósito particular o cualquier garantía de que el artículo estará libre de errores.

MDRI no incurrirá en ningún tipo de responsabilidad por daños, incluidos, entre otros, daños directos, indirectos, especiales o consecuentes que surjan de, resulten o estén relacionados con el uso del artículo, estén o no basados en garantía, contrato, agravio o de otro modo; si las personas o los bienes sufrieron o no un daño; y si la pérdida se originó o surgió de los resultados del artículo o de cualquier servicio que pueda proporcionar MDRI.

Si aparece una persona reconocible (asociada a MDRI) en algún video o imagen, su uso con fines comerciales puede infringir un derecho de privacidad o publicidad. No se puede utilizar para indicar o implicar el respaldo por parte de los asociados de MDRI de un producto, proceso o servicio comercial, ni para utilizar de otra manera que pueda inducir a error. En consecuencia, se solicita que, si este video o imagen se utiliza en publicidad y otras promociones comerciales, el diseño y la copia se envíen a MDRI antes del lanzamiento. No se puede utilizar para indicar o implicar el respaldo por parte de los asociados de MDRI de un producto, proceso o servicio comercial, ni para utilizar de otra manera que pueda inducir a error.

Renuncias adicionales.

No aceptamos responsabilidad por que nuestros sitios web sean precisos, completos o actualizados o por los contenidos de enlaces externos. Nos desvinculamos expresamente del contenido de las páginas vinculadas, sobre cuya estructura no tenemos control. Esta declaración es válida para todos los enlaces en los sitios web y para todos los contenidos de las páginas a las que conducen los enlaces o banners. No somos responsables por los daños directos, indirectos, incidentales o consecuentes resultantes de cualquier defecto, error o falla en el desempeño. Este comunicado de prensa contiene declaraciones prospectivas que implican riesgos, incertidumbres y suposiciones. Si dichos riesgos o incertidumbres se materializan o si tales suposiciones resultan incorrectas, los resultados de esta organización y sus subsidiarias consolidadas podrían diferir materialmente de los expresados o implícitos en dichas declaraciones y suposiciones a futuro. Todas las declaraciones que no sean declaraciones de hechos históricos son declaraciones que podrían considerarse declaraciones a futuro, incluidas, entre otras, declaraciones de los planes, estrategias y objetivos de la administración para operaciones futuras; cualquier declaración relacionada con el desarrollo esperado, el rendimiento o la cuota de mercado relacionada con productos y servicios; resultados operacionales y financieros anticipados; cualquier declaración de expectativa o creencia; y cualquier declaración de suposiciones subyacente a cualquiera de los anteriores. Los riesgos, las incertidumbres y las suposiciones incluyen el logro de los resultados esperados y otros riesgos que se describen de vez en cuando en los informes periódicos. Esta organización no asume ninguna obligación y no tiene la intención de actualizar estas declaraciones prospectivas.

Este blog y las publicaciones discutidas están destinados únicamente con fines informativos y no deben interpretarse, bajo ninguna circunstancia, por implicación o de otro modo, como una oferta de venta o una solicitud para comprar o vender o comerciar con productos básicos, valores, o monedas aquí nombradas. La información se obtiene de fuentes que se consideran confiables, pero de ninguna manera se garantiza.

Además el uso y la interpretación del contenido del blog debe apegarse a las siguientes indicaciones, restricciones y aclaraciones, que se deben seguir de forma cabal en cada situación donde aplique:
  • Sólo para uso en hogar u oficina.
  • Sujeto a cambios sin previo aviso.
  • Las imagenes mostradas pueden ser simuladas.
  • Puede ser demasiado intenso para algunos espectadores.
  • No hay piezas reparables por el usuario dentro.
  • No somos responsables de errores tipográficos o de impresoras.
  • Deje de usar si la condición empeora.
  • En caso de sobredosis, busque ayuda profesional.
  • Evite la alta humedad y el calor excesivo.
  • No sumergir.
  • No tragar.
  • No colocar en los ojos
  • Este producto está destinado solo con fines educativos.
  • Mantener fuera del alcance de los niños.
  • No incinerar.
  • Mantener alejado del calor, chispas y llamas.
  • Baterías no incluidas.
  • Se requiere algún ensamblaje.
  • Utilizar sólo según las indicaciones (si es que hay indicaciones, sino las hay definitivamente no utilizar).
  • Esta tecnología no es tolerante a fallas y no está diseñada, fabricada o prevista para su uso o reventa como equipo de control en línea en la operación de instalaciones nucleares, sistemas de navegación o comunicación de aeronaves o máquinas de control de tránsito aéreo en las cuales su falla podría conducir directamente a la muerte, lesiones personales o daños físicos o ambientales graves.
  • Ninguna otra garantía expresa o implícita.
  • No está afiliado a ninguna institución.
  • Para uso recreativo solamente.
  • Puede causar excitabilidad, especialmente en niños.
  • Todas las lolis son mayores de 18 años.
  • Evite las bebidas alcohólicas mientras usa este producto.
  • Puede causar somnolencia.
  • Tiempos aproximados.
  • Cualquier parecido con personas reales, vivas o muertas, es pura coincidencia.
  • No somos responsables de ningún daño compensatorio, directo, incidental, consecuente o de otro tipo.
  • Evite el contacto con la piel.
  • No doble, huela ni mutile.
  • Use solo en un área bien ventilada.
  • Limpie con un paño suave, seco y sin pelusa.
  • Algunos equipos mostrados son opcionales.
  • Las acrobacias son hechas por profesionales en entornos controlados.
  • El abuso de este producto puede ser nocivo para la salud.
  • No use mientras opera un vehículo de motor o equipo pesado.
  • Muerte o lesiones graves pueden ocurrir.
  • Algunas de las marcas comerciales mencionadas en este producto aparecen solo con fines de identificación.
  • Suministrado "tal cual" sin garantía de ningún tipo.
  • Persistente a todas las regulaciones federales, internacionales, interplanetarias, galácticas o universales, pasadas, presentes y futuras.
  • Esto reemplaza a todas las comunicaciones anteriores.
  • Este acuerdo no le otorga ningún derecho.
Estamos en contact!

jueves, 16 de agosto de 2018

Seguimiento de experimentos.

Hola, ¿Cómo están?

Bienvenidos sean de nueva cuenta a este nuestro blog, donde yo escribo los debrayes y ustedes abuchean mis malos chistes n_n.

Como siempre, hay muchas cosas en el tintero digital que no encuentran el momento de ser plasmadas en estos finos y refinados pixeles. Sin embargo en esta ocasión he decidido pasar a saludar y compartir un poco de las cosas que se han cocinado en los últimos meses.

Thinclient (TC) Reloaded.

Empezamos esta ronda de debrayes dándole protagonismo a una vieja estrella de este blog, el Thinclient HP T5730 que estuvimos acondicionando el año pasado. Después de muchos tumbos, indecisiones y rezagos económicos decidimos dar el salto definitivo y probar en él todo el arsenal que tuvimos a nuestra disposición.

Uno de los primeros problemas que saltan a la vista al usar el TC es que en la actualidad disponer sólo de 1GB de memoria de almacenamiento interno son muy acotados para una computadora de propósito general. Si bien se puede aumentar la capacidad con dispositivos externos, para instalar un sistema operativo relativamente moderno se requiere de mayor capacidad. Para probar con medios de almacenamiento de mayor capacidad requerimos de un cable IDE de 44 pines, que además tenga conectores milimétricos, a diferencia de los cables IDE 40 convencionales que tienen conectores de décimas de pulgada.

Nos dimos la tarea de buscar un cable con las características adecuadas en la famosa "Plaza de la Tecnología" de la Ciudad de México, un lugar otrora conocido por ser la meca de la tecnología de cómputo en el país. Por desgracia no pudimos encontrar en ese sitio el cable adecuado, por lo que decidimos buscarlo en Mercado Libre. Ahí encontramos a un vendedor que ofrece una gran variedad de cables "poco convencionales" y entre sus publicaciones vimos unos cables IDE 44 hembra - hembra (justo de los que necesitábamos) por unos módicos $245.00 MXN con el envío incluido. En realidad no es un precio tan disparatado considerando que es un tipo de cable difícil de conseguir, pero el precio del cable estaba cerca de ser el 50% del precio pagado por del TC, por lo que decidimos evitar la compra del cable y ponernos manos a la obra.

Conseguimos unos pines hembra milimétricos en las tiendas de electrónica de la calle de República del Salvador de la Ciudad de México y nos dimos a la tarea de confeccionar un cable IDE44 casero. Paralelamente nuestro amigo Dash "Shingo" Bandit nos apoyó en comprar desde China un adaptador de memorias SD a IDE44. Este adaptador es muy popular en internet entre los círculos de retrocomputación, pues los discos duros IDE en buen estado ya escasean. Por no mencionar discos duros IDE nuevos, que son virtualmente inexistentes en la actualidad.
Este adaptador también es ideal para sistemas embebidos.
Con ayuda de ese adaptador se pueden rehabilitar computadoras antiguas sin muchos inconvenientes, pues la capacidad actual de las memorias SD suele equiparar o incluso superar las capacidades de disco duro habituales de finales de la década de 1990.

Pues bien, una vez que arribó el adaptador lo conectamos con nuestro cable IDE44 casero al TC, encendimos el TC, entramos al BIOS y... Nada... Pese a que el LED indicador del adaptador estaba encendido, en el BIOS no fue reconocida ninguna unidad. En este punto los posibles culpables eran un defecto de fabricación del adaptador o un defecto de fabricación del cable casero. Probamos el adaptador en una computadora de sobremesa (con un adaptador IDE40 a IDE44) y el adaptador fue reconocido sin inconvenientes. En este punto, el presunto culpable era el cable IDE44 casero, por lo que conectamos una memoria Compact Flash (CF) Sandisk de 8 GB con un adaptador CF a IDE44 al TC y la unidad de memoria fue reconocida sin inconvenientes. Después probamos con un disco duro IDE de laptop e incluso pudimos instalarle Windows XP sin problemas. Después de esto pudimos constatar que el culpable no era ninguno de los presuntos responsables, sino el propio TC que se negó a reconocer el adaptador.

Un detalle negativo del cable casero es que quedó con un perfil muy alto, por lo que no se puede colocar un disco duro sin que estorbe con la colocación de la tapa con ventilador que se hizo en el pasado. Así que decidimos dejar la expansión del almacenamiento para otra oportunidad. Sin embargo la idea de colocar de forma definitiva el Turion X2 64 en el TC nunca dejó de rondar por nuestras mentes, por lo que decidimos hacer los ajustes pertinentes. El principal obstáculo era conseguir una fuente de alimentación de 12[V] que tuviere una buena potencia y fiabilidad. Existen fuentes de alimentación para tiras LED que en la etiqueta presumen de excelentes prestaciones, sin embargo hemos aprendido a desconfiar de ellas ya que en muchas ocasiones las características eléctricas no coinciden con lo que la etiqueta marca. Además esas fuentes suelen ser de marcas genéricas o poco reconocidas, por lo que no tendremos ninguna garantía de su durabilidad.

Decidimos buscar alternativas y entre ellas la mejor fue modificar ligeramente una fuente de alimentación para Xbox 360, que entrega el voltaje correcto 12[V] y una potencia más que suficiente (podríamos incluso decir sobrada para esta aplicación). La fuente de alimentación debe ser modificada, en primer lugar se  debe colocar un cable con el conector adecuado para conectarla al TC y en segundo lugar se debe conectar la terminal "Sense" con "5VSB" usando una resistencia de 1[kOhm] para que la fuente encienda en cuanto reciba alimentación. La incorporación de la resistencia no es necesaria, pero le hemos usado para limitar la corriente en caso de alguna falla. La ventaja de las fuentes de alimentación originales de Xbox 360 es que son de muy buena calidad, tienen marcados en la placa de circuito los nombres de las señales, componentes y terminales. Además cuentan con refrigeración activa que contribuye a su estabilidad.

Instalamos el procesador Turion X2 64 en el TC y comenzamos a exigir al equipo con diferentes emuladores y juegos para corroborar que tanto la fuente de alimentación como el ventilador fueran capaces de mantener el equipo en condiciones óptimas de operación. Y pues bien, los resultados son que la fuente de alimentación funciona muy bien, sin forzarse ni calentarse. Mientras que en el aspecto de las temperaturas notamos que a plena carga obtuvimos unos picos de 58°C (para ambos núcleos activos) lo que representa un alza considerable en las temperaturas (antes eran 36°C con carga al tope) pero aún así se encuentran en un rango muy seguro de operación y podemos exigir al procesador sin poner en riesgo su integridad. Recordemos que los Turion X2 64 pueden operar a temperaturas de hasta 110°C, antes de que se apaguen debido a sus sistemas de protección.

Windows 7 vs Windows XP.

Hace tiempo estuvimos probando alternativas para darle funcionalidad a una laptop Dell Latitude D610. Se trata de una computadora orientada para usuarios empresariales del año 2005. En su tiempo era una computadora envidiable, pues tenía muy buen desempeño, un diseño muy cómodo y robusto. El problema con esa computadora es que el disco duro ya presentaba en el S.M.A.R.T. un mensaje de falla inminente y programas como el Crystal Disk Info ya lo marcaban como disco en mal estado. Y por desgracia en este caso nos encontramos en una situación similar a la vivida con el TC, en que los puertos de conexión de la laptop son IDE (tanto el del disco duro como el de la unidad lectora). Por fortuna existen unos adaptadores que tienen la forma de una unidad lectora para laptop que pueden alojar un disco duro en su interior.

El propósito principal de estos adaptadores es dotar de mayor capacidad de almacenamiento a las laptops, pero en nuestro caso lo utilizaremos con el doble propósito de reemplazar la unidad lectora (que estaba inservible) por un disco duro con interfaz SATA, lo que nos brindará una mayor flexibilidad para mantener funcional la computadora. Con la experiencia adquirida gracias al proyecto del TC, decidí cambiar el disco duro defectuoso por una memoria CF y colocar un viejo disco duro SATA en el adaptador. En esta configuración de hardware instalé Windows XP y las cosas funcionaron bien. Sin embargo tuve que emplear el disco duro SATA para otra computadora y la configuración se tuvo que revertir.

Con la laptop de nuevo en su estado inicial traté de instalarle Linux Mint sin éxito, pues el sistema se negó a instalarse debido a los errores reportados por el disco. Optamos entonces por instalar Windows 7 (edición de 32 bits) y la sorpresa fue mayúscula al percibir que la computadora respondía con mayor agilidad que con Windows XP. Cabe aclarar que la computadora cuenta con 2GB de RAM. Sin lugar a dudas fue un resultado inesperado y que abre algunas posibilidades para exprimir aún más algunas computadoras algo viejas, pues Windows XP a pesar de ser un sistema consolidado y muy personalizable tiene el defecto de que ya no recibe actualizaciones de seguridad y las amenazas informáticas continúan apareciendo. Si se tiene un equipo "airgapped" (es decir, aislado sin acceso a redes) no hay inconveniente, pero si vamos a conectar el equipo a alguna red es preciso que se encuentre actualizado y con las configuraciones de seguridad pertinentes para que no se convierta en un vector de entrada para infecciones o ataques desde redes externas. Por ese motivo fue que cuando creamos la máquina virtual de Windows 98 en una entrada anterior del blog no le configuramos interfaces de red ni de carpetas compartidas, pues la máquina virtual con Windows 98 podría representar una brecha de seguridad.

Posteriormente las cosas se han ido acomodando de forma casi involuntaria, ya que conseguimos un disco duro SATA de 2.5 pulgadas pero de 11 mm de espesor, que no  es posible colocar en la mayoría de las laptops pero que calza en el adaptador de forma perfecta. En ese disco instalamos Linux Mint y podemos darle uso cotidiano a una computadora que aún es bastante útil para cargas de trabajo ligeras o para hacer proyectos que no requieran de mucha potencia de cómputo, además de que con los tres sistemas operativos instalados nos permite mucha flexibilidad para probar programas.

La burra vuelve al trigo por enésima vez.

Recientemente hemos estado jugando con el PS3 y nos hemos topado de nueva cuenta con una realidad, y es que los accesorios para consolas originales tienen unos precios que rayan en lo ofensivo. Los controles de PS3 en particular se han vuelto muy escasos pues ya no se producen y sus precios en la actualidad son desorbitados. En el pasado existieron controles de empresas como Madcatz, Hori, Nyko o PowerA que trataban de innovar en la forma del control para brindar una mayor ergonomía y comodidad, pero incluso ahora esas alternativas son caras y difíciles de conseguir, más aún si lo que se requiere es que el control sea inalámbrico. Existen opciones genéricas muy baratas que se limitan a imitar las formas y funcionalidad de los controles originales Sony y funcionan bien, aunque se sienten un poco raro al tacto y la duración de la carga de la batería es muy escasa.

Por otra parte tenemos un viejo control inalámbrico para PS2 modelo Chameleon de la marca Pelican (la cual ya no existe en la actualidad) que aún funciona a pesar de los años y las malas reparaciones a las que lo hemos sometido. Es un control que a pesar de sus acabados "chafas" y sus materiales de dudosa calidad tiene un tacto cómodo y un rendimiento de baterías simplemente irreal para los estándares modernos.
Un control muy viejo, pero con una autonomía excepcional.

Decidimos aprovechar el adaptador de controles de PS2 a Xbox 360 y PS3 que compramos hace unos años para usar ese control en el PS3. Y aunque en apariencia funcionaba bien comenzamos a percibir algunos comportamientos bastante extraños en algunos juegos, en particular el botón R2 era detectado como si se presionara de forma intermitente (como si tuviere la función de autodisparo), pero si se presionaba el botón, se comportaba como si estuviere sin presionar. Este comportamiento tiene sentido debido a que el botón R2 es el último botón en el reporte que el control manda indicando el estado de los botones. Además recordemos que en el protocolo de comunicación de los controles de PS2 los datos se envían con el bit más significativo hasta el final, por lo que si la comunicación no es del todo sólida y se pierde el último bit la mitad de las ocasiones, notaremos que el comportamiento del botón es precisamente intermitente.

La opción como siempre, fue recurrir a códigos viejos y un AVR para resolver la situación. Estuvimos probando y portando códigos viejos, que en su momento se usaron para hacer pruebas de ese mismo control con el Dreamcast y con la computadora pero en esta ocasión no funcionaban de forma satisfactoria. Pudimos rescatar un código funcional de un viejo respaldo, portarlo a uno de los microcontroladores con los que contamos actualmente y hacerlo funcionar con ese control en específico, ya que los controles originales o de otras marcas no funcionan con ese código.

Así también decidimos colocarle la funcionalidad del botón guía (o botón PS) al presionar de forma simultánea los botones SELECT y START. Hay algunos juegos que usan esa combinación, sin embargo son los menos y se usa de forma muy esporádica. Además el propio control usa esa combinación de botones para apagarse si se mantienen presionados por 5 segundos, por lo que es una combinación poco invasiva. Además hemos decidido probar algunos tips que hemos encontrado respecto a la implementación de la biblioteca VUSB en proyectos de bajo costo.
El principal debate respecto a la implementación de la biblioteca VUSB y uno de sus inconvenientes es la necesidad de limitar el voltaje de las líneas de datos (D+ y D-) a 3.3[V], cuando el voltaje de alimentacíón que provee el puerto USB es de 5[V]. En la página del proyecto VUSB proveen de tres alternativas para lidiar con ese dilema, las cuales son:

  • Utilizar un regulador de voltaje de poco voltaje de caída (como los famosos AMS1117) para alimentar al AVR con 3.3[V] y mantener las líneas de datos en el nivel adecuado. Esto tiene como ventajas que las conmutaciones en los estados de las líneas de datos se realizan de forma más veloz y las señales son más limpias. La desventaja es que el consumo de corriente se eleva por el uso del regulador y que muchos AVR (sobretodo las piezas más viejas) pueden tener problemas para operar a las frecuencias necesarias por la biblioteca VUSB a un voltaje de 3.3[V].
  • Utilizar un par de diodos rectificadores de silicio (como los famosos 1N4001) en serie para forzar una caída del voltaje de alimentación. La caída de voltaje a través de un diodo de silicio polarizado de forma directa es cercana a los 0.7[V], por lo que si se colocan dos diodos en serie la caída total de voltaje es de 1.4[V]. Reducir el voltaje a 3.6[V] suele ser suficiente para que el AVR se pueda comunicar de forma efectiva a través de USB. La desventaja es que no se tiene regulación y que se tiene que corroborar que en efecto la caída de voltaje a través de los diodos sea suficiente.
  • Limitar el voltaje a través de las líneas de datos con diodos Zener de 3.6[V]. Esta alternativa es la que habiamos estado utilizando ya que a pesar de no ser la más barata, es la que en el papel se ve más segura, pues el AVR funciona a 5[V] y puede trabajar a su máxima velocidad sin inconvenientes. La desventaja es que las transiciones de voltaje en las líneas de datos son muy lentas, cosa que pasa desapercibida si no se cuenta con las herramientas adecuadas o con la información de las pruebas pertinentes.
  • Una alternativa adicional que hemos visto en algunas páginas de internet y decidimos probar es la de colocar un LED rojo o verde en serie con la alimentación para bajar el voltaje a niveles cercanos a 3.3[V]. En teoría esta es la opción menos apropiada, pues además de que no hay regulación, los cambios en el consumo afectan la cantidad de voltaje que cae a través del LED, por lo que la potencia se encuentra variando de forma constante. Además se debe tener cuidado de no exigir mucha potencia, pues la mayoría de los LED rojos o verdes suelen soportar una corriente máxima de 20[mA]. Las ventajas de esta alternativa son que nos permite ahorrar en componentes, el LED tiene el doble propósito de acondicionar el voltaje e indicar el encendido del circuito y además, siendo francos, los AVR son microcontroladores de gama económica y en este caso no se le está encomendando una labor crítica como un soporte de vida o un sistema de seguridad.
Decidimos probar esta última variante para el adaptador que nos armamos y hasta el momento (40 horas de juego después) ha funcionado de forma adecuada la mayor parte del tiempo. En ocasiones hemos tenido problemas para que el adaptador sea reconocido de forma correcta, por lo que tenemos que intentar reconectarlo para que sea identificado por el PS3. Esta falla no se da siempre y por lo general al segundo o hasta tercer intento es reconocido y funciona con normalidad. Además existe la posibilidad de que esas fallas de conexión no se deban al LED, sino a algún error de programación, falla en el cable o en los conectores. De igual forma hemos probado con sesiónes largas de juego (en ocasiones de hasta seis horas continuas) sin que haya problemas.

La conclusión es que se trata de una alternativa bastante válida para hacer aún más económicos los proyectos, aunque si se pretende emplear para producción se tienen que probar las variables eléctricas pertinentes tanto del LED como del resto del circuito, para evitar estresar algún componente y comprometer la funcionalidad del circuito en el corto plazo.

En lo personal trataremos de emplear el adaptador lo más posible para poder hacer una evaluación del rendimiento de esta solución a largo plazo. En el caso de nuestro adaptador medimos una corriente en serie con el LED de 5[mA] y un voltaje en las terminales de alimentación del AVR de 2.8[V]. A pesar del bajo valor de voltaje el adaptador se mantiene funcionando a la perfección una vez que ha sido reconocido por la consola. En la computadora no hemos tenido inconvenientes para que el adaptador sea reconocido.

Como siempre, el código de este adaptador se encuentra aquí.

Ha sido un placer saludarles de nuevo, 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...