|
@@ -67,7 +67,16 @@ inline const EpdPanelDescriptor PANEL_213_Z98C = {
|
|
|
.init_sequence_len = sizeof(PANEL_213_Z98C_INIT) / sizeof(PANEL_213_Z98C_INIT[0]),
|
|
.init_sequence_len = sizeof(PANEL_213_Z98C_INIT) / sizeof(PANEL_213_Z98C_INIT[0]),
|
|
|
.plane_count = 2,
|
|
.plane_count = 2,
|
|
|
.plane_write_cmd = {0x24, 0x26},
|
|
.plane_write_cmd = {0x24, 0x26},
|
|
|
- .plane_invert = {false, true}, // color plane written as ~data - see writeImage()
|
|
|
|
|
|
|
+ // Stock GxEPD2 wire convention for the color plane, matched to
|
|
|
|
|
+ // DISPLAY_UPDATE_CONTROL={0x00, 0x80} above: vendor's writeImage()
|
|
|
|
|
+ // does _writeData(~data) where data's own "blank" default is 0xFF, so
|
|
|
|
|
+ // wire 0x00 = blank/not-red there - the opposite of epaper_spi's
|
|
|
|
|
+ // {0x80, 0x80} + inverted-buffer pairing. These two are coupled, not
|
|
|
|
|
+ // independent facts - confirmed by testing {0x00,0x80} register with
|
|
|
|
|
+ // invert=true still on: it cross-inverted (background/black text came
|
|
|
|
|
+ // out red, drawn-red text came out white). invert=false here matches
|
|
|
|
|
+ // this register value's actual polarity instead.
|
|
|
|
|
+ .plane_invert = {false, false},
|
|
|
.refresh_sequence = PANEL_213_Z98C_REFRESH,
|
|
.refresh_sequence = PANEL_213_Z98C_REFRESH,
|
|
|
.refresh_sequence_len = sizeof(PANEL_213_Z98C_REFRESH) / sizeof(PANEL_213_Z98C_REFRESH[0]),
|
|
.refresh_sequence_len = sizeof(PANEL_213_Z98C_REFRESH) / sizeof(PANEL_213_Z98C_REFRESH[0]),
|
|
|
};
|
|
};
|