lmarzen / esp32-weather-epd

A low-power E-Paper weather display powered by an ESP32 microcontroller. Utilizes the OpenWeatherMap API.
GNU General Public License v3.0
2.49k stars 196 forks source link

Waveshare e-Paper Driver HAT rev2.3 #42

Closed Spanholz closed 10 months ago

Spanholz commented 1 year ago

I got a new 7.5 3-colour display from Waveshare this week including a Waveshare e-Paper Driver HAT rev2.3. The new HAT is not documented on Waveshares webpage yet and is different from the previous versions. It features 9 pins, with an additional PWR pin. The display does not start with VCC or PWR only connected. But with PWR connected to second 3.3V and therefore disconnecting the BME it works. I will update if the PWR pin can be put on same 3V3 as the VCC from the hat.

e-Paper HAT

Spanholz commented 1 year ago

Putting PWR and VCC on the same 3V3 pin works. The other PIN can than be used by BME

lmarzen commented 1 year ago

Thanks for investigating and documenting this.

I just found this page talking about the changes... https://www.waveshare.net/wiki/E-Paper_Driver_HAT

Translating to english...

Version changes:

The RST pin now only controls reset and no longer controls power on and off.
Add a PWR pin to control power on and off
Replace the inductor with a smaller, thinner package
PH2.0 8Pin interface replaced with GH1.25 9Pin interface
The version number silk screen is updated to Rev2.3

If you need to upgrade to this version from a previous version, you can choose one of the following methods for compatibility:

Update the program to the latest (Arduino program only supports 7.5inch e-Paper, 7.5inch e-Paper (B), 5.83inch e-Paper, 5.83inch e-Paper (B), 2.9inch e-Paper (D), 2.13 inch e-Paper (D) six screens)
Connect PWR pin to 3.3V
Solder a 47K (or similar) resistor to the empty pad on the back

Appears you are right to connect PWR to 3.3V. I'll keep an eye on the epaper driver library this project uses and see if they provide any updates.

nonpayer commented 1 year ago

I apologize, but I'm a beginner. I also received the Waveshare e-Paper Driver HAT rev2.3. I'm doing something wrong, because when I upload, I have 141 problems in renderer.app. Can anyone help me as a complete beginner? I followed the instructions, but I probably have something wrongly connected because I have HAT rev 2.3. and there is another in the manual...

image image

edit:

update success, but only black edges on the display...

lmarzen commented 1 year ago

If you are getting a lot of problems in renderer.cpp, your config.h file may be misconfigured.

lmarzen commented 1 year ago

Additionally can you share the exact model of panel you are using as well as the model of esp32 to make it easier to assist in troubleshooting.

nonpayer commented 1 year ago

800×480, 7.5inch E-Ink display HAT for Raspberry Pi and e-Paper Driver HAT ver 2.3 with 9 pins, with an additional PWR pin.

FireBeetle 2 ESP32-E

Update is success without error, but i have only black edges on the display...

In config.h I have "define DISP_BW_V1" and update is without errors and success. When I change to "define DISP_BW_V2" I have update with errors. But my e-link is 800x480px Black/White and I should have "define DISP_BW_V2". But with this setting update does not work.

lmarzen commented 1 year ago

Try reverting your config.h back to the default. Maybe another setting is mis configured in it.

nonpayer commented 1 year ago

Thanks for advice. I tried to use the default config.h and the upload was successful. But I have a 9-pin HAT and with an additional PWR pin. As Spanholz already wrote, the display only works with PWR connected to second 3.3V and therefore disconnecting the BME, or PWR and VCC on the same 3V3. But how do I plug PWR and 3V3 into the same connector. ?

lmarzen commented 1 year ago

You will need to make a splitter. or solder both wires to the same 3v on the esp32

sonett12 commented 1 year ago

first of all thank you very much for your project @lmarzen I got myself the same hardware and have it running a few days now, works like a charm :-)

I also got the rev2.3 e-paper hat with this additional pwr pin to enable the display. I looked it up in the schematic here https://files.waveshare.com/upload/8/8e/E-Paper_Driver_HAT.pdf

Bildschirmfoto 2023-10-03 um 07 34 49

For my understanding the additional pin can be controlled to activate/disable the display but is not powering the display, so I just used a GPIO pin for this, I connected the pwr pin to D6 pin 14 and added the activation in the main.ccp as such (lines 318..320 + 335):

Bildschirmfoto 2023-10-03 um 07 32 33

for me that was enough, maybe others you can do so as well. Could be nice to have it an option in the project source code to configure this pwr pin as well.

nonpayer commented 1 year ago

You will need to make a splitter. or solder both wires to the same 3v on the esp32

I did it and everything works fine. Thanks for help.

lmarzen commented 1 year ago

@sonett12 Thanks for investigating this further and sharing your results. I'll be adding an option for this and adding some documentation when I get a chance.

lmarzen commented 10 months ago

I have suggested users purchase the DESPI-CO2 adaptor board instead of the waveshare hat going forward.

nicoh88 commented 3 months ago

the pwr pin to D6 pin 14

Hi @sonett12, you say you would use the D6 / 14 for the new e-Paper HAT rev2.3 for the additional PIN PWR.

According to the wiring diagram from lmarzen, D6 / 14 is already used for BUSY. Do you then not use BUSY at all or how did you do it?

I actually wanted to use D9 / 2 for PWR, but according to the documentation of the FireBeetle Board ESP32-E (SKU DFR0654) D9 / 2 has a remark: "For controlling onboard LED by outputting digital signal"

Hence my question about what you did with BUSY. Thank you in advance for your answer.