mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
69 lines
1.7 KiB
C
69 lines
1.7 KiB
C
/*
|
|
* SPDX-FileCopyrightText: 2022-2023 Espressif Systems (Shanghai) CO LTD
|
|
*
|
|
* SPDX-License-Identifier: Unlicense OR CC0-1.0
|
|
*/
|
|
#include "esp_log.h"
|
|
#include "esp_console.h"
|
|
#include "esp_event.h"
|
|
#include "nvs_flash.h"
|
|
#include "esp_netif.h"
|
|
#include "esp_wifi.h"
|
|
|
|
|
|
extern void register_tsens_cmd(void);
|
|
extern void register_wifi_cmd(void);
|
|
|
|
|
|
static int restart(int argc, char **argv)
|
|
{
|
|
ESP_LOGI("main", "Restarting");
|
|
esp_restart();
|
|
}
|
|
|
|
static void register_restart(void)
|
|
{
|
|
const esp_console_cmd_t cmd = {
|
|
.command = "restart",
|
|
.help = "Restart the program",
|
|
.hint = NULL,
|
|
.func = &restart,
|
|
};
|
|
ESP_ERROR_CHECK( esp_console_cmd_register(&cmd) );
|
|
}
|
|
|
|
static void initialize_nvs(void)
|
|
{
|
|
esp_err_t err = nvs_flash_init();
|
|
if (err == ESP_ERR_NVS_NO_FREE_PAGES || err == ESP_ERR_NVS_NEW_VERSION_FOUND) {
|
|
ESP_ERROR_CHECK( nvs_flash_erase() );
|
|
err = nvs_flash_init();
|
|
}
|
|
ESP_ERROR_CHECK(err);
|
|
}
|
|
|
|
|
|
void app_main(void)
|
|
{
|
|
esp_console_repl_t *repl = NULL;
|
|
esp_console_repl_config_t repl_config = ESP_CONSOLE_REPL_CONFIG_DEFAULT();
|
|
repl_config.prompt = "esp>";
|
|
repl_config.max_cmdline_length = 256;
|
|
|
|
initialize_nvs();
|
|
ESP_ERROR_CHECK(esp_netif_init());
|
|
ESP_ERROR_CHECK(esp_event_loop_create_default());
|
|
esp_netif_create_default_wifi_sta();
|
|
esp_netif_create_default_wifi_ap();
|
|
/* Register commands */
|
|
esp_console_register_help_command();
|
|
register_restart();
|
|
register_tsens_cmd();
|
|
register_wifi_cmd();
|
|
|
|
esp_console_dev_uart_config_t hw_config = ESP_CONSOLE_DEV_UART_CONFIG_DEFAULT();
|
|
ESP_ERROR_CHECK(esp_console_new_repl_uart(&hw_config, &repl_config, &repl));
|
|
|
|
ESP_ERROR_CHECK(esp_console_start_repl(repl));
|
|
}
|