diff --git a/main/display/eink_display_handler.cpp b/main/display/eink_display_handler.cpp index ea52f54..493c963 100644 --- a/main/display/eink_display_handler.cpp +++ b/main/display/eink_display_handler.cpp @@ -15,12 +15,12 @@ #define BUSY_INACTIVE_LEVEL 1 #define DMA_TRANSFER_CHUNK_SIZE 4096 // 4KB chunk size for DMA transfers -static uint8_t white_data[DISPLAY_BUFFER_SIZE]; // all white data static uint8_t black_data[DISPLAY_BUFFER_SIZE]; // all black data +static uint8_t white_data[DISPLAY_BUFFER_SIZE]; // all white data EInkDisplayHandler::EInkDisplayHandler() { - memset(white_data, 0xFF, sizeof(white_data)); - memset(black_data, 0x00, sizeof(black_data)); + memset(black_data, 0xFF, sizeof(black_data)); // eink uses 1 for black + memset(white_data, 0x00, sizeof(white_data)); spi_mutex_ = xSemaphoreCreateMutex(); if (spi_mutex_ == nullptr) { ESP_LOGE(TAG, "Failed to create SPI mutex"); @@ -173,7 +173,7 @@ esp_err_t EInkDisplayHandler::full_write(const uint8_t* framebuffer, const bool ESP_LOGE(TAG, "Failed to send old data command: %s", esp_err_to_name(err)); return err; } - err = transfer_spi_data(white_basemap ? white_data : black_data, DISPLAY_BUFFER_SIZE, transaction_guard.transaction_id()); // Send all white data (0xFF) + err = transfer_spi_data(white_basemap ? black_data : white_data, DISPLAY_BUFFER_SIZE, transaction_guard.transaction_id()); // Send all white data (0xFF) if (err != ESP_OK) { ESP_LOGE(TAG, "Failed to send all white data for old data: %s", esp_err_to_name(err)); return err; @@ -384,7 +384,7 @@ esp_err_t EInkDisplayHandler::partial_refresh(const uint8_t* partial_framebuffer esp_err_t EInkDisplayHandler::clear_display(void) { ESP_LOGI(TAG, "Clearing display to all white..."); - esp_err_t err = full_write(black_data, false); + esp_err_t err = full_write(white_data, false); if (err != ESP_OK) { ESP_LOGE(TAG, "Failed to clear display: %s", esp_err_to_name(err)); return err;