Type 0x11 for UC8151, silent timeout for no_update messages

This commit is contained in:
jjwbruijn
2023-05-22 22:57:11 +02:00
parent feb8e7e69c
commit d7d7261167
35 changed files with 65 additions and 29 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,7 +1,9 @@
#define SOLUM_154_033 0
#define SOLUM_29_033 1
#define SOLUM_42_033 2
#define SOLUM_154_SSD1619 0
#define SOLUM_29_SSD1619 0x01
#define SOLUM_29_UC8151 0x11
#define SOLUM_42_SSD1619 0x02
#define SOLUM_SEG_UK 0xF0
#define SOLUM_SEG_EU 0xF1
#define SOLUM_NODISPLAY 0xFF
#define CAPABILITY_HAS_EXT_POWER 0x10

View File

@@ -1,5 +1,5 @@
BUILD ?= zbs29v033
BUILD ?= zbs29_ssd1619
#file containing main() must be first!
SOURCES += main.c

View File

@@ -13,12 +13,12 @@ mv main.bin ../binaries/AP_FW_Nodisplay.bin -v
make clean > /dev/null
echo -e "\n\nBuilding 1.54 version..."
make BUILD=zbs154v033 CPU=8051 SOC=zbs243 > /dev/null
make BUILD=zbs154_ssd1619 CPU=8051 SOC=zbs243 > /dev/null
mv main.bin ../binaries/AP_FW_1.54.bin -v
make clean > /dev/null
echo -e "\n\nBuilding 2.9 version..."
make BUILD=zbs29v033 CPU=8051 SOC=zbs243 > /dev/null
make BUILD=zbs29_ssd1619 CPU=8051 SOC=zbs243 > /dev/null
mv main.bin ../binaries/AP_FW_2.9.bin -v
make clean > /dev/null

View File

@@ -30,7 +30,7 @@
struct pendingData __xdata pendingDataArr[MAX_PENDING_MACS];
// VERSION GOES HERE!
uint16_t __xdata version = 0x0015;
uint16_t __xdata version = 0x0016;
#define RAW_PKT_PADDING 2
@@ -802,7 +802,9 @@ void main(void) {
#endif
for (uint8_t __xdata c = 0; c < MAX_PENDING_MACS; c++) {
if (pendingDataArr[c].attemptsLeft == 1) {
espNotifyTimeOut(pendingDataArr[c].targetMac);
if (pendingDataArr[c].availdatainfo.dataType != DATATYPE_NOUPDATE) {
espNotifyTimeOut(pendingDataArr[c].targetMac);
}
pendingDataArr[c].attemptsLeft = 0;
} else if (pendingDataArr[c].attemptsLeft > 1) {
pendingDataArr[c].attemptsLeft--;

View File

@@ -1,5 +1,5 @@
BUILD ?= zbs29v033
BUILD ?= zbs29_ssd1619
#file containing main() must be first!
SOURCES += main.c eeprom.c drawing.c

View File

@@ -2,17 +2,17 @@
make clean > /dev/null
echo -e "\nBuilding 1.54 version..."
make BUILD=zbs154v033 CPU=8051 SOC=zbs243 > /dev/null
make BUILD=zbs154_ssd1619 CPU=8051 SOC=zbs243 > /dev/null
mv main.bin ../binaries/Tag_FW_1.54.bin -v
make clean > /dev/null
echo -e "\n\nBuilding 2.9 (SSD1619) version..."
make BUILD=zbs29v033 CPU=8051 SOC=zbs243 > /dev/null
make BUILD=zbs29_ssd1619 CPU=8051 SOC=zbs243 > /dev/null
mv main.bin ../binaries/Tag_FW_2.9.bin -v
make clean > /dev/null
echo -e "\n\nBuilding 4.2 version..."
make BUILD=zbs42v033 CPU=8051 SOC=zbs243 > /dev/null
make BUILD=zbs42_ssd1619 CPU=8051 SOC=zbs243 > /dev/null
mv main.bin ../binaries/Tag_FW_4.2.bin -v
make clean > /dev/null

View File

@@ -154,19 +154,6 @@ void main() {
wakeUpReason = WAKEUP_REASON_FIRSTBOOT;
}
switch (checkButtonOrJig()) {
case DETECT_P1_0_NOTHING:
break;
case DETECT_P1_0_BUTTON:
capabilities |= CAPABILITY_HAS_WAKE_BUTTON;
break;
case DETECT_P1_0_JIG:
// show splash screen?
break;
default:
break;
}
wdt10s();
boardGetOwnMac(mSelfMac);
@@ -218,6 +205,24 @@ void main() {
initializeProto();
powerDown(INIT_EEPROM);
switch (checkButtonOrJig()) {
case DETECT_P1_0_BUTTON:
capabilities |= CAPABILITY_HAS_WAKE_BUTTON;
break;
case DETECT_P1_0_JIG:
wdt120s();
// show the screensaver (minimal text to prevent image burn-in)
powerUp(INIT_EPD);
afterFlashScreenSaver();
while (1)
;
break;
case DETECT_P1_0_NOTHING:
break;
default:
break;
}
// show the splashscreen
powerUp(INIT_EPD);
showSplashScreen();

View File

@@ -81,6 +81,32 @@ void addOverlay() {
}
}
void afterFlashScreenSaver() {
selectLUT(EPD_LUT_DEFAULT);
clearScreen();
setColorMode(EPD_MODE_NORMAL, EPD_MODE_INVERT);
#if (SCREEN_WIDTH == 152) // 1.54"
epdPrintBegin(2, 2, EPD_DIRECTION_X, EPD_SIZE_SINGLE, EPD_COLOR_BLACK);
epdpr("OpenEPaperLink");
epdPrintEnd();
#endif
#if (SCREEN_WIDTH == 128) // 2.9"
epdPrintBegin(0, 295, EPD_DIRECTION_Y, EPD_SIZE_SINGLE, EPD_COLOR_BLACK);
epdpr("OpenEPaperLink");
epdPrintEnd();
#endif
#if (SCREEN_WIDTH == 400) // 4.2"
epdPrintBegin(3, 3, EPD_DIRECTION_X, EPD_SIZE_DOUBLE, EPD_COLOR_BLACK);
epdpr("OpenEPaperLink");
epdPrintEnd();
#endif
drawWithSleep();
}
void showSplashScreen() {
selectLUT(EPD_LUT_NO_REPEATS);
clearScreen();

1
zbs243_Tag_FW/userinterface.h Normal file → Executable file
View File

@@ -4,6 +4,7 @@
void addOverlay();
void afterFlashScreenSaver();
void showSplashScreen();
void showApplyUpdate();
void showScanningWindow();

View File

@@ -25,7 +25,7 @@
#define AP_EMULATE_TAG 1
//hw types
#define HW_TYPE SOLUM_154_033
#define HW_TYPE SOLUM_154_SSD1619
#include "../boardCommon.h"

View File

@@ -24,7 +24,7 @@
#define AP_EMULATE_TAG 1
//hw types
#define HW_TYPE SOLUM_29_033
#define HW_TYPE SOLUM_29_SSD1619
#include "../boardCommon.h"

View File

@@ -24,7 +24,7 @@
#define AP_EMULATE_TAG 1
//hw types
#define HW_TYPE SOLUM_29_033
#define HW_TYPE SOLUM_29_UC8151
#include "../boardCommon.h"

View File

@@ -25,7 +25,7 @@
#define AP_EMULATE_TAG 1
//hw types
#define HW_TYPE SOLUM_42_033
#define HW_TYPE SOLUM_42_SSD1619
#include "../boardCommon.h"