mz25key Interfaz Guia del Desarrollador
Guia del Desarrollador mz25key
El mz25key es una interfaz de teclado dedicada para los ordenadores Sharp MZ-2500 y MZ-2800, basada en el microcontrolador ESP32 de doble nucleo. Comparte su codigo fuente con el proyecto SharpKey pero se compila con una configuracion simplificada.
Nota: Esta guia contiene codigo fuente y detalles tecnicos en ingles. Consulte la version inglesa para el contenido completo.
Requisitos previos
- ESP-IDF v4.4
- Python 3.8+
- Git
- Adaptador USB-TTL UART
- Docker (opcional)
Estructura del repositorio
Repositorio: https://git.eaw.app/eaw/mz25key. Sin submodulos git.
Contenido tecnico completo en la version inglesa.
Instalacion y build automatizados (recomendado)
La forma mas sencilla de compilar el firmware mz25key es el script de instalacion automatizado para su plataforma. Cada script es autonomo: copie unicamente el archivo correspondiente a su plataforma y ejecutelo. Instala la cadena de herramientas ESP-IDF v4.4, clona el repositorio (obteniendo las dos bibliotecas de componentes requeridas en
components/) y puede compilar el firmware, todo de forma interactiva, con valores por defecto sensatos que puede aceptar pulsando Enter. Los pasos manuales nativos, con Docker y de menuconfig descritos a continuacion siguen disponibles para usuarios avanzados y recompilaciones parciales.
macOS / Linux / WSL — setup_mz25key.sh
chmod +x setup_mz25key.sh
./setup_mz25key.sh
El script detecta automaticamente su sistema operativo. Prefiere Docker (la imagen oficial
espressif/idf:v4.4, una descarga unica de ~3 GB) y recurre a una instalacion nativa de ESP-IDF v4.4 (Python 3.8-3.11, CMake, Ninja y los demas prerrequisitos mediante apt, dnf, pacman o Homebrew) cuando Docker no esta disponible. En Linux y WSL puede instalar Docker Engine por usted.
Windows 10 / 11 — setup_mz25key_windows.ps1 (nativo, sin WSL ni Docker)
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
.\setup_mz25key_windows.ps1
El script de Windows usa winget para instalar Git y (si no esta ya presente) Python 3.10 en un entorno virtual aislado, luego instala la cadena de herramientas nativa ESP-IDF v4.4 para Windows de Espressif y compila el firmware. Requiere el App Installer de Microsoft (que proporciona
Preguntas que hace el instalador
winget); instalelo desde la Microsoft Store si no se encuentra winget.
Cada solicitud tiene un valor por defecto seguro entre corchetes; la letra en mayuscula es el valor por defecto, asi que pulsar Enter lo acepta.
macOS / Linux / WSL (setup_mz25key.sh):
| Solicitud | Por defecto | Que hacer |
|---|---|---|
Install Docker Engine now? [Y/n] (Linux / WSL, si falta Docker) |
Si | Enter para instalar Docker y compilar en el contenedor, o n para recurrir a una instalacion nativa de ESP-IDF. |
Install now? [Y/n] (paquetes del SO / ESP-IDF nativo) |
Si | Enter: instala los paquetes del SO que faltan y ESP-IDF v4.4; puede pedir sudo. |
Repo URL [https://git.eaw.app/eaw/mz25key.git] |
repo publico | Enter para el repo publico, o pegue otra URL (p. ej. el repo de desarrollo privado). |
Install directory [~/mz25key] |
~/mz25key |
Enter para ~/mz25key, o escriba una ruta. |
Remove <dir> and re-clone? [y/N] (si ese directorio contiene un repo distinto) |
No | y solo si esta seguro; en caso contrario N y elija otro directorio. |
Build the mz25key firmware now? [Y/n] |
Si | Enter para compilar de inmediato (verifica el entorno). |
Windows (setup_mz25key_windows.ps1):
| Solicitud | Por defecto | Que hacer |
|---|---|---|
Repo URL [https://git.eaw.app/eaw/mz25key.git] |
repo publico | Enter para el repo publico, o pegue otra URL. |
mz25key checkout directory [%USERPROFILE%\mz25key] |
%USERPROFILE%\mz25key |
Enter para el valor por defecto, o escriba una ruta. |
Build the mz25key firmware now? [Y/n] |
Si | Enter para compilar de inmediato. |
Para ejecuciones desatendidas (no interactivas), ambos scripts respetan variables de entorno:
Salida y recompilacion
MZ25KEY_REPO_URL define la URL del repositorio, y MZ25KEY_BUILD fuerza el metodo de build (docker o native).
Tras una ejecucion correcta, la imagen del firmware esta en
build/main.bin y la imagen del sistema de archivos web en build/filesys.bin, los mismos artefactos que produce el build manual. Para recompilar mas tarde sin volver a ejecutar el script de instalacion:
# Docker (macOS / Linux / WSL) docker run --rm -it -v "$PWD":/project -w /project espressif/idf:v4.4 idf.py build # Native ESP-IDF (macOS / Linux / WSL) . ~/esp/esp-idf-v4.4/export.sh && idf.py build # Native ESP-IDF (Windows PowerShell) & "$HOME\esp\esp-idf-v4.4\export.ps1"; idf.py build
Entorno de compilacion
Los pasos manuales de configuracion de la cadena de herramientas y compilacion (nativo, Docker y menuconfig) se documentan en la version inglesa, para usuarios avanzados y recompilaciones parciales. La mayoria de los usuarios deberian usar el script de instalacion automatizado anterior, que realiza todos esos pasos por usted.
Licencias
Bajo GNU Public Licence v3.
Aviso de regulacion inalambrica
Modulo ESP32-S pre-certificado en la banda ISM de 2,4 GHz. Responsabilidad del constructor.