2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

EL Wire/Tape/Panels, LEDs, pixels and strips, LCDs and TFTs, etc products from Adafruit

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

I recently bought the parts for https://learn.adafruit.com/epaper-weather-station and just got the parts and put them together tonight. I changed the string, "http://api.openweathermap.org/data/2.5/weather?q=" to "http://api.openweathermap.org/data/2.5/weather?id=" so I could use my city ID due to the name being too common to use. Everything else was left the same.

The display is only displaying red and white. Things that should be black are red. I tried replacing every instance of 'EPD_BLACK' with 'EPD_RED' and vice versa with no change in the display. When the display first starts updating it is black, but turns red by the time it is finished. Based on the photos in the guide this is not normal behavior. I just updated all the libraries and boards today, including updating the bootloader on the M4. Is there anything that has changed in an update that may have caused this? And is there any way to fix it? Thanks.

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by mikeysklar »

Are you running 4.4.3 of the Adafruit_EPD library? It was released with the summary of "Fixed red inversion regardless of reset pin value".

https://github.com/adafruit/Adafruit_EP ... /tag/4.4.3

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

I am using version 4.4.3.

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

I just tried 4.4.2 and it had the same behavior.

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by mikeysklar »

Let's make sure you are using the correct library (enable verbose output in the Arduino IDE) to confirm 4.4.3 is being pulled in and not the older one.

Please try running one of the current examples from the repo:

https://github.com/adafruit/Adafruit_EP ... r/examples

based on this issue that has been closed:

https://github.com/adafruit/Adafruit_EPD/issues/58

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

It appears to be using the correct library
"Using library Adafruit_EPD at version 4.4.3 in folder: D:\Libraries\Documents\Arduino\libraries\Adafruit_EPD"

I used the example here, https://github.com/adafruit/Adafruit_EP ... PDTest.ino
It compiles and uploads without errors, but nothing happens. The display doesn't change and there is nothing int the serial monitor. If I uncomment "Adafruit_EK79686" instead I garbled screen that is a mix of red and black, but still nothing on the serial monitor.

Code: Select all

/***************************************************
  Adafruit invests time and resources providing this open source code,
  please support Adafruit and open-source hardware by purchasing
  products from Adafruit!
  Written by Limor Fried/Ladyada for Adafruit Industries.
  MIT license, all text above must be included in any redistribution
 ****************************************************/

#include "Adafruit_EPD.h"


#define EPD_CS     10
#define EPD_DC      9
#define SRAM_CS     11
#define EPD_RESET   5 // can set to -1 and share with microcontroller Reset!
#define EPD_BUSY    7 // can set to -1 to not use a pin (will wait a fixed delay)

// Uncomment the following line if you are using 1.54" EPD with IL0373
//Adafruit_IL0373 display(152, 152, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);
// Uncomment the following line if you are using 1.54" EPD with SSD1680
//Adafruit_SSD1680 display(152, 152, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);
// Uncomment the following line if you are using 1.54" EPD with SSD1608
//Adafruit_SSD1608 display(200, 200, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);
// Uncomment the following line if you are using 1.54" EPD with SSD1681
//Adafruit_SSD1681 display(200, 200, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);
// Uncomment the following line if you are using 1.54" EPD with UC8151D
//Adafruit_UC8151D display(152, 152, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);


//Uncomment the following line if you are using 2.13" EPD with SSD1680
//Adafruit_SSD1680 display(250, 122, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);

// Uncomment the following line if you are using 2.13" EPD with SSD1675
//Adafruit_SSD1675 display(250, 122, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);

// Uncomment the following line if you are using 2.13" EPD with SSD1675B
//Adafruit_SSD1675B display(250, 122, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);

// Uncomment the following line if you are using 2.13" EPD with UC8151D
//Adafruit_UC8151D display(212, 104, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);

//Uncomment the following line if you are using 2.13" EPD with IL0373
//Adafruit_IL0373 display(212, 104, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);
//#define FLEXIBLE_213


//Uncomment the following line if you are using 2.7" EPD with IL91874
Adafruit_IL91874 display(264, 176, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS);

// Uncomment the following line if you are using 2.7" EPD with EK79686
//Adafruit_EK79686 display(264, 176, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);


// Uncomment the following line if you are using 2.9" EPD with IL0373
//Adafruit_IL0373 display(296, 128, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);
//#define FLEXIBLE_290

// Uncomment the following line if you are using 2.9" EPD with SSD1680
//Adafruit_SSD1680 display(296, 128, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);

// Uncomment the following line if you are using 2.9" EPD with UC8151D
//Adafruit_UC8151D display(296, 128, EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);


#define COLOR1 EPD_BLACK
#define COLOR2 EPD_RED


void setup() {
  Serial.begin(115200);
  //while (!Serial) { delay(10); }
  Serial.println("Adafruit EPD test");
  
  display.begin();

#if defined(FLEXIBLE_213) || defined(FLEXIBLE_290)
  // The flexible displays have different buffers and invert settings!
  display.setBlackBuffer(1, false);
  display.setColorBuffer(1, false);
#endif

  // large block of text
  display.clearBuffer();
  testdrawtext("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur adipiscing ante sed nibh tincidunt feugiat. Maecenas enim massa, fringilla sed malesuada et, malesuada sit amet turpis. Sed porttitor neque ut ante pretium vitae malesuada nunc bibendum. Nullam aliquet ultrices massa eu hendrerit. Ut sed nisi lorem. In vestibulum purus a tortor imperdiet posuere. ", COLOR1);
  display.display();

  delay(5000);

  display.clearBuffer();
  for (int16_t i=0; i<display.width(); i+=4) {
    display.drawLine(0, 0, i, display.height()-1, COLOR1);
  }

  for (int16_t i=0; i<display.height(); i+=4) {
    display.drawLine(display.width()-1, 0, 0, i, COLOR2);  // on grayscale this will be mid-gray
  }
  display.display();
}

void loop() {
  //don't do anything!
}


void testdrawtext(const char *text, uint16_t color) {
  display.setCursor(0, 0);
  display.setTextColor(color);
  display.setTextWrap(true);
  display.print(text);
}

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

I uncommented "while (!Serial) { delay(10); }" and now I'm getting the serial output, and put a message in the void loop to see if it was making it there, and it is. So for whatever reason none of the drawing is working, but the program is running.

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by mikeysklar »

Thank you for confirming the library version in the compile output and enabling the serial to confirm the code is running.

Try the ThinkInk_tricolor.ino

https://github.com/adafruit/Adafruit_EP ... icolor.ino

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

I get a similar issue with that demo. I get the serial output, but not the images/text. This one is causing display updates, but somehow it's just the same weather info that was there before I uploaded the new sketch.

I uncommented "ThinkInk_270_Tricolor_C44 display(EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY);" for that one since it appeared to have the same display as mine.

Edit: It seems that the shield will display with 'gfx' but not 'display'. The weather sketch displays, but red, using 'gfx', but the demos don't display anything using 'display'. I'm not sure if something is wrong with it or if I am missing something important in the demos. I am not very familiar with C++. This little project is the most editing of it I've ever done.

User avatar
mikeysklar
 
Posts: 13824
Joined: Mon Aug 01, 2016 8:10 pm

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by mikeysklar »

Okay, thank for trying the thinkink example.

Engineering is looking into this. There have been recent issues with the library related to red in black areas.

User avatar
MakerMelissa
 
Posts: 375
Joined: Wed Jun 05, 2013 2:10 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by MakerMelissa »

Hi for the shield, can you make sure your pin configuration is like this:

Code: Select all

#define EPD_DC      9
#define EPD_CS      10
#define SRAM_CS     8
#define EPD_RESET   -1
#define EPD_BUSY    -1
Here's the new guide for reference: https://learn.adafruit.com/adafruit-2-7 ... uino-usage

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

Thanks, the tricolor demo worked, with all three colors, but upside down with those pins.

User avatar
MakerMelissa
 
Posts: 375
Joined: Wed Jun 05, 2013 2:10 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by MakerMelissa »

Awesome. You might be able to rotate the display by adding this line of code after it's initialized, but before it draws:

Code: Select all

display.setRotation(2);
I don't have the hardware with me at the moment, so I can't verify.

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

I put it at the end of the setup and it worked. Thanks again.

User avatar
asyork
 
Posts: 43
Joined: Wed Mar 24, 2021 7:07 am

Re: 2.7" Tri-Color eInk / ePaper Shield with SRAM Not Black

Post by asyork »

I wanted to know if there was any update on the Adafruit_GFX.h printing black as red, or if you think my problem is something else. Since the demos worked fine with the 'display' functions, I am making a bit of a leap in guessing that it has to do with gfx.

Locked
Please be positive and constructive with your questions and comments.

Return to “Glowy things (LCD, LED, TFT, EL) purchased at Adafruit”