Feather Huzzah32 and epaper Feather

Please tell us which board you are using.
For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
johnwargo
 
Posts: 55
Joined: Mon Jan 28, 2013 9:21 am

Feather Huzzah32 and epaper Feather

Post by johnwargo »

I have a Feather Huzzah32 connected to the Adafruit 2.13" Monochrome eInk / ePaper Display FeatherWing - 250x122 Monochrome with SSD1680 and I can't get any code to update the epaper display.

I started here: https://github.com/adafruit/Adafruit_EPD with one of the sample applications, but most everything I do panics the processor.

I took the EPDTest sketch and adjusted it for my hardware and came up with this:

```c
/***************************************************
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 -1 // can set to -1 and share with microcontroller Reset!
#define EPD_BUSY -1 // can set to -1 to not use a pin (will wait a fixed delay)

//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);

void setup() {
Serial.begin(115200);
delay(1000);
Serial.println("Adafruit EPD test");
display.begin();
Serial.println("Display initialized");
display.clearBuffer();
display.clearDisplay();
display.display();
Serial.println("Display cleared");

display.setCursor(0, 0);
display.setTextColor(EPD_BLACK);
display.setTextWrap(true);
Serial.println("Updating display");
display.print("This is a test");
display.display();
}

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

With this code, the code doesn't panic the processor, but the display doesn't update or clear or anything. Here's the output, notice the long pause in the middle.

```text
13:35:03.432 -> Adafruit EPD test
13:35:03.944 -> Display initialized
13:35:12.178 -> Display cleared
13:35:12.178 -> Updating display
```

Next, I found this: https://learn.adafruit.com/adafruit-2-1 ... uino-usage

Which tells me to use a different sketch to test it, but the thinkink_mono sketch just panics the processor.

I then started looking here https://learn.adafruit.com/adafruit-ein ... ts/pinouts and adjusting the pin configuration, but nothing works.

I set the defines like this based on that article:

```c
#define EPD_CS 9
#define EPD_DC 10
#define SRAM_CS 6
```

But the device reboots repeatedly:

```text
13:38:59.509 -> Rebooting...
13:38:59.555 -> ets Jul 29 2019 12:21:46
13:38:59.555 ->
13:38:59.555 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
13:38:59.555 -> configsip: 0, SPIWP:0xee
13:38:59.555 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
13:38:59.555 -> mode:DIO, clock div:1
13:38:59.555 -> load:0x3fff0018,len:4
13:38:59.555 -> load:0x3fff001c,len:1044
13:38:59.555 -> load:0x40078000,len:10124
13:38:59.555 -> load:0x40080400,len:5856
13:38:59.555 -> entry 0x400806a8
13:38:59.694 -> Adafruit EPD full update test in mono
13:38:59.694 -> Guru Meditation Error: Core 1 panic'ed (). Exception was unhandled.
13:38:59.694 -> Memory dump at 0x400d1664: ffff1f00 ffffffff ffffffff
13:38:59.694 -> Core 1 register dump:
13:38:59.694 -> PC : 0x400d1668 PS : 0x00060530 A0 : 0x800d1319 A1 : 0x3ffb1f20
13:38:59.694 -> A2 : 0x3ffbfebc A3 : 0x00000fa0 A4 : 0x00000000 A5 : 0x0000ff00
13:38:59.694 -> A6 : 0x00ff0000 A7 : 0xff000000 A8 : 0x800d16b0 A9 : 0x3ffb1f00
13:38:59.694 -> A10 : 0x3ffbfebc A11 : 0x00000000 A12 : 0x00000002 A13 : 0x0000ff00
13:38:59.741 -> A14 : 0x00ff0000 A15 : 0xff000000 SAR : 0x0000001a EXCCAUSE: 0x00000000
13:38:59.741 -> EXCVADDR: 0x00000000 LBEG : 0x400014fd LEND : 0x4000150d LCOUNT : 0xffffffff
13:38:59.741 ->
13:38:59.741 -> ELF file SHA256: 0000000000000000
13:38:59.741 ->
13:38:59.741 -> Backtrace: 0x400d1668:0x3ffb1f20 0x400d1316:0x3ffb1f40 0x400d1ccd:0x3ffb1f60 0x400d0d6e:0x3ffb1f80 0x400d3aee:0x3ffb1fb0 0x400861d5:0x3ffb1fd0
13:38:59.741 ->
```

Can someone share what I need to do to work with the Feather epaper display and the Huzzah32? I can't find the details I need to do this anywhere.

User avatar
adafruit_support_carter
 
Posts: 28849
Joined: Tue Nov 29, 2016 2:45 pm

Re: Feather Huzzah32 and epaper Feather

Post by adafruit_support_carter »

Try again with the ThinkInk_mono sketch mentioned in the guide:
https://github.com/adafruit/Adafruit_EP ... k_mono.ino

And then try this for the pin defines:

Code: Select all

#define EPD_CS      15
#define EPD_DC      33
#define SRAM_CS     32
#define EPD_RESET   -1 // can set to -1 and share with microcontroller Reset!
#define EPD_BUSY    -1 // can set to -1 to not use a pin (will wait a fixed delay)

User avatar
johnwargo
 
Posts: 55
Joined: Mon Jan 28, 2013 9:21 am

Re: Feather Huzzah32 and epaper Feather

Post by johnwargo »

Thanks, it works. Any reason you can't document this? As I mentioned here: viewtopic.php?f=57&t=182024, there's specific instructions for the Feather boards that isn't correct.

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

Return to “Feather - Adafruit's lightweight platform”