DFU-UTIL a command line program for flashing .dfu files, mostly used with Linux. To download a .dfu firmware file from your computer to your NanoVNA, run this command NOTE download means send to the target device !! dfu-util -a 0 -D your-firmware-file.dfu -------------------------------------------------------------------------------------- To UPLOAD a .dfu firmware file from your NanoVNA to your PC, run this command - dfu-util -a 0 -U your-firmware-file.dfu -------------------------------------------------------------------------------------- If you need to list your device (if you have multiple units connected) then use this - sudo dfu-util -l -------------------------------------------------------------------------------------- The above comes from a manual on dfu-util, however, an alternative process was described on the NanoVNA user group, and quoued below - When you look what is online on USB you will see (nanoVNA): $ dfu-util -l ... Found DFU: [0483:df11] ver=2200, devnum=16, cfg=1, intf=0, path="20-1", alt=1, name="@Option Bytes /0x1FFFF800/01*016 e", serial="FFFFFFFEFFFF" Found DFU: [0483:df11] ver=2200, devnum=16, cfg=1, intf=0, path="20-1", alt=0, name="@Internal Flash /0x08000000/064*0002Kg", serial="FFFFFFFEFFFF" When flashing, you have to select alt=0, and USB ID 0483:df11. e.g. $ dfu-util -v -d 0483:df11 --alt 0 -D NanoVNA_with_scan_and_1500MHz_tinhead.dfu -------------------------------------------------------------------------------------- Use at own risk. Not all .dfu have been tested. Some may have bugs. Always save your own firmware first. DFU stands for Device Firmware Upgrade, used on STM chips to flash across firmware updates. DFU-UTIL is the software that does this. You need to short out two pins on the VNA to put it into reflash mode. See the pdf document for picture. Best to run software within the directory of you firmware files, so to avoid path problems / errors. Remember, filenames are Case sensitive, get them right ! -------------------------------------------------------------------------------------- You must recalibrate the NanoVNA afterwards, as well as the touch screen. ALL nanoVNA devices/versions need their touchscreen calibrated to work properly. You need to connect the device via its USB serial interface to your PC/MAC/Terminal device in order to complete the operation. You can now use a serial terminal emulator such as Cutecom on the Rpi and bring up the nanoVNA console. Cutecom also works at 57600, 115200, 230400 You may need to hit the ENTER key once or twice to bring up the command shell prompt. For those units running ChibiOS, the prompt is ch> At the command prompt, enter: touchcal The terminal will prompt you to touch the upper left, then the lower right. The nanoVNA will now display a calibration point at the upper-left corner of the display. Touch the corner - a new calibration point will appear at the lower right corner of the display. Touch that corner - the screen is now calibrated - BUT NOT SAVED. The terminal shows the touch calibration parameters and displays another ch>. Now, you need to save the touchscreen calibration. At the command prompt, enter saveconfig. Theterminal shows 'Config saved.' After calibration, the NanoVNA display may have missing parts; power cycle the NanoVNA and the display will be restored. NOTE: at this time, it is not known what else the saveconfig command saves besides touchscreen calibration. You can verify touch calibration using the menu boxes on the NanoVNA. Touch screen calibration command summary: touchcal – produces calibration touch points in the upper left and lower right corners outputs: "first touch upper left, then lower right...") "done” "touch cal params: A B C D (upper left and lower right x-y co-ords) touchtest – test touch accuracy – touch, hold and drag pointer saveconfig – saves the touchscreen calibration ----------------------------------------------------------------------------------------------------------- All info presented here in good faith. Not everything has been tried or tested. New hardware may render some advice obsolete or brick your device use at your own risk.