Un KVM sobre IP permite ver la pantalla de un computador remoto y controlarlo con teclado y mouse como si estuvieras sentado frente a él, incluso cuando la máquina está apagada o sin sistema operativo. Hasta ahora esas cajas costaban cientos de dólares, pero el ecosistema del ESP32-P4 está bajando el listón de precio de forma acelerada.

A comienzos de este mes apareció el proyecto P4 KVM, que da funcionalidad de KVM sobre IP a una placa Waveshare ESP32-P4-WIFI6-POE-ETH emparejada con un adaptador HDMI a CSI Toshiba TC358743. Su autor, Jonathan Rowny, lo describió como una prueba de concepto con muchos errores y sin seguridad, pero invitó a otros a bifurcar el código. Evgenij Spitsyn tomó esa invitación y publicó el proyecto ESP-KVM, que agrega codificación MJPEG y H.264 junto a una lista amplia de funciones.

¿Qué puede hacer ESP-KVM?

Estas son las capacidades que trae el proyecto según su documentación:

  • Captura de video, cambio de resolución y codificación MJPEG o H.264
  • Teclado, puntero absoluto y relativo, teclas multimedia y copiar/pegar
  • Modo táctil para teléfonos y tablets (trackpad y teclado en pantalla)
  • Múltiples espectadores, con uno en control a la vez y toma de mando
  • HTTPS, inicio de sesión y reinicio físico de contraseña
  • Actualizaciones de firmware por red, con reversión
  • Protección térmica
  • Medios virtuales: arrancar la máquina objetivo desde una imagen de disco (tarjeta microSD o flash interna)
  • Detección del sistema operativo del objetivo según cómo enumera el USB
  • Macros de usuario: secuencias de teclas reproducibles
  • Wake-on-LAN (sin cablear el ATX)
  • IP estática o DHCP
  • Control de energía ATX (botones de encendido y reinicio, lectura del LED de power)

Entre las limitaciones actuales está que el audio HDMI todavía no se implementa. El desarrollador también advierte que, salvo el inicio de sesión HTTPS y TLS, la seguridad de la solución no fue auditada a fondo, por lo que recomienda usarla solo en una red local o detrás de una VPN.

Arquitectura de ESP-KVM
Arquitectura de ESP-KVM

¿Cuánto cuesta armarlo?

Evgenij usa un hardware algo distinto al del proyecto original. Se apoya en una placa Waveshare ESP32-P4-ETH (20 dólares en Amazon) o en una ESP32-P4-Function-EV-Board, más una placa Geekworm C790 que convierte MIPI CSI a HDMI (23,90 dólares) y un módulo optoacoplador PC817 de dos canales opcional para los botones de encendido y reinicio (1,30 dólares en AliExpress). El costo total de materiales ronda los 45 dólares, cerca de 42.000 pesos chilenos al cambio actual.

A ese precio no se ahorra frente a los KVM sobre IP de entrada que ya existen, pero sigue siendo un proyecto interesante por ser completamente abierto y adaptable. Debería funcionar también con otras placas ESP32-P4 que tengan MIPI CSI, USB y conectividad Ethernet o WiFi.

Waveshare ESP32-P4-ETH, Geekworm C970 y modulo PC817 de dos canales
Waveshare ESP32-P4-ETH, Geekworm C970 y modulo PC817 de dos canales

¿Por qué el rendimiento es de 20 FPS?

Aunque uno esperaría que el nuevo silicio acelerara todo, el estado del proyecto ESP-KVM es el mismo que el del P4 KVM original: 20 cuadros por segundo con MJPEG y solo 7 cuadros por segundo con H.264. La razón es que Evgenij todavía usó una placa con un chip ESP32-P4 revisión V1.3, que exige un paso extra de conversión de espacio de color. Ese paso desaparece con las variantes V3.x, que traen una implementación de codificación H.264 apropiada. Wireless Tag ya ofrece un módulo ESP32-P4 V3.2, señal de que esas placas llegarán muy pronto y prometen mejorar bastante las tasas de cuadros.

Todos los recursos para empezar están en el sitio del proyecto y en su repositorio de GitHub con el código y documentación adicional. Ni siquiera hace falta hardware para probarlo: hay una demostración en vivo que permite conocer la interfaz de usuario.