The ESP-KVM project has released a new version of open-source firmware that transforms a debug board based on an ESP32-P4 microcontroller into a fully-fledged IP-KVMāa device that provides access to a remote computer's screen, keyboard, and mouse via a browser. Unlike remote desktop tools, nothing is installed on the target machine and its operating system requires nothing: the device connects to the video output and USB port and operates whether the computer displays the BIOS interface, boots, is running with an empty disk, or is powered off. The code is written in C and distributed under the Apache 2.0 license.
The device is assembled from two small boards: a board with an ESP32-P4 and a capture board based on a TC358743 chip, which converts HDMI targets to MIPI-CSI. The image is then encoded using the microcontroller's hardware encodersāH.264 or MJPEGāand sent to the browser. The keyboard and mouse are fed to the target machine via USB OTG, meaning it sees standard input devices and requires no drivers. The reference board achieved approximately 20-24 frames per second at 1920x1080 and up to 45 at 1280x720.
Possibilities:
- Reading a text screen as text, not an image: the contents of the BIOS console, bootloader, or Linux- the console is recognized by the character generator and transmitted in symbols - the screen takes up a couple of kilobytes instead of megabytes, and the serial number or error code can be selected with the mouse and copied.
- Monitor your screen using preset phrases and receive alerts when your device is unattended.
- Target power management via optocoupler (power and reset buttons, LED reading), Wake-on-LAN and waking up a sleeping machine via USB.
- Built-in WireGuard and Tailscale, including working with its own manager server Headscale.
- Integration with Home Assistant via MQTT: sensors, buttons, firmware update entity, and camera with target screenshot.
- HTTPS with a device-issued certificate, password login, and physical password reset via a button on the board; you can also upload your own certificate.
- Dual-slot network firmware update with automatic rollback, a backup image on internal flash memory, and a portal access point if there's no network.
- Small status screen (I2C OLED or round GC9A01) with address, link status and temperature.
- Virtual media: The disk image from the microSD card is given to the target as a bootable USB drive, allowing the system to be installed on a machine with an empty disk.
The firmware is compiled for ten board variants, including the Waveshare ESP32-P4-ETH, ESP32-P4-NANO, and ESP32-P4-WIFI6, Espressif ESP32-P4 Function EV, Guition ESP32-P4-M3-Dev, and M5Stack Unit PoE-P4. The community has created several cases for the most popular Waveshare ESP32-P4-ETH board. You can flash the board directly from your browser, without installing any tools.
Release 0.45.0 adds support for two boardsāthe Waveshare ESP32-P4-Module-DEV-KIT and the DFRobot FireBeetle 2 ESP32-P4āand publishes an analysis of which ESP32-P4 boards are not suitable for this task and why.


Source: opennet.ru
