From ada68b1a33b2661236a995b41054d0590e187103 Mon Sep 17 00:00:00 2001 From: Jelmer Date: Tue, 23 May 2023 11:13:29 +0200 Subject: [PATCH 1/2] auto tag flashing - fixed nodisplay update --- ESP32_AP-Flasher/src/main.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/ESP32_AP-Flasher/src/main.cpp b/ESP32_AP-Flasher/src/main.cpp index d0138fff..ffb6c811 100644 --- a/ESP32_AP-Flasher/src/main.cpp +++ b/ESP32_AP-Flasher/src/main.cpp @@ -41,7 +41,7 @@ void timeTask(void* parameter) { void setup() { // starts the led task/state machine xTaskCreate(ledTask, "ledhandler", 2000, NULL, 2, NULL); - vTaskDelay(10/portTICK_PERIOD_MS); + vTaskDelay(10 / portTICK_PERIOD_MS); // show a nice pattern to indicate the AP is booting / waiting for WiFi setup #ifdef HAS_RGB_LED @@ -131,6 +131,20 @@ void loop() { vTaskDelay(10000 / portTICK_PERIOD_MS); // performDeviceFlash(); while (1) { - vTaskDelay(10000 / portTICK_PERIOD_MS); +#ifdef OPENEPAPERLINK_PCB + if (extTagConnected()) { + flashCountDown(3); + + pinMode(FLASHER_EXT_TEST, OUTPUT); + digitalWrite(FLASHER_EXT_TEST, LOW); + + doTagFlash(); + + vTaskDelay(10000 / portTICK_PERIOD_MS); + pinMode(FLASHER_EXT_TEST, INPUT); + vTaskDelay(1000 / portTICK_PERIOD_MS); + } +#endif + vTaskDelay(100 / portTICK_PERIOD_MS); } -} +} \ No newline at end of file From 4545a7a5044a30ac1d3ac00940fe7e06f9d227ff Mon Sep 17 00:00:00 2001 From: Jelmer Date: Tue, 23 May 2023 11:14:48 +0200 Subject: [PATCH 2/2] fixed no-display AP flashing --- ESP32_AP-Flasher/data/tag_md5_db.json | 11 ++++++++++- ESP32_AP-Flasher/src/flasher.cpp | 3 ++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ESP32_AP-Flasher/data/tag_md5_db.json b/ESP32_AP-Flasher/data/tag_md5_db.json index b3ec2180..7c26913e 100644 --- a/ESP32_AP-Flasher/data/tag_md5_db.json +++ b/ESP32_AP-Flasher/data/tag_md5_db.json @@ -24,7 +24,16 @@ "mac_suffix":"0131", "MD5":"A27D978C48888FA045E8D3F90DC27029", "type":240, - "note":"Segmented, UK, TSC0 Ebie" + "note":"Segmented, UK" + }, + { + "name":"NoDisplay ZBS243 AP", + "mac_offset":0, + "mac_format":0, + "mac_suffix":"0000", + "MD5":"ABBAABBAD3ADD0D0CAFED3F90DC27029", + "type":255, + "note":"NoDisplay ZBS243 AP" }, { "name":"4.2 Black + NFC", diff --git a/ESP32_AP-Flasher/src/flasher.cpp b/ESP32_AP-Flasher/src/flasher.cpp index d28947e9..656c3031 100644 --- a/ESP32_AP-Flasher/src/flasher.cpp +++ b/ESP32_AP-Flasher/src/flasher.cpp @@ -288,7 +288,7 @@ void flasher::getMacFromWiFi() { bool flasher::backupFlash() { getFirmwareMD5(); if (!zbs->select_flash(0)) return false; - md5char[16]=0x00; + md5char[16] = 0x00; fs::File backup = LittleFS.open("/" + (String)md5char + "_backup.bin", "w", true); for (uint32_t c = 0; c < 65535; c++) { backup.write(zbs->read_flash(c)); @@ -650,6 +650,7 @@ bool doTagFlash() { f->getInfoBlockType(); f->readInfoBlock(); f->writeFlashFromPack("/Tag_FW_Pack.bin", f->tagtype); + f->zbs->reset(); } else { // couldn't find the md5 from the infoblock Serial.printf("Found an already-flashed tag, but we couldn't find its fingerprint (%s) in the database\n", f->md5char);