# Second KVM family: Sipeed NanoKVM, first runs

**Claim.** A second, different KVM (the Sipeed NanoKVM, which has its own interface and is not a Comet) works through the same driver layer. It showed the target's screen, typed, moved the mouse, and mounted a disk image that the target then saw. This is one unit, one target, one day, so it is a first run and not a certification.

**Method.** One NanoKVM Mini (application 2.5.2) was plugged into a Raspberry Pi 5 running Ubuntu at a text console, in the operator's lab. The driver was written from what the unit's own web page does on the wire; no source code from the NanoKVM project was copied. Screen results were checked on the picture itself. Input and media results were checked a second way on the target over ssh: its kernel input events and its list of block devices.

**What worked.**
- Login. The web page sends the password in a particular encoded form. The driver builds the same form, checked against OpenSSL.
- Screen. A full 1920 by 1080 picture arrived in about a tenth of a second.
- Typing and keys. Text typed at the login shell appeared in the next picture and was cleared with Ctrl+U. Enter was never sent, so no command ran on the target.
- Mouse and keys against the kernel. 17 of 17 checks passed, on the same record as the Comet (see the input check record).
- Media. A test ISO was uploaded, mounted as a CD-ROM, and the target listed it as an ISO 9660 disc with the test label. After an eject on the target the unit unmounted it, the image was deleted, and the unit was back in its starting state.
- Remote access. The unit joined the operator's own Tailscale-compatible network and rejoined by itself after a reboot.

**Quirks that changed the driver.**
- The first picture of the video stream can be stale. A picture read right after a key showed the screen from before it. The driver drops one frame, and pictures after that were current.
- The unit keeps its storage read-only while it shows the target a virtual USB disk. An upload is refused until that disk is switched off, and a mount needs it switched on again. The driver does the switching.
- The USB CD-ROM function refuses an image under about 600 KB (the kernel log says "file too small"). A 368 KB test image failed for that reason alone.
- A mounted disc cannot be unmounted while the target holds it locked. Eject it on the target first, then unmount.
- The unit cannot say whether the target sees its keyboard. The driver reports "unknown", not "yes".

**Sample size.** One unit, one target, one run of each check. No repeat runs.

**Not tested.** Power control (the Mini has no ATX header of its own), Wake-on-LAN, where a cursor lands on a graphical screen, any other firmware, any other NanoKVM model, and any target other than a Raspberry Pi at a text console.

**Limits.**
- This shows the driver and the unit agree on these behaviours. It is not a success rate.
- The first picture, upload and unmount quirks are observed on this firmware only.
- A first guess about the storage ("no card") was wrong and was corrected after reading the unit's own start-up log.

**Raw data.** The notes in `docs/evidence/nanokvm-notes.md` and the kernel-level check in [the input check record](input-check.md).
