Downloads PNG image from the network and displays it on e-ink / e-paper display. An example of a service that generates suitable image is here.
The project uses ESP32 and WaveShare 4.2" 400x300 display described here. The display can be purchased here.
The project uses PlatformIO as the development environment.
Create configuration file under data
subdirectory of the the source
code repository and configuration file
mkdir -p data
cat > data/config.json <<EOF
{
"wifi_ap_mode": {
"ssid": "pictureframe",
"pass": "esp32frame"
},
"image_url": "IMAGE_DOWNLOAD_URL",
"refresh_period_sec": 600
}
EOF
Note that passphrase must be 8 characters or longer, otherwise SoftAP will fail to initialize correctly and the SSID and PSK for the AP will be corrupted.
Next, generate and upload SPIFF filesystem out of the contents of
data
directory
pio run -t uploadfs
Run following commands to compile and flash the program:
pio run -t upload
# run to see debug messages
pio device monitor -b 115200
- PNG decoding uses uPNG
- GxEPD e-paper display driver, depends on Adafruit_GFX
- Web interface for initial WLAN configuration using AutoConnect
- JSON deserialization with ArduinoJSON