Add "storage mode" to protect EPDs (lowest button while booting)
This commit is contained in:
parent
37c57b7d97
commit
23ef2a64cc
2 changed files with 26 additions and 5 deletions
|
@ -31,6 +31,16 @@ void setup()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
if (mcp1.digitalRead(0) == LOW)
|
||||||
|
{
|
||||||
|
// Then loop forever to prevent anything else from writing to the screen
|
||||||
|
while (true) {
|
||||||
|
delay(1000);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
tryImprovSetup();
|
tryImprovSetup();
|
||||||
|
|
||||||
setupWebserver();
|
setupWebserver();
|
||||||
|
|
|
@ -155,7 +155,19 @@ void setupDisplays()
|
||||||
11, &tasks[i]); // create task
|
11, &tasks[i]); // create task
|
||||||
}
|
}
|
||||||
|
|
||||||
epdContent = {"B", "T", "C", "L", "O", "C", "K"};
|
// Hold lower button to enable "storage mode" (prevents burn-in of ePaper displays)
|
||||||
|
if (mcp1.digitalRead(0) == LOW)
|
||||||
|
{
|
||||||
|
setFgColor(GxEPD_BLACK);
|
||||||
|
setBgColor(GxEPD_WHITE);
|
||||||
|
|
||||||
|
epdContent = {" ", " ", " ", " ", " ", " ", " "};
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
epdContent = {"B", "T", "C", "L", "O", "C", "K"};
|
||||||
|
}
|
||||||
|
|
||||||
setEpdContent(epdContent);
|
setEpdContent(epdContent);
|
||||||
}
|
}
|
||||||
|
@ -244,10 +256,9 @@ void prepareDisplayUpdateTask(void *pvParameters)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
showDigit(epdIndex, epdContent[epdIndex].c_str()[0], updatePartial,
|
showDigit(epdIndex, epdContent[epdIndex].c_str()[0], updatePartial,
|
||||||
&FONT_BIG);
|
&FONT_BIG);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -402,9 +413,9 @@ void showDigit(const uint dispNum, char chr, bool partial,
|
||||||
displays[dispNum].setCursor(x, y);
|
displays[dispNum].setCursor(x, y);
|
||||||
displays[dispNum].print(str);
|
displays[dispNum].print(str);
|
||||||
|
|
||||||
if (chr == '.')
|
if (chr == '.')
|
||||||
{
|
{
|
||||||
displays[dispNum].fillRect(x,y,displays[dispNum].width(),round(displays[dispNum].height() * 0.9), getBgColor());
|
displays[dispNum].fillRect(x, y, displays[dispNum].width(), round(displays[dispNum].height() * 0.9), getBgColor());
|
||||||
}
|
}
|
||||||
|
|
||||||
// displays[dispNum].setCursor(10, 3);
|
// displays[dispNum].setCursor(10, 3);
|
||||||
|
|
Loading…
Reference in a new issue