display AP ssid on connecting screen

This commit is contained in:
Benjamin Wilson
2024-05-24 20:00:10 -04:00
parent e30e9ddf6b
commit a87f1e974c
3 changed files with 14 additions and 16 deletions

View File

@@ -1,6 +1,6 @@
{ {
"idf.flashType": "UART", "idf.flashType": "UART",
"idf.portWin": "COM3", "idf.portWin": "COM4",
"idf.adapterTargetName": "esp32s3", "idf.adapterTargetName": "esp32s3",
"idf.openOcdConfigs": [ "idf.openOcdConfigs": [
"interface/ftdi/esp32_devkitj_v1.cfg", "interface/ftdi/esp32_devkitj_v1.cfg",

View File

@@ -78,7 +78,6 @@ void generate_ssid(char * ssid)
{ {
uint8_t mac[6]; uint8_t mac[6];
esp_wifi_get_mac(ESP_IF_WIFI_AP, mac); esp_wifi_get_mac(ESP_IF_WIFI_AP, mac);
// Format the last 4 bytes of the MAC address as a hexadecimal string // Format the last 4 bytes of the MAC address as a hexadecimal string
snprintf(ssid, 32, "Bitaxe_%02X%02X", mac[4], mac[5]); snprintf(ssid, 32, "Bitaxe_%02X%02X", mac[4], mac[5]);
} }

View File

@@ -200,7 +200,7 @@ static void _init_connection(SystemModule * module)
{ {
if (OLED_status()) { if (OLED_status()) {
memset(module->oled_buf, 0, 20); 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); OLED_writeString(0, 0, module->oled_buf);
} }
} }
@@ -213,9 +213,15 @@ static void _update_connection(SystemModule * module)
snprintf(module->oled_buf, 20, "%s", module->ssid); snprintf(module->oled_buf, 20, "%s", module->ssid);
OLED_writeString(0, 1, module->oled_buf); OLED_writeString(0, 1, module->oled_buf);
OLED_clearLine(3);
memset(module->oled_buf, 0, 20); 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); OLED_writeString(0, 3, module->oled_buf);
} }
} }
@@ -250,7 +256,7 @@ static void show_ap_information(const char * error)
if (error != NULL) { if (error != NULL) {
OLED_writeString(0, 0, error); OLED_writeString(0, 0, error);
} }
OLED_writeString(0, 1, "connect to ssid:"); OLED_writeString(0, 1, "Configuration SSID:");
char ap_ssid[13]; char ap_ssid[13];
generate_ssid(ap_ssid); generate_ssid(ap_ssid);
OLED_writeString(0, 2, ap_ssid); OLED_writeString(0, 2, ap_ssid);
@@ -371,15 +377,8 @@ void SYSTEM_task(void * pvParameters)
// show the connection screen // show the connection screen
while (!module->startup_done) { 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); _update_connection(module);
} vTaskDelay(1000 / portTICK_PERIOD_MS);
vTaskDelay(100 / portTICK_PERIOD_MS);
} }
while (1) { while (1) {