53 lines
1.8 KiB
C
53 lines
1.8 KiB
C
/* Wi-Fi iperf Example
|
|
|
|
This example code is in the Public Domain (or CC0 licensed, at your option.)
|
|
|
|
Unless required by applicable law or agreed to in writing, this
|
|
software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
CONDITIONS OF ANY KIND, either express or implied.
|
|
*/
|
|
|
|
#include <errno.h>
|
|
#include <string.h>
|
|
#include "esp_wifi.h"
|
|
#include "esp_log.h"
|
|
#include "esp_err.h"
|
|
#include "nvs_flash.h"
|
|
#include "esp_console.h"
|
|
#include "cmd_decl.h"
|
|
|
|
void app_main(void)
|
|
{
|
|
esp_err_t ret = nvs_flash_init();
|
|
if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND) {
|
|
ESP_ERROR_CHECK(nvs_flash_erase());
|
|
ret = nvs_flash_init();
|
|
}
|
|
ESP_ERROR_CHECK( ret );
|
|
|
|
initialise_wifi();
|
|
|
|
esp_console_repl_t *repl = NULL;
|
|
esp_console_repl_config_t repl_config = ESP_CONSOLE_REPL_CONFIG_DEFAULT();
|
|
esp_console_dev_uart_config_t uart_config = ESP_CONSOLE_DEV_UART_CONFIG_DEFAULT();
|
|
repl_config.prompt = "iperf>";
|
|
// init console REPL environment
|
|
ESP_ERROR_CHECK(esp_console_new_repl_uart(&uart_config, &repl_config, &repl));
|
|
/* Register commands */
|
|
register_system();
|
|
register_wifi();
|
|
|
|
printf("\n ==================================================\n");
|
|
printf(" | Steps to test WiFi throughput |\n");
|
|
printf(" | |\n");
|
|
printf(" | 1. Print 'help' to gain overview of commands |\n");
|
|
printf(" | 2. Configure device to station or soft-AP |\n");
|
|
printf(" | 3. Setup WiFi connection |\n");
|
|
printf(" | 4. Run iperf to test UDP/TCP RX/TX throughput |\n");
|
|
printf(" | |\n");
|
|
printf(" =================================================\n\n");
|
|
|
|
// start console REPL
|
|
ESP_ERROR_CHECK(esp_console_start_repl(repl));
|
|
}
|
|
|