Die Veröffentlichung von ESP-KVM 0.51.2 ist erschienen, einer offenen Firmware, die ein Board auf Basis des ESP32-P4-Mikrocontrollers in ein IP-KVM verwandelt und den Zugriff auf Bildschirm, Tastatur und Maus eines entfernten Computers ĂŒber den Browser ermöglicht, ohne einen Agenten auf dem verwalteten System zu installieren. Der Code ist in C geschrieben und wird unter der Apache-2.0-Lizenz bereitgestellt. Die wichtigste Neuerung dieser Version ist die Aufzeichnung des Zielbildschirms auf die microSD-Karte des GerĂ€ts selbst.
Die Aufzeichnung wird per SchaltflĂ€che im Web-Interface gestartet und im Verzeichnis VIDEO als .ts-Dateien mit H.264-Video gespeichert. Das GerĂ€t zeichnet denselben Stream auf, den es an die Zuschauer ausliefert, daher ist keine erneute Kodierung erforderlich: Auf dem Board Espressif ESP32-P4 Function EV blieb bei der Videowiedergabe auf dem Zielsystem die Bildrate wĂ€hrend der Aufzeichnung ohne EinbuĂen bei 21â22 Bildern pro Sekunde. Die .ts-Datei lĂ€sst sich in VLC und mpv abspielen, und eine durch Kartenentnahme oder Stromausfall unterbrochene Datei kann bis zum Abbruch geöffnet werden. Lange Aufzeichnungen werden in 10-Minuten-Dateien aufgeteilt und nach einer Stunde beendet; beide Werte sind konfigurierbar. Ăber eine separate SchaltflĂ€che wird zudem ein Screenshot im JPEG-Format im Ordner SCREENSHOTS gespeichert, auch wenn der H.264-Codec aktiv ist: FĂŒr den Screenshot wird der ungenutzte Hardware-JPEG-Encoder verwendet.
Tastatureingaben und Mausklicks lassen sich als .srt-Untertiteldatei neben dem Video speichern, etwa in Form von Zeilen wie âTyped: rootâ, âCtrl+Alt+Deleteâ oder âLeft click (812, 440)â. StandardmĂ€Ăig wird eingegebener Text durch Punkte ersetzt, bei Bedarf kann er aber vollstĂ€ndig gespeichert werden. Das Tastaturlayout wird aus den Einstellungen der Zieltastatur ĂŒbernommen.
Hinzugekommen ist ein Dashcam-Modus, der nach demselben Prinzip wie im Auto arbeitet: Das GerĂ€t hĂ€lt die letzten Minuten des Bildschirms permanent vor und speichert sie zusammen mit den nachfolgenden Sekunden, sobald etwas passiert â etwa wenn der Bildschirm einfarbig wird (typisch fĂŒr einen Absturzbildschirm), eine ĂŒberwachte Phrase erscheint, die ATX-Betriebsanzeige erlischt oder der Operator eine Taste drĂŒckt. Das entstandene Video wird in MP4 mit Kapiteln fĂŒr jedes Ereignis umgewandelt und bei aktivierten Benachrichtigungen als direkt im Chat abspielbares Video an Telegram gesendet.
Vergangene Inhalte lassen sich auf zwei Arten vorhalten: im PSRAM, wo sie bis zum Eintritt eines Ereignisses keinen Platz auf der Karte belegen, oder direkt auf der Karte in kurzen Fragmenten mit Löschung veralteter Abschnitte. Die zweite Methode funktioniert auch auf Boards mit Chip-Revisionen vor 3.0, bei denen nach dem Start des H.264-Encoders nur etwa 3 MB freier PSRAM verbleiben, gegenĂŒber 11 MB bei neueren Revisionen.
Es gibt jetzt einen Timelapse-Modus: Es wird jeweils ein Bild in dem festgelegten Sekundenabstand gespeichert, die Wiedergabe erfolgt mit 25 Bildern pro Sekunde. Dadurch werden aus einer Stunde Aufnahme bei einem Intervall von 10 Sekunden nur 14 Sekunden Video. Aufnahmen und Screenshots sind in einem separaten Bereich der OberflĂ€che gesammelt, von wo aus sie sich herunterladen, löschen und ohne vorheriges vollstĂ€ndiges Laden der Datei abspielen lassen: MP4 wird im integrierten Browser-Player geöffnet, und .ts wird direkt in der Konsole in Frames zerlegt und mit demselben H.264-Decoder wie das Live-Bild dekodiert, inklusive Spulen und Anzeige von Untertiteln. FĂŒr das Spulen auf GerĂ€teseite wurde UnterstĂŒtzung fĂŒr HTTP-Bereiche implementiert.
Eine Suche nach Text auf dem Bildschirm wurde ebenfalls implementiert. WĂ€hrend der Aufzeichnung liest das GerĂ€t den Bildschirm alle drei Sekunden als Zeichensatz aus und speichert das Gelesene in einer Datei neben dem Video; in der AufnahmeĂŒbersicht zeigt die Suche nach einer Phrase an, wann sie auf dem Bildschirm zu sehen war, und startet die Wiedergabe ab diesem Zeitpunkt. Gelesen werden nur Bildschirme, die mit einem Zeichengenerator dargestellt werden â BIOS, Boot-MenĂŒ, Installationsprogramm, Konsole.
Aufnahmen, Zeitrafferaufnahmen und Screenshots lassen sich aus GerĂ€teskripten (ârecord 300â, âtimelapse 60â, âscreenshotâ) sowie aus Home Assistant starten, wo dafĂŒr ein Schalter und Tasten verfĂŒgbar sind. Die Uhr des GerĂ€ts wird jetzt per NTP synchronisiert, und die Zeitzone wird in den Einstellungen aus einer StĂ€dteleiste ausgewĂ€hlt â zuvor war sie in einem Bereich gespeichert, den die OberflĂ€che nicht angezeigt hat.
Weitere Ănderungen in den Veröffentlichungen nach 0.45.0:
- 0.46. Es wurden Builds fĂŒr die Boards VIEWE ESP32-P4-Pi und Waveshare ESP32-P4-NANO-WIFI6-DB hinzugefĂŒgt. Die Firmware wird nun mit der Optimierung -O2 gebaut, kleine Speicherzuweisungen wurden in den PSRAM verlagert, und eine hĂ€ngengebliebene Aufgabe fĂŒhrt jetzt zu einem Neustart mit Speicherung eines Dumps.
- 0.47. Runbooks sind jetzt verfĂŒgbar â Makros, die auf das Erscheinen oder Verschwinden einer Zeichenfolge auf dem Textbildschirm warten können und direkt auf dem GerĂ€t ausgefĂŒhrt werden, auch wenn der Browser geschlossen ist; Skripte im DuckyScript-Format werden unterstĂŒtzt. Hinzugekommen sind ein Scheduler mit cron-Syntax sowie Benachrichtigungen an Telegram (mit Screenshot) oder per Webhook.
- 0.48. microSD-Karte und WiFi-Modul funktionieren nun gleichzeitig â zuvor nutzten beide denselben SDMMC-Slot.
- 0.49. Die microSD-Karte auf den Boards Function EV und Waveshare ESP32-P4-ETH lĂ€uft nun mit einer Busfrequenz von 40 MHz statt 4 MHz (Lesen ca. 9 MB/s, Schreiben ca. 4 MB/s): Die Stromversorgung der Slot-Leitungen ĂŒber den integrierten Spannungsregler war nicht aktiviert. Das Hochladen eines Images ĂŒber das Webinterface wurde um etwa das 50-Fache beschleunigt, auf bis zu 3,5 MB/s ĂŒber Ethernet. Ein Tastaturmodus fĂŒr Ă€ltere BIOS-Versionen wurde hinzugefĂŒgt â das Zielsystem erkennt ein einziges GerĂ€t mit USB-1.1-Geschwindigkeit, ohne Maus und ohne Speicherlaufwerk. Das GerĂ€t meldet, wenn der HDMI-Modus die Bandbreite von zwei MIPI-CSI-Lanes ĂŒberschreitet.
- 0.49.1. Das Lesen des virtuellen Speicherlaufwerks durch die Zielmaschine wurde von 5,6 auf 9 MB/s beschleunigt, indem von der Karte in 256-KB-Blöcken gelesen wird. Ein Image-Wechsel wird fĂŒr die Zielmaschine jetzt auch ohne erneutes Verbinden von USB sichtbar.
- 0.50. Die microSD-Karte kann jetzt im laufenden Betrieb gewechselt werden, auch wenn sie mitten wĂ€hrend eines Kopiervorgangs entfernt wird: Der Slot wird alle fĂŒnf Sekunden geprĂŒft. Eine MJPEG-Verzögerung wurde behoben, durch die der Browser bei einem unverĂ€nderten Bildschirm ein Bild anzeigte, das noch vor dem letzten Tastendruck lag.
Quelle: opennet.ru
