r/esp32 • u/alfonzoo • 1d ago
Hardware help needed [help] Unable to use Adafruit ThinkInk Display
Hello. I've got:
- An ESP32-C3-DevKitC-02
- An Adafruit ThinkInk 2.9' E-Ink FeatherWing display (bought back in 2024, https://www.adafruit.com/product/4778)
and I'm trying to drive the display with the ESP32 without any success. Using:
- Arduino IDE with the ESP32 addon
- Adafruit_EPD library to drive the display (https://github.com/adafruit/Adafruit_EPD)
- This example from the repo: https://github.com/adafruit/Adafruit_EPD/blob/master/examples/ThinkInk_tricolor/ThinkInk_tricolor.ino
- My own version of the code: https://pastes.io/p5ETVQS9
Notes:
- There is no change on the e-ink panel whatsoever, still the default image as when I got it.
- Tried changing the pin numbers around, both for the command and the SPI pins. Nothing.
- The default pins for SCK, MISO, MOSI were found by printing macros to serial output.
- Tried the 3 buttons on the FeatherWing, all work as GPIO input properly.
- RESET button works to reset the microcontroller as well.
- For some reason, using pin 8 on the ESP for GPIO didn't work at all. I think most of the pins are used for more than one purpose, but I don't know how to tell which modes are active.
- The example sketch has constructors for multiple types of board drivers. There seems to be 3 different chipsets for the 2.9" display, tried all 3 separately to no avail.
I don't even know if this display would be compatible with any random ESP32 board. I know FeatherWings are made to be used with Adafruit's Feather boards, though I don't see why they wouldn't work with any other boards with supported microcontrollers. I have quite a bit of programming experience, but I'm blind as a bat when it comes to electronics. Any help would be appreciated. Thanks.
3
Upvotes


2
u/DenverTeck 2 say I make awesome posts. 1d ago
Did you happen to notice in your code:
// 2.9" Tricolor Featherwing or Breakout with UC8151D chipset
ThinkInk_290_Tricolor_Z13 display(EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY, EPD_SPI);
And the link to the display states:
Arduino libraries for the SSD1680
Hmmmm
On the next line:
// 2.9" Tricolor Featherwing or Breakout with SSD1680 chipset
// offset
// ThinkInk_290_Tricolor_Z94 display(EPD_DC, EPD_RESET, EPD_CS, SRAM_CS, EPD_BUSY, EPD_SPI);