Open-source project
pikvm/pikvm avatar
pikvm/pikvm

The PiKVM feature table is where DIY ends and the sold hardware begins

Open and inexpensive DIY IP-KVM based on Raspberry Pi

10,468 stars576 forksUnknownGPL-3.0

At a glance

What is it?
PiKVM is a Raspberry Pi based IP-KVM that reaches a machine whose operating system is broken or absent, and the project publishes a per-platform feature table that is blunt about which parts you only get by buying an assembled unit. It fits homelab and server-room work where ATX, IPMI or a USB relay can reach the target, The table lists different HDMI input modes and audio features for DIY and assembled units, so check the specific capture hardware.
Who is it for?
PiKVM is the right tool when a server needs a console that survives a reinstall, and the DIY V2 on a Pi 5 or Pi 4 is the sensible starting point for a homelab. For HDMI 1080p60 input compatibility, the table lists the assembled V4 models; it also lists HDMI audio capture, microphone and webcam features for V3 and V4 but not the DIY variants.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 12 days ago.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on November 14, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • pikvm/pikvm10,468 ★ · +119
Star history
Repository2026-09-222026-11-14
pikvm/pikvm10.3k10.5k

119 Stars in the last 53 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

The job is the machine whose operating system no longer answers

PiKVM is built for a specific failure: the target is on, but you cannot log in. The project states that its device manages servers or workstations remotely regardless of the health of the operating system or whether one is installed, and that you can fix a problem, enter the BIOS, or reinstall the OS through the emulated virtual CD/DVD or flash drive. That is the whole reason the storage emulation exists. Images can be kept on NFS rather than on the SD card of the Pi itself. The framing also sets the scope. One PiKVM unit addresses one machine, and multiport work is a separate product: the PiKVM Switch is a separate add-on described as transforming a PiKVM into a multiport device.

Two capture paths decide your build, and the OS image is read only

FullHD video arrives through one of two routes, an HDMI-to-CSI bridge or a USB dongle.. The Pi side is unusually open: a device can be based on Raspberry Pi 2, Pi 3, Pi 4, Pi 5 or Zero2W. The system itself is provided as a ready-made OS with a read-only filesystem, so the Pi is not treated as a general purpose machine you log into and modify, which suits an appliance in a rack or a closet. What you cannot do is treat the SD card as scratch space for your own tooling.

Audio, microphone and web camera stop at the DIY line

This is the sharpest cut in the platform table. HDMI audio capture, the microphone for two-way audio and the web camera for video calls are marked present on the V4 Plus, the V4 Mini and the V3, and marked absent on DIY V2 and DIY V1. Input is not affected, since USB keyboard and mouse emulation is marked on every platform including both DIY lines, and super fast H.264 and MJPEG video up to 1080p 60fps is marked on every platform too. So a DIY unit is not a reduced V4, it is a video and keyboard device. The table does not list those audio and webcam features for its DIY configurations; that table alone does not establish what every possible third-party capture device can support. Anyone planning a DIY build for a shared desk or a recording setup should read the video row before the input row.

Sixty hertz modes stop at the V4 line, and local passthrough stops at the Plus

Two display capabilities narrow the choice further. HDMI 1920x1200 at 60Hz, offered for big displays, and HDMI 1920x1080 at 60Hz, offered for BIOS and UEFI compatibility, are marked on the V4 Plus and V4 Mini and not on the V3 or on either DIY line. Video passthrough to a local display is narrower still, marked only on the V4 Plus, so a PiKVM with its own screen next to the machine is a single-model feature. The same table separately claims streaming at up to 1080p 60fps for every platform. These rows describe different aspects of input compatibility and encoded output, so check the actual capture hardware and supported input modes rather than treating either row as a universal guarantee. The BIOS line is the one to watch, because the stated reason for the 1080p60 mode is UEFI compatibility, and that is exactly the situation a KVM exists to handle. Buying the Mini gets the refresh modes; buying the Plus is what adds a physical console screen.

Host power arrives through ATX, and out of band control through IPMI or Redfish

PiKVM reaches the target in two distinct ways, and they solve different problems. Direct control of server power is done using ATX functions. Separately, the device can use IPMI BMC, IPMI SoL, Redfish and Wake-on-LAN to control the server. The project also lists control of GPIO ports and USB relays. What you cannot do is expect PiKVM to power-cycle a machine that exposes none of these interfaces.. The practical consequence is a wiring decision made before assembly: which of ATX, IPMI, a front panel button or a relay the target machine exposes decides whether your build can cold boot it, cycle it or only watch it.

Input emulation is broad, and delivery stops at the web UI or VNC

The emulation side covers more than a plain keyboard. USB keyboard and mouse emulation is listed with LEDs and the wheel, there is Bluetooth HID, a mouse jiggler, and full support of PS/2, so older machines and BIOSes that predate USB input are inside the stated scope rather than an afterthought. Delivery is narrower. Access is through the web UI or VNC, and video is offered as WebRTC, H.264-over-HTTP and MJPEG, so the transport is a choice between browser friendly paths and a classic remote framebuffer client rather than an open plugin protocol. Security is handled by extensible authorization and HTTPS out of the box, which for a device sitting on a management network is the part to verify before you point it at production. On latency the project claims a proven 35-50ms H.264 figure and links a latency page in its documentation. Treat that as a claim from the project, and read that page if the number has to hold a budget for your own use.

The repository is documentation and a product table, with no release stream

The repository root is not a source tree you can build. Its top level holds README.md, LICENSE, a docs directory, an img directory, mkdocs.yml, a .github directory and .gitignore, and the project publishes its documentation at docs.pikvm.org with mkdocs.yml as the site configuration. The software stack itself is common to every platform, which is stated as the reason V1 through V4 share one codebase, and the documentation is where assembly and configuration live. There are no GitHub releases on this repository, so there is no version to pin and no release notes to read before an update; the last push to master is dated 2026-10-27. What you cannot do is treat the repository as the place where firmware versions are announced. Two consequences follow for anyone planning a rollout, because a deployment has no rollback target in the shape of a tag, and because the assembled V4 and V3 are devices you buy while V2 and V1 are builds you assemble, which means the hardware variant and the software variant are chosen at different moments.

Editorial conclusion

PiKVM is the right tool when a server needs a console that survives a reinstall, and the DIY V2 on a Pi 5 or Pi 4 is the sensible starting point for a homelab. For HDMI 1080p60 input compatibility, the table lists the assembled V4 models; it also lists HDMI audio capture, microphone and webcam features for V3 and V4 but not the DIY variants. Verify the capture hardware and current documentation before buying. Before ordering anything, confirm the target exposes ATX, IPMI, Redfish or Wake-on-LAN, or plan on GPIO and USB relays, and read the platform table rather than the general feature list, since the two do not agree.

Frequently asked questions

What does a PiKVM do?

It gives you keyboard, video and mouse access to a server or workstation over IP, and it works whether or not that machine has a working operating system installed. You can fix problems, configure the BIOS and reinstall the OS through the virtual CD/DVD or flash drive.

Can I make my own PiKVM?

Yes. V2 and V1 are DIY variants: the V2 lists RPi5, RPi4 or Zero2W as base units and the V1 lists RPi3, RPi2 or Zero2W. FullHD capture then needs an HDMI-to-CSI bridge or a USB dongle, and the DIY lines have no HDMI audio capture, microphone or web camera.

how to access pikvm remotely

Access is through the web UI or VNC, with extensible authorization and HTTPS enabled out of the box. Video can be delivered as WebRTC, H.264-over-HTTP or MJPEG, and keyboard and mouse emulation covers USB, Bluetooth HID and PS/2.

what is pikvm

PiKVM is an open source, inexpensive DIY IP-KVM based on the Raspberry Pi, released under GPL-3.0. It ships as assembled V4 and V3 devices and as DIY V2 and V1 builds, all running the same software stack.

Official sources

  1. Issues
  2. License: GPL-3.0
  3. pikvm/pikvm on GitHub
  4. Project website
  5. README
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/pikvm-pikvm.svg)](https://hysenlabs.com/projects/pikvm-pikvm)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/pikvm-pikvm.svg)](https://hysenlabs.com/projects/pikvm-pikvm)

Was this useful?