Es wurde eine neue Version des Projekts ESP-KVM veröffentlicht, das eine offene Firmware entwickelt, mit der sich ein Debug-Board auf Basis des ESP32-P4-Mikrocontrollers in ein vollwertiges IP-KVM verwandeln lĂ€sst â also in ein GerĂ€t, das ĂŒber den Browser Zugriff auf Bildschirm, Tastatur und Maus eines entfernten Computers ermöglicht. Anders als bei Remote-Desktop-Lösungen muss auf dem verwalteten System nichts installiert werden, und auch vom Betriebssystem wird nichts benötigt: Das GerĂ€t wird an den Videoausgang und den USB-Port angeschlossen und funktioniert, wenn der Computer die BIOS-OberflĂ€che anzeigt, startet, mit leerem DatentrĂ€ger dasteht oder ausgeschaltet ist. Der Code ist in C geschrieben und wird unter der Apache-2.0-Lizenz veröffentlicht.
Das GerĂ€t wird aus zwei kleinen Platinen aufgebaut: einer Platine mit ESP32-P4 und einer Capture-Platine mit dem TC358743-Chip, die das HDMI-Signal des Zielsystems in MIPI-CSI umsetzt. AnschlieĂend wird das Bild mit den Hardware-Encodern des Mikrocontrollers selbst â H.264 oder MJPEG â kodiert und an den Browser ĂŒbertragen. Tastatur und Maus werden ĂŒber USB OTG an das Zielsystem angebunden, sodass dieses ganz normale EingabegerĂ€te erkennt und keine Treiber benötigt. Auf der Referenzplatine wurden rund 20â24 Bilder pro Sekunde bei 1920Ă1080 und bis zu 45 bei 1280Ă720 erreicht.
Zu den Funktionen gehören:
- Auslesen eines Textbildschirms als Text statt als Grafik: Der Inhalt der BIOS-Konsole, des Bootloaders oder der Linux-Konsole wird anhand des Zeichengenerators erkannt und als Zeichen ĂŒbertragen â der Bildschirm belegt dabei nur wenige Kilobyte statt Megabyte, und eine Seriennummer oder ein Fehlercode lĂ€sst sich mit der Maus markieren und kopieren.
- Ăberwachung des Bildschirms auf vordefinierte Textphrasen mit Benachrichtigung, wenn gerade niemand das GerĂ€t beobachtet.
- Steuerung der Stromversorgung des Zielsystems ĂŒber einen Optokoppler (Ein-/Aus-Schalter und Reset, Auslesen der Statusanzeige), Wake-on-LAN und Aufwecken eines schlafenden Systems per USB.
- Integriertes WireGuard und Tailscale, einschlieĂlich Betrieb mit eigenem Steuerungsserver Server Headscale.
- Integration mit Home Assistant ĂŒber MQTT: Sensoren, SchaltflĂ€chen, eine EntitĂ€t fĂŒr Firmware-Updates und eine Kamera mit Bildschirmaufnahme des Zielsystems.
- HTTPS mit einem Zertifikat, das das GerĂ€t selbst ausstellt, Anmeldung per Passwort und physisches ZurĂŒcksetzen des Passworts ĂŒber eine Taste auf der Platine; ein eigenes Zertifikat kann ebenfalls hochgeladen werden.
- Firmware-Update ĂŒber das Netzwerk mit zwei Slots und automatischem Rollback, Notfall-Image im internen Flash-Speicher sowie ein Access Point mit Portal, falls kein Netzwerk verfĂŒgbar ist.
- Kleines Statusdisplay (I2C OLED oder rundes GC9A01) mit Adresse, Link-Status und Temperatur.
- Virtuelle DatentrÀger: Ein Disk-Image von der microSD-Karte wird dem Zielsystem als bootfÀhiges USB-Laufwerk bereitgestellt, sodass sich das System auf einem Rechner mit leerer Festplatte installieren lÀsst.
Die Firmware wird fĂŒr zehn Platinenvarianten erstellt, darunter Waveshare ESP32-P4-ETH, ESP32-P4-NANO und ESP32-P4-WIFI6, Espressif ESP32-P4 Function EV, Guition ESP32-P4-M3-Dev sowie M5Stack Unit PoE-P4. FĂŒr die beliebteste Platine, Waveshare ESP32-P4-ETH, hat die Community mehrere GehĂ€use entwickelt. Die Platine lĂ€sst sich direkt im Browser flashen, ganz ohne Installation zusĂ€tzlicher Tools.
In Version 0.45.0 wurde die UnterstĂŒtzung fĂŒr zwei Platinen hinzugefĂŒgt â Waveshare ESP32-P4-Module-DEV-KIT und DFRobot FireBeetle 2 ESP32-P4 â und auĂerdem eine Analyse veröffentlicht, welche ESP32-P4-Platinen fĂŒr diesen Einsatzzweck ungeeignet sind und warum.


Quelle: opennet.ru
