El niño de juguete más pequeño se esconde en tu bolsillo

Esta es probablemente la Game Boy Color completamente funcional más pequeña del mundo, capaz de jugar a todos los juegos con las pequeñas almohadillas y botones direccionales, con una pantalla y batería incorporadas y en su forma original. Este es un truco increíble que presenta un recorrido en hardware y software. Esto se ubicará fácilmente entre los cinco principales hacks que ha visto este año.

Estoy seguro de que muchos de ustedes tienen buenos recuerdos de sus primeros juegos portátiles. Esta será una Game Boy para la mayoría, y reconocemos que tienen una portabilidad y una duración de batería bastante decentes, lo cual es una pena en muchos teléfonos inteligentes. A pesar de esto, Sprite_TM siempre ha soñado con una versión eminentemente más portátil y, para su deleite adolescente, descubrió una versión clave de Game Boy. Desafortunadamente, fue engañado. El llavero parecía un Gameboy pero solo servía como reloj.

Pero ahora, décadas después, la tecnología ha progresado con sus propias capacidades. Para su discurso en la SuperConference La-Tecnologia 2016, Sprite_TM realmente construyó su sueño de infancia.

Hardware:

Sprite comenzó el diseño de su dispositivo especificando la pantalla. La Game Boy original tenía una pantalla bastante mala, que podía manejar 160 × 144 con aproximadamente 4 niveles de escala de grises. La nueva pantalla necesitaba abarcar esto, pero con un tamaño físico lo más pequeño posible.

Prueba de pantalla PCB delantero y trasero

La primera pantalla que encontró fue una diminuta pantalla OLED a color de 800 × 600: un hardware increíble con un precio ridículo de 720 dólares. La mejor opción fue un OLED en color de un poco menos de 1 ″ por $ 3.80; no tenía suficiente resolución a 96 × 64, pero Sprite lo probó y descubrió que era una imagen aceptable. Completando las opciones de dispositivos, eligió un altavoz de menos de 1 cm de diámetro, un chip ESP-32 (en forma de módulo ESP-WROOM-32) y una batería de iones de litio de 150 mAh.

El tamaño de la pantalla decidió todas las dimensiones del cuerpo de Gameboy. Sprite dibujó una imagen medida de la pantalla en Inkscape y comenzó a jugar con imágenes del hardware original para alcanzar su tamaño final. Tuvo algunos desafíos para organizar la placa, ya que necesitaba una ranura para que pasara el cable flexible OLED. Modeló el PCB en OpenSCAD y construyó el diseño de la carcasa a su alrededor. ¡Esta fue la primera vez que usó una impresora 3D y su contenedor (impreso en Form 1+) realmente se veía genial!

Software:

El software es un desafío en este caso. Sprite quería comenzar con un emulador, pero los emuladores están escritos para un sistema informático completo. El ESP32 es un chip robusto (dual 240 MHz, 512k RAM, lavavajillas, WiFi y Bluetooth) pero aún no es una computadora completa. Decidió buscar emuladores más antiguos que están optimizados para ejecutarse en equipos informáticos muy antiguos. Después de investigar las muchas opciones, se decidió por GNUboy, que tiene optimizaciones que lo hacen funcionar en una computadora 486.

Fue un buen comienzo, pero tenía un largo camino por recorrer para asegurarse de que fuera posible. Más notablemente, el "caché de mosaicos" que usa GNUboy para preservar el "ingenio" - piezas gráficas de 8 × 8 que componen cada juego. Esto está bien explicado alrededor de las 18:34 en el video. GNUboy asigna aproximadamente 128 kB de RAM (más de 1/4 de lo que está disponible) para la caché en mosaico. Sprite pudo reducir esta necesidad a aproximadamente 46 kB.

Una vez que funcionó el emulador, Sprite agregó algunas características interesantes para el usuario. Hay una visualización en pantalla que permite al usuario ajustar el brillo, el volumen y cargar o restablecer la ROM. Dado que no hay un almacenamiento masivo en el tablero, la pequeña Game Boy solo puede almacenar algunas ROM a la vez. Sprite aprovechó la capacidad WiFi del parche para evitar eso. Cuando desea cargar un juego nuevo, transmite un punto de acceso y ejecuta un servidor web que permite que cualquier teléfono o computadora cargue un juego nuevo.

Cosas que no funcionaron bien al principio

Siempre hay problemas al construir una pieza épica de hardware a medida como esta. Afortunadamente para nosotros, Sprite está más que feliz de compartir sus puntos explosivos y se divierte mucho durante eso.

El audio fue un punto terco y una de las partes técnicamente más interesantes del discurso. Se dio cuenta de que el altavoz estaba más caliente de lo que debería ser ... estaba a unos 90 grados centígrados. Lo conduce con un controlador de motor de puente H (BD6211), que no es tan poco ortodoxo. Parecía que el chip nunca dejaba de conducir al altavoz.

Para resolver el problema, echó un vistazo a las técnicas de filtrado y descubrió dos proyectos llamados modulación AD y modulación BD. Resulta que la modulación BD usa voltaje positivo y negativo que conduce en ambos lados de 0V como línea central. Esta fue la solución al problema del calor, pero dio otro desafío: ¿cómo generar el voltaje negativo del microcontrolador? Su técnica de sonido inicial utilizaba el periférico I2S, pero solo emitía un pin. Pasó a usar el periférico RMT, que tiene dos pines, usándolo para encender un circuito de voltaje negativo. Esta solución es muy inteligente y Sprite sugiere buscar otros trucos en el RMT periférico (aquí hay uno que alimenta los LED WS2812).

Hemos escuchado a gente quejarse de los microcontroladores que usan memoria flash externa. En realidad, esta es una característica bastante buena a veces. Por ejemplo, Sprite quería más memoria de programa y el ESP32 lo admite, pero el módulo WROOM tiene una caja de metal soldada en la placa que protege todos los circuitos. Supuso que una estación de reflujo de aire caliente se encargaría de eso. Por supuesto, también se encargó de desmontar el resto de componentes incorporados. Otra prueba con un nuevo módulo y pudo realizar con el chip de relámpago más grande posible.

Vive, y es más que un Gameboy

La prueba siempre está en el pudín. La demostración del pequeño Game Boy fue una delicia. Y si hablaste completamente con Sprite durante el fin de semana, probablemente se ofreció a dejarte probarlo. Esto funciona igual que el Gameboy original. ¡A pesar de los píxeles que faltan, la pantalla se ve increíble! Los controladores del usuario se sienten normales y el sonido es respetable, aunque hay cierto retraso y él tiene un medio para hacerlo en su lista de tareas pendientes.

La referencia kitsch para los sistemas de juego pirateados ha sido durante mucho tiempo DOOM y este hecho no se ha perdido en Sprite. Demostró que DOOM funciona bien, pero con una frase de marco muy mala, que sigue siendo válida como una victoria en nuestros libros. También le mostró su llavero de juguete portátil a Witcher 3. Algo no huele bien, ¿verdad? Por supuesto, el microcontrolador no puede manejar el juego de la generación actual, pero puede tratar el reenvío de VNC como un hechizo. Un truco muy bueno, y si la emulación de Game Boy no condujo completamente a casa, de qué tan lejos ha venido nuestra tecnología miniturizada, esta demostración debería terminar el trabajo.

Sprite lanzará código bajo GPL después de que lo limpie. Él planea lo mismo con los archivos de PCB y box. Si quieres uno de estos y te encanta hacer tu propia fabricación, puede ser tuyo. Mire SpritesMods.com para ver este lanzamiento de código y más información sobre la compilación en sí.

¿Quieres más Sprite_TM ahora? Su discurso de la SuperCon del año pasado, el Tamagotchi Singularity, es una presentación épica y un truco de dispositivo en sí mismo. ¡Disfrutar!

  • preamplificador dice:

    Bela!

    • Walter dice:

      no puedo ver su uso, tienes una mejor jugabilidad con tu teléfono inteligente.

      • ajrgale dice:

        Es Gameboy, en un llavero. No sirve de nada en el "mundo real", es una noticia y un desafío, y a través del video puedes aprender lo que Sprite_TM ha aprendido en el camino.

        Demonios, ¿puedes señalar un uso de la "Singularidad Tamagotchi?" ¿No? ¿Solo otro desafío que hizo Sprite_TM?

  • Mike Szczys dice:

    Lo que siempre me impresiona de los trucos de Sprite es que siempre va un paso más allá. Comenzó Gameboy, así que descubrió por qué no ejecutar un emulador de SNES. ¿Por qué no ejecutar Doom? ¿Puedo usar un reenviador VNC para jugar juegos de la generación actual? Muy impresionante.

    No lo mencioné anteriormente, pero me dijo que planea publicar una publicación detallada sobre el hardware después de completar su lista de tareas pendientes (agregar carga inalámbrica, corregir el retraso del búfer de sonido, etc.)

    • Sprite_tm dice:

      Para su información, antes de que la gente pida fuentes que no tengo: el cliente de VNC también utilizó Doom y el emú de SNES, así que solo los mencioné brevemente. Estoy seguro de que Doom puede ser portado al ESP32 (en realidad ya tiene un trabajo en funcionamiento, que desafortunadamente no es estable debido a un error de silicio ...) y tal vez el emu de SNES también pueda, pero el emu de GB me ha costado bastante un poco ya, así que no los he probado.

      • Sean O dice:

        ¡¡Oye, hombre, lo que creaste es increíble !! Honestamente, puedo ver que esto es tan popular como el arduboy. Un par de tutoriales de YouTube y documentación fácil de leer y usted mismo tiene un increíble proyecto de bricolaje. Me gustaría crear uno (o al menos tener uno ...). Sin embargo, una pregunta, ¿puede jugar Pokémon en gbc? porque sé que esto contiene algunos elementos rtc, y no sé cómo lo maneja el ESP-32. si no fuera necesario para el juego, no me importaría que no estuviera allí, ¡pero buena suerte con el futuro de esto!

  • IuriC dice:

    Estoy esperando que esto se publique porque se ha anunciado !!

  • rnjacobs dice:

    Solo para comparar ... ¿es la mitad del tamaño de una Game Boy Micro?

    • Brian Benchoff dice:

      "La mitad del tamaño del Micro" es de alguna manera, un poco preciso, pero no transmite lo pequeño que es en realidad. Esta cosa no solo cabe en tu bolsillo, sino que también puedes * perderla en tu bolsillo.

      Realmente tengo muchas ganas de que una empresa aleatoria en China se lleve el proyecto y le ponga estas cosas a Alex.

      • Galane dice:

        Y hacerlo con una pantalla LCD compatible con la resolución GB para hacerlo mucho más fresco.

      • Dave dice:

        Difundir la palabra !!

  • Brendan Sleight dice:

    ¡Guau! El mejor video que he visto sobre por qué. Algunas sugerencias de dispositivos pf son doradas. ¡Cómo diablos lo hace!

    • Richard Hogben dice:

      +1

  • Persona aleatoria dice:

    Los trucos de Sprite_tm son tan divertidos que quiero preparar comida mientras veo / leo.

  • mpmitch2000 dice:

    Me encanta lo que hiciste, creo que fue un buen trabajo que hiciste allí.
    Odio el archivo adjunto, quiero que lo mejore para que se vea bien.
    Lamento no retirar su proyecto. Me gustaría verlo en un recinto mejor hecho. Gran trabajo.

    • Sprite_tm dice:

      ¿Podrías profundizar más en eso? simplemente no estoy de acuerdo contigo. ¿el armario? Me temo que el simple "Lo odio" difícilmente puede calificarse como crítica constructiva.

      • jpa dice:

        Probablemente la falta de color, que se ve un poco aburrida en las fotos. Imprimir los botones en otro color podría marcar una gran diferencia, al menos funcionó bien para mí: http://essentialscrap.com/emfwand/emfwand.jpg

  • Martín dice:

    Según el problema del controlador del altavoz: ¿Por qué usó un controlador de motor y no solo un pequeño amplificador de sonido de clase D? Vienen en algo así como DFN8 de 3 * 3 mm y ofrecen hasta un vatio de suministro de 3V (LiIon). Usé uno hace un tiempo, creo que era de TI, pero tengo los detalles en casa.

  • Jan Visser dice:

    ¿Por qué no con la financiación múltiple para hacer un producto comercial con este gran artículo? Creo que mucha gente está interesada en eso.

    • Brian Benchoff dice:

      No hablaré en nombre de Sprite, pero tengo la impresión de que se alegrará de que una fábrica al azar en China escupe estas cosas en AliBaba. ¿Por qué un multifondo cuando una empresa al azar paga los moldes?

    • MarkoeZ dice:

      Porque Nintendo ...;)
      Los emuladores son una cosa, pero el uso comercial de exactamente el mismo factor de forma (incluso cuando sea pequeño) ciertamente desencadenará a sus abogados.

      • Sprite_tm dice:

        Ver. Al final, lanzaré todo lo necesario para hacer esto bajo una licencia liberal. Si alguien decide fabricar la cosa con eso como base, no me molestaría en absoluto. Para mí, personalmente, no creo que ninguna de las ganancias generadas por una campaña financiera de fondos múltiples pesará en mi sueño para ser molestado por las pesadillas de la gran N llamando a mi puerta ...

  • Marcos dice:

    Sprite_tm, ¡un trabajo increíble como siempre! PD Dado que ahora vive en China, necesita informar completamente a algunas empresas sobre este proyecto (cuando publique el programa, los planos 3D y los esquemas) y estoy seguro de que pronto se convertirá en una realidad 🙂

  • bendito999 dice:

    No puedo esperar a que el sdk implemente la pila bluetooth, ¡piense en los periféricos para conectarse a esto!

  • Enrico S. dice:

    Si estoy en lo cierto, ¿aún no se ha lanzado el software?

  • reanimaciónxp dice:

    Sí, definitivamente me gustaría publicar el código fuente para este y su nuevo proyecto de mini-Mac.

Ricardo Vicente
Ricardo Vicente

Deja una respuesta

Tu dirección de correo electrónico no será publicada.