G6EJD / ESP32-e-Paper-Weather-Display

An ESP32 and 2.9", 4.2" or 7.5" ePaper Display reads Weather Underground data via their API and then displays the weather
Other
946 stars 206 forks source link

2.9'' V2 - unable to compile #192

Closed jjvelar closed 1 year ago

jjvelar commented 1 year ago

Hi, I am not able to compile for 2.9'' display. If I try the 2.7'' version, it compiles and uploads like a charm but does not show anything in the screen despite I have changed dimensions. The problem with 2.9'' is even worst as I can't see it Examples, only the the 2_9_T5 version. Any advise? Is there any additional information I could provide you? Thanks and best regards

G6EJD commented 1 year ago

What is the compiler error message?

G6EJD commented 1 year ago

There are two 2.9" versions, which one are you using?

G6EJD commented 1 year ago

You could have any of these display types: //GxEPD2_BW<GxEPD2_290, GxEPD2_290::HEIGHT> display(GxEPD2_290(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // GDEH029A1 128x296, SSD1608 (IL3820) //GxEPD2_BW<GxEPD2_290_T5, GxEPD2_290_T5::HEIGHT> display(GxEPD2_290_T5(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // GDEW029T5 128x296, UC8151 (IL0373) //GxEPD2_BW<GxEPD2_290_T5D, GxEPD2_290_T5D::HEIGHT> display(GxEPD2_290_T5D(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // GDEW029T5D 128x296, UC8151D //GxEPD2_BW<GxEPD2_290_I6FD, GxEPD2_290_I6FD::HEIGHT> display(GxEPD2_290_I6FD(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // GDEW029I6FD 128x296, UC8151D //GxEPD2_BW<GxEPD2_290_T94, GxEPD2_290_T94::HEIGHT> display(GxEPD2_290_T94(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // GDEM029T94 128x296, SSD1680 //GxEPD2_BW<GxEPD2_290_T94_V2, GxEPD2_290_T94_V2::HEIGHT> display(GxEPD2_290_T94_V2(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // GDEM029T94 128x296, SSD1680, Waveshare 2.9" V2 variant //GxEPD2_BW<GxEPD2_290_BS, GxEPD2_290_BS::HEIGHT> display(GxEPD2_290_BS(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // DEPG0290BS 128x296, SSD1680 //GxEPD2_BW<GxEPD2_290_M06, GxEPD2_290_M06::HEIGHT> display(GxEPD2_290_M06(/CS=5/ SS, /DC=/ 17, /RST=/ 16, /BUSY=/ 4)); // GDEW029M06 128x296, UC8151D

You'd need to try them all unless you can see some marking on the display.

jjvelar commented 1 year ago

What is the compiler error message?

I just can't find my version when showing all examples. I have 2.9'' version and I can only see 2.9'' T5 example despite there is a folder for my version (Waveshare_2_9)

jjvelar commented 1 year ago

My display version is 2.9" v2

jjvelar commented 1 year ago

image

as you can see, despite there is the folder Waveshare_2_9, I can't find it in the examples menu.

G6EJD commented 1 year ago

Your copy of the repository is out of date. Either download it again or just go to the GitHub page just above here and copy the file out of there.

G6EJD commented 1 year ago

https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/tree/master/examples/Waveshare_2_9

jjvelar commented 1 year ago

I have done it but it is still the same: Waveshare_2_9 example does not appear despite the folder is available. I see 2_9 is v7 while 2_9_T5 is v6.5 as it includes 3-day forecast. Could this make the difference? Could I try the v6.5 version for 2_9?

G6EJD commented 1 year ago

Let’s find out which display your using: do you have a link to the sellers webpage?

jjvelar commented 1 year ago

Bought at Amazon: https://www.amazon.es/dp/B071JFRV2S?ref=ppx_yo2ov_dt_b_product_details&th=1

Sticker in the board "V2" and "Rev2.1"

Marca ‎Waveshare Fabricante ‎Waveshare Modelo ‎2.13inch E-Ink HAT 250x122 Dimensiones del producto ‎3.51 x 2.01 x 0.2 cm; 18.14 gramos Número de modelo del producto ‎2.13inch E-Ink HAT 250x122 Número de producto ‎e-paper module Fabricante del procesador ‎VIA Tamaño de la pantalla ‎2.9 Pulgadas

G6EJD commented 1 year ago

OK, I have the display type now. So have you tried all of the variants of display driver? Pins: static const uint8_t EPD_BUSY = 4; // to EPD BUSY static const uint8_t EPD_CS = 5; // to EPD CS static const uint8_t EPD_RST = 16; // to EPD RST static const uint8_t EPD_DC = 17; // to EPD DC static const uint8_t EPD_SCK = 18; // to EPD CLK static const uint8_t EPD_MISO = 19; // Master-In Slave-Out not used, as no data from display static const uint8_t EPD_MOSI = 23; // to EPD DIN E.g. try this first: GxEPD2_BW<GxEPD2_290, GxEPD2_290::HEIGHT> display(GxEPD2_290(5, 17, 16, 4)); Then: GxEPD2_BW<GxEPD2_290_T5, GxEPD2_290_T5::HEIGHT> display(GxEPD2_290_T5(5, 17, 16, 4)); Then: GxEPD2_BW<GxEPD2_290_T5D, GxEPD2_290_T5D::HEIGHT> display(GxEPD2_290_T5D(5, 17, 16, 4)); ... Then: GxEPD2_BW<GxEPD2_290_T94_V2, GxEPD2_290_T94_V2::HEIGHT> display(GxEPD2_290_T94_V2(5, 17, 16, 4)); Until all versions have been tried.

jjvelar commented 1 year ago

2.9”

El El sáb, 18 feb 2023 a las 16:39, G6EJD @.***> escribió:

That link says 2.13”? Or is it 2.9”?

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435702206, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4VML2YSRUKKIOJ447DWYDUK7ANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

G6EJD commented 1 year ago

Regardless of the display are you seeing weather data on the serial monitor port?

jjvelar commented 1 year ago

No. On top of that, get an error about not being able to get time, so no meteo info available

El El sáb, 18 feb 2023 a las 20:03, G6EJD @.***> escribió:

Regardless of the display are you seeing weather data on the serial monitor port?

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435741046, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4VCR3Z2MJQOFADDX3TWYEMG7ANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

jjvelar commented 1 year ago

I also get “param reqd error” log

El El sáb, 18 feb 2023 a las 20:03, G6EJD @.***> escribió:

Regardless of the display are you seeing weather data on the serial monitor port?

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435741046, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4VCR3Z2MJQOFADDX3TWYEMG7ANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

G6EJD commented 1 year ago

That tells me it’s not getting an internet connection, have you set the credentials for your WiFi network and OWM API key?

it will report an IP connection and IP address

jjvelar commented 1 year ago

It gets an IP address but get stuck getting time

El El sáb, 18 feb 2023 a las 20:14, G6EJD @.***> escribió:

That tells me it’s not getting an internet connection, have you set the credentials for your WiFi network and OWM API key?

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435743538, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4TRV2SOXRNRXRCBT5DWYENPVANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

G6EJD commented 1 year ago

Have you set the time server address in the credentials file though as default it will use the UK time. Is your Router blocking access to some services like time? If it can’t get time it will automatically time out and proceed to get the weather data and display the results.

jjvelar commented 1 year ago

here you've got my credentials file. log is: psram error, connects to my wify, gets an IP, does not get time and then goes into deep sleep, so no meteo data available

[image: image.png]

El sáb, 18 feb 2023 a las 20:30, G6EJD @.***>) escribió:

Have you set the time server address in the credentials file though as default it will use the UK time. Is your Router blocking access to some services like time? If it can’t get time it will automatically time out and proceed to get the weather data and display the results.

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435752159, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4T4LGJ46HMHVKY5TIDWYEPOBANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

G6EJD commented 1 year ago

You should not not get a PSRAM error, which board type are you selecting, choose a Wemos D32. It sounds like your API key for OpenWeatherMap is not valid.

jjvelar commented 1 year ago

my board is an esp32-wroom-32 here you've got my board configuration in arduino ide. Should I try wemos d32? will double check openweathermap API key.

[image: image.png]

El sáb, 18 feb 2023 a las 21:08, G6EJD @.***>) escribió:

You should not not get a PSRAM error, which board type are you selecting, choose a Wemos D32. It sounds like your API key for OpenWeatherMap is not valid.

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435759178, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4XUA5QZI54UW7KPTDLWYET5RANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

G6EJD commented 1 year ago

Yes try the default vroom board at the top of the list or the D32 type. There is an example API call in the credential file put your API in that and try pasting it in your browser address bar it should return the weather

jjvelar commented 1 year ago

will try to compile tomorrow with the other boards but, as you can see, API key is working OK anything else I could try?

[image: image.png]

El sáb, 18 feb 2023 a las 21:18, G6EJD @.***>) escribió:

Yes try the default vroom board at the top of the list or the D32 type. There is an example API call in the credential file put your API in that and try pasting it in your browser address bar it should return the weather

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435760869, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4WCRS3ATMDWOTPGN63WYEVBTANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

G6EJD commented 1 year ago

If the API key is working then you should get the same result on the serial port whether the display is connected or working or not, same for the time. Testing the API key with a browser proves the Router is not blocking anything, so it was the wrong board type.

jjvelar commented 1 year ago

changed the board and now I get meteo data in serial monitor! but screen does not update/change... what else should I try?

El sáb, 18 feb 2023 a las 21:54, G6EJD @.***>) escribió:

If the API key is working then you should get the same result on the serial port whether the display is connected or working or not, same for the time. Testing the API key with a browser proves the Router is not blocking anything, so it was the wrong board type.

— Reply to this email directly, view it on GitHub https://github.com/G6EJD/ESP32-e-Paper-Weather-Display/issues/192#issuecomment-1435766993, or unsubscribe https://github.com/notifications/unsubscribe-auth/ALKMG4WX6NKEIGTVCMJS6MLWYEZGPANCNFSM6AAAAAAU7QZN3E . You are receiving this because you authored the thread.Message ID: @.***>

G6EJD commented 1 year ago

OK, screen aside it’s all working now, that’s good progress. Now you need to replace the line in the source code with each GxEPD2 driver object until a match with your display is found, see my post above with the examples that need trying one by one. It might be the o d with V2 in the name. But keep a copy of the code you have running now so you can backtrack if it all goes wrong.

jjvelar commented 1 year ago

That one did the magic:

GxEPD2_BW<GxEPD2_290_T94, GxEPD2_290_T94::HEIGHT> display(GxEPD2_290_T94(/CS=D8/ EPD_CS, /DC=D3/ EPD_DC, /RST=D4/ EPD_RST, /BUSY=D2/ EPD_BUSY)); // GDEM029T94 128x296, SSD1680

Thanks a lot for your support!

G6EJD commented 1 year ago

Happy to help.