Tools

Three things this project’s bug reports keep needing. Everything runs in this page — the files you drop are read in the browser and are never uploaded anywhere.

Looking for the live log of a board on your desk? That is the serial monitor.

What is in this firmware image?

Drop an espkvm-*.bin — the plain image or the merged one — and it will tell you the version it really is, when it was built, and which silicon it will boot on. The two ESP32-P4 families refuse each other’s images, so that last line is usually the answer to “why does this board sit in the loader”.

Decode a panic

Paste a Guru Meditation dump - registers, the stack, whatever the board printed - and give it the symbols for the firmware that was running. Every address that lands in a known function is named, so a reboot becomes a stack.

Symbols come from the release the board was running: the releases page has espkvm-<version>-symbols.zip. Drop the zip here and pick your board, or drop a single .sym from it. Both stay in the browser.

No symbols loaded.

Read an EDID

Drop an EDID blob (128 or 256 bytes) or paste it as hex. It lists the modes the block advertises with the pixel clock of each, and marks anything the capture path cannot carry: two MIPI lanes at 972 Mbit/s carrying RGB888 stop at about 81 Mpixel/s, and a mode above that gives a black screen rather than a slower one.