Make a Weather Station with an ESP32 and a WeAct 2.13 inch EPaper Screen

This post is more of a Public Service Announcement that a real "how to" explanation.

A couple of weeks ago I acquired a WeAct 2.13 inch epaper screen from Aliexpress. The price of such screens is falling continually, so they are now within easy reach of almost any maker.

When it arrived, I set about making a weather station. A search of the internet revealed this excellent piece of coding that not only displays the weather on the screen, but questions openweathermap.org for regular updates. It also plucks the correct time from an NTP Server, then draws a beautiful rendering on the screen.

I won't go into a lot of detail as G6EJD's Github is self-explanatory and comprehensive.

However, when I got my arduino code to compile for the Wemos D1 32 mini microcontroller I intended to use, all I could get was the border around the screen. Nothing else showed up at all.

After several hours of research, I finally found the problem.

If you are using the WeAct 2.13 B&W screen, you need to change this:

GxEPD2_BW<GxEPD2_213_B73, GxEPD2_213_B73::HEIGHT> display(GxEPD2_213_B73(/*CS=D8*/ EPD_CS, /*DC=D3*/ EPD_DC, /*RST=D4*/ EPD_RST, /*BUSY=D2*/ EPD_BUSY));  

to this:

GxEPD2_BW<GxEPD2_213_B74, GxEPD2_213_B74::HEIGHT> display(GxEPD2_213_B74(/*CS=D8*/ EPD_CS, /*DC=D3*/ EPD_DC, /*RST=D4*/ EPD_RST, /*BUSY=D2*/ EPD_BUSY));  

You need to change the screen to GxEPD2213B73 to GxEPD2213B74.

Once you've done that, the rest should work.