Lichen

MNT Reform

Foto de una reform abierta, la computadora es negra. En la pantalla, un borrador de este articulo. Esta sobre una mesa cuberta con un mantel vino y un "placemat" de bambua cuadriculado.

El MNT Reform es una laptop de open-hardware. Todo el diseño está disponible en github. Tiene un CPU con 4 ARM Cortex-A53, mas o menos equivalentes a un raspberry pi 3B+. Tiene mas RAM, unos 4GB. El CPU y RAM están en un modulo, y ya se estan preparando modulos con mayor potencia. El motherboard tiene 3 puertos USB-A 3.1, Ethernet, audio y HDMI. Aguanta disco NVMe y tarjeta de WiFi. Usa 8 baterias 18650 de litio, y dura bastante rato (llevo una hora y media y voy por 60%). Los modulos con mas potencia gastan mas energia.

https://mntre.com/media/reform_md/2020-05-08-the-much-more-personal-computer.html Foto de la parte inferior de la MNT Reform. Tiene 8 baterias azules, y se ven los componentes, ya que la tapa inferior es plexiglas transparente.

El reform tiene algunas ventajas como discos mas rapidos y mas RAM que el rpi 3B+, pero comparte algunas de sus limitaciones. No es x86, asi que no todo software está disponible. Con 4 GB de RAM, hay algun software que no puedo compilar (llvm, guix, patchwork).

He probado el software que utilizo en mis clases, y pudiera usar el reform para casi todo. En mi clase de compiladores hago un compilador en ocaml que genera assembly de x86_64. El ocaml y las librerias corren sin problema, y nasm puede leer el assembly y producir objetos para x86_64. Uso un compilador cruzado para compilar main.c y linkear. El ejecutable lo puedo probar con box64.

https://ccom.uprrp.edu/~humberto/pages/teaching/arch2022.html

Mi clase de ciberseguridad es mas complicado. Alli usamos una maquina virtual x86_64 que provee MIT. Puedo usar qemu-system-x86_64 para correr la maquina virtual, pero es un poco lenta. En ese mismo bote estan algunos de mis estudiantes que estan corriendo la maquina virtual en MacBook con procesador M1 o M2, pueden emular el x86_64, pero es mas lento.

https://ccom.uprrp.edu/~humberto/pages/teaching/cyber2-2022.html https://web.mit.edu/6.858/2022/6.858-x86_64-v22.zip

Pero lo que hasta ahora me ha limitado mas es que aun estamos en modo hibrido. Casi todos los estudiantes estan presenciales, pero una cosa o otra hace que sea complicado que todos esten en todas las clases. Estoy grabando las clases (con OBS) y las transmito en vivo por Google Meet. La reform no tiene camara, y con 4 GB de RAM, creo que correr obs, Meet, y la maquina virtual va a ser mucho. Para las clases entonces uso una computadora de la oficina.

Habrá que ver si de verdad la ventaja de "open hardware" se materializa. Ya hay una comunidad de usuarios que ha ido mejorando el software del reform. Y hay una persona que manufacturó su propio reform partiendo de los diseños. mntre publica infomacion de las maquinas que han reparado.

https://community.mnt.re/ https://community.mnt.re/t/mnt-reform-motherboard-repair-logs/1261

El teclado es interesante, un teclado mecanico alumbrado, amplio, y con teclas especializadas incluyendo Hyper, Super (Windows), y compose, para poner accentos. Mi version tiene el trackball, con cinco botones. Hay una tecla de circulo, que en combinacion con otras teclas habla con un microcontrolador y pantalla oled para prender, apagar, despertar, mirar el nivel de la bateria, subir y bajar la intesidad de LED del teclado.

El software que viene es debian, con algunas modificaciones para el reform. Hay una actualizacion, V3, de la imagen (bootea por tarjeta SD, o puedes copiar la imagen a eMMC interno y cambiar un switch debajo del CPU para cambiar la prioridad de boot). La actualizacion esta usando debian unstable, que ha traido algunos problemas.

https://community.mnt.re/t/mnt-reform-system-image-v3-beta/744

Hay actulalizaciones para el firmware de el teclado, y el microcontrolador. Estos traen la habilidad de ver el estado de la bateria desde linux (o plan9), y mejoran un problema del microcontrolador, que se tranca cuando apagas la maquina, y hay que desconectar las baterias para reinicializar el equipo. Cuando la llevo, traigo un destornillador por si tengo que quitar la tapa para reinicializar la maquina.

https://community.mnt.re/t/lpc-spi-firmware-and-driver-prototype/1030

En suspend, la maquina aun usa bastante energia, yo tiendo a apagarla por completo cuando termino de usarla.