From 9bbd30b78311f641f0df28e18d7d0b3a1f615ea5 Mon Sep 17 00:00:00 2001 From: atc1441 Date: Fri, 16 Feb 2024 16:04:49 +0100 Subject: [PATCH] Fixed TLSR No AP useless refresh --- ARM_Tag_FW/OpenEPaperLink_TLSR/src/main.c | 36 +++++++++++++--------- binaries/Tag/TLSR_HS_35_ALPHA.bin | Bin 52660 -> 52652 bytes 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/ARM_Tag_FW/OpenEPaperLink_TLSR/src/main.c b/ARM_Tag_FW/OpenEPaperLink_TLSR/src/main.c index 07eb7612..0f2467c3 100644 --- a/ARM_Tag_FW/OpenEPaperLink_TLSR/src/main.c +++ b/ARM_Tag_FW/OpenEPaperLink_TLSR/src/main.c @@ -18,8 +18,9 @@ extern uint8_t our_ch; RAM u8 ourmac[8] = {0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0x02, 0x00, 0x00}; extern RAM uint8_t mSelfMac[8]; RAM char ownMacString[100] = ""; +RAM bool noApShown = false; - uint8_t showChannelSelect() +uint8_t showChannelSelect() { // returns 0 if no accesspoints were found uint8_t result[sizeof(channelList)]; memset(result, 0, sizeof(result)); @@ -50,7 +51,7 @@ RAM char ownMacString[100] = ""; return highestSlot; } - uint8_t channelSelect() +uint8_t channelSelect() { // returns 0 if no accesspoints were found uint8_t result[16]; memset(result, 0, sizeof(result)); @@ -82,11 +83,12 @@ RAM char ownMacString[100] = ""; return highestSlot; } - int main(void) +int main(void) { startup_state_e state = drv_platform_init(); u8 isRetention = (state == SYSTEM_DEEP_RETENTION) ? 1 : 0; - isRetention = 0;// keep the compiler happy + isRetention = 0; // keep the compiler happy + noApShown = false; drv_enable_irq(); init_led(); init_uart(); @@ -142,6 +144,7 @@ RAM char ownMacString[100] = ""; printf("No AP found\r\n"); epd_display("No AP Found", batteryVoltage, ownMacString, 1); initPowerSaving(INTERVAL_AT_MAX_ATTEMPTS); + noApShown = true; doSleep(120000UL); } while (1) @@ -222,27 +225,30 @@ RAM char ownMacString[100] = ""; set_led_color(0); currentChannel = channelSelect(); - if ((!currentChannel) || (lowBattery) || (scanAttempts == (INTERVAL_1_ATTEMPTS + INTERVAL_2_ATTEMPTS - 1))) + if (!currentChannel) { wdt60s(); - if (curImgSlot != 0xFF) + if (!noApShown) { - drawImageFromEeprom(curImgSlot); - } - else if ((scanAttempts >= (INTERVAL_1_ATTEMPTS + INTERVAL_2_ATTEMPTS - 1))) - { - epd_display("Sleep", batteryVoltage, ownMacString, 1); - } - else - { - epd_display("No AP", batteryVoltage, ownMacString, 1); + noApShown = true; + if (curImgSlot != 0xFF) + { + drawImageFromEeprom(curImgSlot); + } + else + { + epd_display("No AP", batteryVoltage, ownMacString, 1); + } } } // did we find a working channel? if (currentChannel) { // now associated! + noApShown = false; our_ch = currentChannel; + printf("AP Found\r\n"); + epd_display("AP Found", batteryVoltage, ownMacString, 1); scanAttempts = 0; wakeUpReason = WAKEUP_REASON_NETWORK_SCAN; initPowerSaving(INTERVAL_BASE); diff --git a/binaries/Tag/TLSR_HS_35_ALPHA.bin b/binaries/Tag/TLSR_HS_35_ALPHA.bin index 503b4523cb0d8370a6e640e319ac57f06a4de4a6..9562895547ee0beb8e1d64042f905df7d99d1a85 100644 GIT binary patch delta 5603 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 C8(~!d