Add Serialized SSH Administrative Console

This commit is contained in:
2026-08-30 18:07:02 +02:00
parent 44e3962444
commit 0a1bbd6782
17 changed files with 1115 additions and 79 deletions
+9 -4
View File
@@ -1,6 +1,7 @@
#include <string.h>
#include "driver/uart.h"
#include "admin_ssh_console.h"
#include "console_completion.h"
#include "esp_console.h"
#include "esp_err.h"
@@ -64,6 +65,8 @@ void app_main(void)
ESP_ERROR_CHECK(status_led_init());
ESP_ERROR_CHECK(rs232_port_owner_init());
ESP_ERROR_CHECK(rs232_hw_test_init());
/* Reserve the shared UART0 dispatcher before optional SSH/network services. */
ESP_ERROR_CHECK(admin_ssh_console_init());
/* The optional display can fail without affecting UART0 or serial transports. */
esp_err_t local_display_error = local_display_init();
@@ -274,8 +277,9 @@ void app_main(void)
esp_console_repl_config_t repl_config = ESP_CONSOLE_REPL_CONFIG_DEFAULT();
repl_config.prompt = "serial-tool> ";
repl_config.max_cmdline_length = 160;
repl_config.task_stack_size = 8192;
repl_config.max_cmdline_length = ADMIN_SSH_CONSOLE_COMMAND_LINE_CAPACITY;
/* The stock REPL task remains dormant; our shared frontend owns line dispatch. */
repl_config.task_stack_size = 2048;
/*
* UART0 remains dedicated to development and diagnostics. The external
@@ -304,8 +308,9 @@ void app_main(void)
ESP_ERROR_CHECK(system_console_register_commands());
/* Upgrade late UART terminals safely and add nested completion. */
console_completion_install();
ESP_ERROR_CHECK(esp_console_start_repl(repl));
ESP_ERROR_CHECK(admin_ssh_console_start_uart_frontend());
ESP_LOGI(TAG, "Interactive test console ready at %d baud", CONSOLE_BAUD_RATE);
ESP_LOGI(TAG, "Shared UART0/SSH administration console ready at %d baud",
CONSOLE_BAUD_RATE);
ESP_LOGI(TAG, "Type 'help' for commands; native USB starts UART1 only when its host port opens");
}