GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • espkvm
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles

This view

  • Original page
  • New address

GeezerVison is showing github.com — ESP KVM

README.md

ESP-KVM

An open IP-KVM on the ESP32-P4 - a target machine's screen, and a USB keyboard and mouse, in a browser.

Website · Flash from the browser · Releases


Reach a machine that has no working operating system: a BIOS screen, a boot menu, a kernel that will not come up. A small ESP32-P4 board plugs into the target's HDMI output and a USB port, and you get its screen, sound, keyboard and mouse in a browser tab, from a laptop, a phone or a tablet. Nothing to install on either end, no cloud, no account.

The ESP-KVM console driving a real machine.

What it does

  • Picture through a TC358743 bridge (or the LT6911D on the M5Stack Unit PoE-P4), H.264 over WebRTC or a WebSocket, or MJPEG. It follows the target from an 800x600 firmware screen to a 1080p desktop on its own.
  • Sound from HDMI, live in the browser and in recordings.
  • Keyboard, mouse and gamepad over USB, as the target sees real ones. The pointer is absolute, so clicks land where you aim.
  • Virtual media: disk and CD/DVD images from microSD, to boot or install from.
  • Recordings, screenshots and a dashcam on microSD, and the screen as text where the link is too thin for video.
  • From anywhere with Tailscale or WireGuard built in, without opening a port.
  • HTTPS, a login and two-factor codes, with a certificate the device issues itself.
  • Updates itself over the network, into a spare slot, with rollback.

Runs on a dozen boards from Waveshare, Espressif and M5Stack. The list, with what is tested, is on espkvm.io.

Repositories

espkvm The firmware. Start here.
console The web console (Vue), a submodule of the firmware.
espkvm.io The project page, the blog and the browser flasher.
fw Images and update manifests behind fw.espkvm.io, written by the release workflow.
check check.espkvm.io, the opt-in count of devices in use.
skills Skills that let an AI agent drive a computer through ESP-KVM.
espkvm-term Experimental: an ESP-KVM screen on an M5Stack Tab5, no browser.
microlink Tailscale client for the ESP32, forked from CamM2325/microlink.
esp_wireguard WireGuard for ESP-IDF, forked from trombik/esp_wireguard.

Standing on someone else's work

ESP-KVM began as a fork of jrowny/p4kvm by Jonathan Rowny. The TC358743 bring-up and the direct MIPI_CSI_BRIDGE programming - the hard, weeks-of-reverse-engineering part - are still the foundation. Everything above them was rewritten. Thank you, Jonathan, for putting it in the open.

A non-commercial, community open-source project.

Apache-2.0. Not for the public internet: keep it on a network you trust, or reach it over Tailscale or WireGuard.

Pinned Loading

  1. espkvm espkvm Public

    IP-KVM on the ESP32-P4: HDMI capture, USB keyboard and mouse, and a browser console over HTTPS

    C 595 45

Repositories

Loading
Type
Language
Sort
Showing 10 of 12 repositories
  • fw Public

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/fw's past year of commit activity
    HTML 0 0 0 0 Updated Nov 11, 2026
  • espkvm.io Public

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/espkvm.io's past year of commit activity
    HTML 1 1 0 0 Updated Nov 11, 2026
  • skills Public

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/skills's past year of commit activity
    0 Apache-2.0 1 0 0 Updated Nov 11, 2026
  • espkvm Public

    IP-KVM on the ESP32-P4: HDMI capture, USB keyboard and mouse, and a browser console over HTTPS

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/espkvm's past year of commit activity
    C 595 Apache-2.0 45 3 0 Updated Nov 11, 2026
  • console Public

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/console's past year of commit activity
    Vue 0 Apache-2.0 3 1 1 Updated Nov 11, 2026
  • microlink Public Forked from CamM2325/microlink

    Tailscale-compatible VPN client for ESP32. Full ts2021 protocol support with WireGuard encryption, DERP relay, DISCO path discovery, and STUN. Connect your ESP32 devices to your tailnet and communicate securely with any peer. Production-ready, memory-optimized (~100KB SRAM).

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/microlink's past year of commit activity
    C 3 93 0 0 Updated Nov 9, 2026
  • check Public

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/check's past year of commit activity
    JavaScript 0 Apache-2.0 0 0 0 Updated Nov 4, 2026
  • agent Public

    A small program for the machine ESP-KVM controls. Over the same USB cable it gives the device the machine's name and addresses, the clipboard both ways and a clean shutdown. Linux, Windows, macOS.

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/agent's past year of commit activity
    Go 0 Apache-2.0 0 0 0 Updated Oct 28, 2026
  • mcp Public

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/mcp's past year of commit activity
    Python 0 Apache-2.0 0 0 0 Updated Oct 25, 2026
  • .github Public

    Uh oh!

    There was an error while loading. Please reload this page.

    espkvm/.github's past year of commit activity
    0 0 0 0 Updated Oct 21, 2026
View all repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Uh oh!

There was an error while loading. Please reload this page.

Most used topics

Loading…

Uh oh!

There was an error while loading. Please reload this page.

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.