@@ -198,6 +198,8 @@ const BBPANELDEF panelDefs[] = {
198198 24 , 0 , 7 , 8 , 0 , 0 , 11 /* LED1_EN */ , u8M5Matrix, sizeof (u8M5Matrix), 0 , -1600 }, // BB_PANEL_LILYGO_T5P4
199199 {1872 , 1404 , 26666666 , BB_PANEL_FLAG_MIRROR_X, {8 ,18 ,17 ,16 ,15 ,7 ,6 ,5 ,47 ,21 ,14 ,13 ,12 ,11 ,10 ,9 }, 16 , 11 , 48 , 45 , 41 , 8 , 42 ,
200200 4 , 14 , 39 , 40 , BB_NOT_USED, 0 , 46 , u8GrayMatrix, sizeof (u8GrayMatrix), 16 , -1350 }, // BB_PANEL_TRMNL_X
201+ {1872 , 1404 , 20000000 , BB_PANEL_FLAG_MIRROR_X, {8 ,18 ,17 ,16 ,15 ,7 ,6 ,5 ,47 ,21 ,14 ,13 ,12 ,11 ,10 ,9 }, 16 , 11 , 41 , 42 , 45 , 8 , 48 ,
202+ 4 , 14 , 39 , 40 , BB_NOT_USED, 0 , 46 , u8GrayMatrix, sizeof (u8GrayMatrix), 0 }, // BB_PANEL_V7_103
201203};
202204//
203205// Forward references for panel callback functions
@@ -239,10 +241,10 @@ const BBPANELPROCS panelProcs[] = {
239241 {Inkplate5V2EinkPower, Inkplate5V2IOInit, Inkplate5V2RowControl, NULL , Inkplate5V2ExtIO}, // Inkplate5V2
240242 {EPDiyV7EinkPower, EPDiyV7IOInit, EPDiyV7RowControl, EPDiyV7IODeInit, EPDiyV7ExtIO}, // BB_PANEL_EPDIY_V7_16
241243 {EPDiyV7RAWEinkPower, EPDiyV7RAWIOInit, EPDiyV7RowControl, NULL , NULL }, // BB_PANEL_V7_RAW
242- {EPDiyV7EinkPower, EPDiyV7IOInit, EPDiyV7RowControl, EPDiyV7IODeInit, EPDiyV7ExtIO}, // BB_PANEL_V7_103
243244 {LilyGoEinkPower, LilyGoIOInit, LilyGoRowControl, NULL , NULL },// BB_PANEL_LILYGO_T5PRO
244245 {EPDiyV7EinkPower, EPDiyV7IOInit, EPDiyV7RowControl, EPDiyV7IODeInit, EPDiyV7ExtIO}, // BB_PANEL_LILYGO_T5P4
245246 {EPDiyV7EinkPower, EPDiyV7IOInit, EPDiyV7RowControl, EPDiyV7IODeInit, EPDiyV7ExtIO}, // BB_PANEL_TRMNL_X
247+ {EPDiyV7EinkPower, EPDiyV7IOInit, EPDiyV7RowControl, EPDiyV7IODeInit, EPDiyV7ExtIO}, // BB_PANEL_V7_103
246248};
247249
248250uint8_t ioRegs[24 ]; // MCP23017 copy of I/O register state so that we can just write new bits
@@ -703,6 +705,15 @@ int vcom;
703705 bbepPCA9535DigitalWrite (8 , 1 ); // OE on
704706 bbepPCA9535DigitalWrite (9 , 1 ); // GMOD on
705707 bbepPCA9535DigitalWrite (13 , 1 ); // WAKEUP on
708+ // Allow time to fully wake-up
709+ vTaskDelay (4 );
710+ ucTemp[0 ] = 0x09 ; // UPSEQ0
711+ ucTemp[1 ] = 0xE1 ;
712+ bbepI2CWrite (0x68 , ucTemp, 2 );
713+ ucTemp[0 ] = 0x0A ; // UPSEQ1
714+ ucTemp[1 ] = 0xAA ;
715+ bbepI2CWrite (0x68 , ucTemp, 2 );
716+
706717 bbepPCA9535DigitalWrite (11 , 1 ); // PWRUP on
707718 bbepPCA9535DigitalWrite (12 , 1 ); // VCOM CTRL on
708719 vTaskDelay (1 ); // allow time to power up
@@ -1214,6 +1225,7 @@ int bbepIOInit(FASTEPDSTATE *pState)
12141225 #ifndef ARDUINO
12151226 esp_log_level_set (" gpio" , ESP_LOG_NONE);
12161227 #endif
1228+
12171229 int rc = (*(pState->pfnIOInit ))(pState);
12181230 if (rc != BBEP_SUCCESS) return rc;
12191231 pState->iPartialPasses = 4 ; // N.B. The default number of passes for partial updates
0 commit comments