Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

paperdash/device-epd

Open more actions menu

Repository files navigation

paperdash.io

Software License Generic badge Generic badge Generic badge Generic badge MadeWithVueJs.com shield

ForTheBadge built-with-love

Open Source E-Paper Display Platform

  • 🌍 Website - Learn more about paperdash.io
  • 📡 Discover - Find devices in your local network
  • 🛠 Case - 3D Model
  • 👍 Like us on Instagram

Face Calendar Face Picture APP

Goals

  • Make E-Paper displays accessible to all kind of developers
  • Easy and always update able
  • Usable also without developer background
  • Deliver the best user experience
  • Should work Out-of-the-box
  • Using standard parts to built

Features

Firmware

  • OTA update
  • REST API
  • JPEG decoder (some limitations)
  • PNG decoder (work in progress)
  • Out-of-the-box faces
    • Current weather condition and forecast (https://openweathermap.org/ api key requried)
    • Calendar view with random picture
    • Today view with fullscreen random picture
  • Wifi STA fallback if connection failed

Web APP

  • ESP-32 optimized vue.js Web APP
  • Material Design Framework
  • First run setup wizard
  • Screen preview of epd
  • Basic PWA possibility

API examples

# Get device stats as json
$ curl http://paperdash-epd.local/stats

# Download current image display
$ curl http://paperdash-epd.local/api/device/screen > current.bmp

# Send an image to display
$ curl -F '=@data/faceToday.jpg;filename=dithering' http://paperdash-epd.local/api/device/screen

Getting started

Necessary parts to build the project

ESP-32 firmware

The whole architecture was inspired from the arduino concept with a setup() and loop() function. This is the reason why everything is broken down into separate modules below /lib. Each module has basically a setupXXX() and loopXXX() method.

Build (with PlatformIO)

$ pio run --environment esp32

# update esp
$ platformio run --target upload

Web APP

Based on state of the art technologie Vue.js + Vuetify + Webpack

Build

$ yarn --cwd app
$ yarn --cwd app build

# update esp
$ platformio run --target uploadfs

# alternative, create spiffs.bin
$ platformio run --target buildfs
Morty Proxy This is a proxified and sanitized view of the page, visit original site.