# ESP32 iperf Network performance testing tool for ESP32 based on iperf2. ## Features - TCP and UDP client/server modes - Bandwidth measurement - Packet loss detection (UDP) - Console-based control interface - WiFi station mode support ## Hardware Requirements - ESP32 development board - WiFi network ## Software Requirements - ESP-IDF v5.0 or later - iperf2 or iperf3 for testing with PC ## Building 1. Set up ESP-IDF environment: ```bash . $HOME/Code/esp32/esp-idf/export.sh ``` 2. Configure WiFi credentials: ```bash idf.py menuconfig ``` Navigate to "ESP32 iperf Configuration" and set your SSID and password. 3. Build the project: ```bash idf.py build ``` 4. Flash to ESP32: ```bash idf.py -p /dev/ttyUSB0 flash monitor ``` ## Usage ### TCP Server Mode On ESP32: ``` iperf> iperf -s ``` On PC: ```bash iperf -c ``` ### TCP Client Mode On PC: ```bash iperf -s ``` On ESP32: ``` iperf> iperf -c ``` ### UDP Mode Add `-u` flag for UDP testing: ``` iperf> iperf -s -u iperf> iperf -c -u ``` ### Options - `-s` : Run as server - `-c ` : Run as client, connecting to server IP - `-u` : Use UDP instead of TCP - `-p ` : Port number (default: 5001) - `-t