news

ESP32-Powered Wedding Gift

Reporting from Shanghai, China
Sep 30, 2020

With ESP32, we’ve got you covered even for your wedding gifts… provided you want to be both chic and technologically up-to-date!

Physicist, developer and coder, Sebastian Staacks from Germany created a fabulous digital guestbook for his brother’s recent wedding! Controlled by an ESP32 Wi-Fi module, this device allowed guests at the wedding to login on a simple web interface over their smartphones, and input text messages as well as drawings. Some people were not able to attend due to the coronavirus pandemic, but Sebastian’s wedding gift gave them the opportunity to login from afar and send their greetings.

The working principle of this digital guestbook is actually simple. Guests are given a URL which they enter into their smartphones’ web browser. There, they find a simple editor that asks for their name and a message, while offering them the option to choose a font and draw some decorations. The web interface shows a preview of their message, as it will be seen on the guestbook screen and, if the message passes some security checks, they can submit it.

ESP32-powered digital guestbook

Hardware

The central part of the guestbook is a 7.5” e-paper display by Waveshare, whose size is similar to that of most common e-book readers. Such a black-and-white display has a typically matte surface and amazing readability under bright light. Its resolution of 800x480 is not perfect but sufficient for this particular use-case. However, the great advantage of Waveshare displays is that they are mainly addressed to makers. So, they come with a driver board designed to be directly wired to a Raspberry Pi or an Arduino. Of course, they also come with resources and examples to drive the display.

The LEDs are on a short piece of WS2801 LED strip. Sebastian chose to use only six LEDs, so that the total current drawn by the project would not exceed 500mA. This way, he could run the guestbook on any USB port. On the actual wedding day, the guestbook was charged with a simple power bank that could potentially keep it on for 20 hours. If this guestbook is eventually used as desk decoration, a wired phone charger can keep it powered.

As the “brain” of the guestbook, Sebastian used an ESP32-WROOM-32 module, which allowed him to use Wi-Fi at the wedding location to poll new messages from his web server and store them in the SPI flash file system (SPIFFS) of ESP32-WROOM-32. Both the screen driver as well as the LEDs were wired directly to the ESP32’s GPIO ports without any additional electronics required. 

Code

The code uses a range of libraries, with the most notable one being the GxEPD2 library for driving the display. This one turned out to be far superior than any other libraries for the screen in this particular use-case. The LEDs are driven by Adafruit’s WS2801 library and, of course, there are the standard libraries for the ESP32 Wi-Fi module. To find all the details about the code in this project, you can click here, and you can also watch demo of Sebastian’s digital guestbook on YouTube.

Share this article
Reuse this content