Thank you to Ohan Smit (ZS1SCI) for submitting his guide that shows us how to compile the latest NanoVNA firmware from the source code. The NanoVNA is an open source VNA project by @edy555 and ttrftech that has recently become extremely affordable at less than US$50 for a fully assembled unit thanks to Chinese manufacturing (or a little more if you order it via Amazon).
As the NanoVNA project is open source the code is ever evolving and the units that ship from China now come with older firmware installed. If you want to test the very latest experimental code, you need to compile it on a PC, and then flash the firmware into the NanoVNA. Ohan's guide covers this all. For example, one recent update now enables time-domain reflectometry for measuring coax cable length, which we explored in a previous post.
Alternatively according to the GitHub readme, it is also possible to use a docker image which will remove the need to install the arm tool chain. Ready to flash images are also released every few days over on the GitHub release page, although these won't include the very latest or experimental changes.