From a87f1e974ce18f41f509a15a9887e3a4a1341377 Mon Sep 17 00:00:00 2001 From: Benjamin Wilson Date: Fri, 24 May 2024 20:00:10 -0400 Subject: [PATCH] display AP ssid on connecting screen --- .vscode/settings.json | 2 +- components/connect/connect.c | 1 - main/system.c | 27 +++++++++++++-------------- 3 files changed, 14 insertions(+), 16 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index c856832a9..33e6a603a 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,6 +1,6 @@ { "idf.flashType": "UART", - "idf.portWin": "COM3", + "idf.portWin": "COM4", "idf.adapterTargetName": "esp32s3", "idf.openOcdConfigs": [ "interface/ftdi/esp32_devkitj_v1.cfg", diff --git a/components/connect/connect.c b/components/connect/connect.c index d53da8bb5..6ac4e9699 100644 --- a/components/connect/connect.c +++ b/components/connect/connect.c @@ -78,7 +78,6 @@ void generate_ssid(char * ssid) { uint8_t mac[6]; esp_wifi_get_mac(ESP_IF_WIFI_AP, mac); - // Format the last 4 bytes of the MAC address as a hexadecimal string snprintf(ssid, 32, "Bitaxe_%02X%02X", mac[4], mac[5]); } diff --git a/main/system.c b/main/system.c index 4b889b6aa..aaa8d65ab 100644 --- a/main/system.c +++ b/main/system.c @@ -200,7 +200,7 @@ static void _init_connection(SystemModule * module) { if (OLED_status()) { memset(module->oled_buf, 0, 20); - snprintf(module->oled_buf, 20, "Connecting to ssid:"); + snprintf(module->oled_buf, 20, "Connecting to SSID:"); OLED_writeString(0, 0, module->oled_buf); } } @@ -212,10 +212,16 @@ static void _update_connection(SystemModule * module) memset(module->oled_buf, 0, 20); snprintf(module->oled_buf, 20, "%s", module->ssid); OLED_writeString(0, 1, module->oled_buf); - - OLED_clearLine(3); + memset(module->oled_buf, 0, 20); - snprintf(module->oled_buf, 20, "%s", module->wifi_status); + snprintf(module->oled_buf, 20, "Configuration SSID:"); + OLED_writeString(0, 2, module->oled_buf); + + + char ap_ssid[13]; + generate_ssid(ap_ssid); + memset(module->oled_buf, 0, 20); + snprintf(module->oled_buf, 20, ap_ssid); OLED_writeString(0, 3, module->oled_buf); } } @@ -250,7 +256,7 @@ static void show_ap_information(const char * error) if (error != NULL) { OLED_writeString(0, 0, error); } - OLED_writeString(0, 1, "connect to ssid:"); + OLED_writeString(0, 1, "Configuration SSID:"); char ap_ssid[13]; generate_ssid(ap_ssid); OLED_writeString(0, 2, ap_ssid); @@ -371,15 +377,8 @@ void SYSTEM_task(void * pvParameters) // show the connection screen while (!module->startup_done) { - result = esp_wifi_get_mode(&wifi_mode); - if (result == ESP_OK && (wifi_mode == WIFI_MODE_APSTA || wifi_mode == WIFI_MODE_AP) && - strcmp(module->wifi_status, "Failed to connect") == 0) { - show_ap_information(NULL); - vTaskDelay(5000 / portTICK_PERIOD_MS); - } else { - _update_connection(module); - } - vTaskDelay(100 / portTICK_PERIOD_MS); + _update_connection(module); + vTaskDelay(1000 / portTICK_PERIOD_MS); } while (1) {