USB Connection
The NanoVNA-H connects to computers via USB as a virtual COM port (CDC device). This enables remote control, data transfer, and firmware updates.
Hardware Connection
Section titled “Hardware Connection”- Use a USB Type-C cable (NanoVNA-H4) or Micro-USB cable (NanoVNA-H)
- Connect to your computer’s USB port
- The NanoVNA-H should power on automatically
- Wait for device enumeration (a few seconds)
Driver Installation
Section titled “Driver Installation”Windows
Section titled “Windows”Modern Windows (10/11) usually installs drivers automatically:
- Connect NanoVNA-H via USB
- Windows should automatically install CDC drivers
- Check Device Manager for “COM & LPT ports”
- Note the assigned COM port number (e.g., COM3)
If automatic installation fails:
- Open Device Manager
- Find the unknown device (usually under “Other devices”)
- Right-click and select “Update driver”
- Choose “Search automatically for drivers”
For Windows 7/8, you may need to install the STM32 Virtual COM Port driver manually from ST Microelectronics.
Linux includes CDC-ACM drivers by default:
- Connect NanoVNA-H via USB
- The device appears as
/dev/ttyACM0(or similar) - Check with:
ls -la /dev/ttyACM* - Verify with:
dmesg | tail -20
Permissions
Section titled “Permissions”You may need permission to access the serial port:
# Add user to dialout group (Debian/Ubuntu)sudo usermod -a -G dialout $USER
# Or on Arch/Fedorasudo usermod -a -G uucp $USER
# Log out and back in for changes to take effectOr create a udev rule for permanent access:
SUBSYSTEM=="tty", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="5740", MODE="0666"
# Reload udev rulessudo udevadm control --reload-rulesmacOS includes CDC drivers:
- Connect NanoVNA-H via USB
- The device appears as
/dev/tty.usbmodemXXXX - List available ports:
ls /dev/tty.usb*
Verify Connection
Section titled “Verify Connection”Using Terminal Software
Section titled “Using Terminal Software”- Open terminal software (PuTTY, screen, minicom)
- Connect to the COM port at 115200 baud
- Press Enter to see the prompt
ch> - Type
helpto see available commands
Using Python
Section titled “Using Python”import serial
# Connect (adjust port name for your OS)ser = serial.Serial('/dev/ttyACM0', 115200, timeout=1)
# Send commandser.write(b'help\r\n')
# Read responseresponse = ser.read(1000)print(response.decode())
ser.close()Connection Parameters
Section titled “Connection Parameters”| Parameter | Value |
|---|---|
| Baud rate | 115200 (default, adjustable) |
| Data bits | 8 |
| Stop bits | 1 |
| Parity | None |
| Flow control | None |
Troubleshooting
Section titled “Troubleshooting”Device Not Recognized
Section titled “Device Not Recognized”- Try a different USB cable
- Try a different USB port
- Check if NanoVNA powers on (display active)
- On Windows, check Device Manager for errors
- On Linux, check
dmesgoutput
Permission Denied (Linux)
Section titled “Permission Denied (Linux)”# Check device permissionsls -la /dev/ttyACM0
# Temporary fixsudo chmod 666 /dev/ttyACM0
# Permanent fix: add user to dialout groupsudo usermod -a -G dialout $USERMultiple COM Ports
Section titled “Multiple COM Ports”If you have multiple USB serial devices:
- Note which port appears when you plug in the NanoVNA-H
- Use device manager or
dmesgto identify the correct port - Disconnect other USB serial devices temporarily
Communication Errors
Section titled “Communication Errors”- Ensure no other software is using the port
- Close any terminal sessions before opening new ones
- Try disconnecting and reconnecting the USB cable
- Restart the NanoVNA-H
Serial Console vs Hardware Serial
Section titled “Serial Console vs Hardware Serial”The NanoVNA-H firmware can use either:
- USB CDC: Virtual COM port over USB (default)
- Hardware UART: Physical serial pins (if enabled)
The VNA_MODE_CONNECTION flag determines which is active. USB CDC is normally used for PC communication.
Next Steps
Section titled “Next Steps”Once connected, you can:
- Use the Serial Console for direct command access
- Connect NanoVNASaver or NanoVNASharp for graphical control
- Enable Remote Desktop mode for display streaming