Expansión de memoria para NES y SNES Classic Mini por microSD a bajo costo

Qué talca. El día de hoy les traigo un proyecto que había querido venir haciendo hace tiempo: una NES Classic Mini con posibilidad de ponerle más juegos mediante tarjeta microSD. (también compatible con SNES Classic Mini)

¿Para qué?

Bueno, pues, porque se puede. Existía la posibilidad de hacerlo también mediante el puerto USB que tiene, pero teniendo la posibilidad de hacerlo me dije, ¿por qué no?

Beneficios

El beneficio básico está en la memoria disponible para ponerle cosas. Como saben, este equipito aguanta RetroArch lo que le da un potencial tremendo, sólo limitado por la cantidad de memoria flash disponible en la placa, que es de 512 MB. Asimismo permite tener varias microSD con distintas colecciones de juegos si es que se requiriera, no sé por qué alguien lo haría pero es una posibilidad.

Desventajas

La principal desventaja es estética, dado que hay que soldar puntos directamente en la placa, y hay que hacer una ranura para el acceso a la tarjeta. Siempre se puede dejar la tarjeta interna y no removible, pero no es tan divertido.

Ingredientes

  • NES Classic Mini
  • Cable USB-A a microUSB
  • Un PC con Windows
  • Módulo Breakout para SD o microSD con SPI y/o SDIO
  • Cable plano con 8 líneas o en su defecto, 8 cables de largo similar
  • Cautín, dremel o taladro, etc

Consideraciones

  • Es altamente recomendable el uso de una placa breakout SD que tenga las resistencias y capacitores, una buena forma de encontrar rápido una compatible es buscar cualquiera que sea para SPI o SDIO. La placa que usé yo la traje de Aliexpress, el link estará debajo.
  • También es recomendable dejar la consola en estado stock, es decir, sin modificaciones de software si es que ya las tuviera.
  • La tarjeta SD a usar no puede estar formateada en FAT32. Es posible usar ext2, ext3, ext4 o NTFS.
  • El uso de NTFS en la tarjeta requiere la instalación de NTFS-3G en la consola.

Manos a la obra – Hardware

Imagen

Lo primero es llegar a la placa base. Luego de desarmar la primera tapa, hay un escudo térmico en la consola, que sale con 5 tornillos junto con la placa.

Imagen

La placa madre.

Imagen

Mientras tanto, es buena idea sacar el header de módulo para evitar inconvenientes, es mejor soldar los cables directo.

Imagen

Un buen poco de malla y algunos minutos después y tenemos los pines limpios.

Imagen

Los cables soldados en el módulo.

Imagen

Luego, identificar la pega que se va a hacer. Para eso hay que tener algunas cosas en cuenta: En el caso de los módulos que tengo, GND es el pin 1, y luego siguen un orden determinado.

En el caso de la placa, el orden es este:

Imagen

Cruzando con la tabla de pines (directamente del datasheet del fabricante) con el módulo SD tenemos como resultado esto:

Pin Placa NESC	N° Pin SD	Pin Módulo SD
VCC		8		VCC
GND		1		GND
PF0		7		DO1
PF1		6		DO0
PF2		5		CLK
PF3		4		CMD
PF4		3		DO3
PF5		2		DO2

Imagen

Con eso procedemos a soldar cada pata en su respectivo cable.

Imagen

Prueba de funcionamiento del módulo antes de ensamblar. En esta instancia la tarjeta todavía no es funcional.

Imagen

La consola funcionando con su software stock.

Imagen

Dibujando la zona a sacar para la ranura.

Imagen

Ranura lista.

Imagen

El módulo lo voy a fijar con cinta de doble faz, de forma de poder sacarlo rápido en caso de que todo ande mal, y aparte esta cinta produce la fuerza suficiente.

Imagen

Verificando que el escudo se queda en su lugar y no ahorca el cable del módulo.

Imagen

La ranura vista desde afuera. No se ve tan estético como quisiese, pero salva.

Manos a la obra – Software

Aquí no tengo mucha foto, pero básicamente los pasos son estos:

  • Sólo como recomendación, borrar todos los mods que tenga la consola de manera de partir stock y minimizar la posibilidad de errores.
  • Descargar la última versión de Hakchi2 CE y realizar un dump de la NAND.
  • Instalar Hakchi en la consola usando la opción Kernel > Flash Custom Kernel.
  • Instalar uboot mediante la opción Kernel > Flash uboot > SD mode

Con eso debería estar listo el software.

Manos a la obra – SD

Para esto hay que preparar una tarjeta SD de la misma forma en la cual uno prepara el pendrive para el mod USB. Esencialmente, sólo hacer las carpetas /hakchi/games y /hakchi/saves con algunos juegos en la primera. O mejor aún, usar la opción que trae Hakchi2 para esto. Como se indicó, la tarjeta debe estar formateada en NTFS (usando NTFS-3G), ext2, ext3 o ext4. FAT32 no funciona.

Si todo salió bien, al encender la consola con la tarjeta puesta deberías ya poder ver tus juegos. Y si usas Hakchi para verificar, deberías poder ver la memoria disponible en la tarjeta SD. Asimismo, se puede sincronizar juegos con la consola sin necesidad de volver a conectarla al PC, por lo que existe la posibilidad de dejar la tarjeta interna (apropiado si no quieres modificar externamente la consola). Mi recomendación es que si se va a usar RetroArch, dejar la tarjeta con la ranura así como lo hice yo.

Links de interés