Off To The Races With ESP32 And EInk

Off to the races? Formula One races, that is. This project by [mazur8888] uses an ESP32 to keep track of the sport, and display a “live” dashboard on a 2.9″ tri-color LCD.

“Live” is in scare quotes because updates are fetched only every 30 minutes; letting the ESP32 sleep the rest of the time gives the tiny desk gadget a smaller energy footprint. Usually that’s to increase battery life, but this version of the project does not appear to be battery-powered. Here the data being fetched is about overall team rankings, upcoming races, and during a race the current occupant of the pole-position.

There’s more than just the eInk display running on the ESP32; as with many projects these days, micro-controller is being pressed into service as a web server to host a full dashboard that gives extra information as well as settings and OTA updates. The screen and dev board sit inside a conventional 3D-printed case.

Normally when talking Formula One, we’re looking into the hacks race teams make. This hack might not do anything revolutionary to track the racers, but it does show a nice use for a small e-ink module that isn’t another weather display. The project is open source under a GPL3.0 license with code and STLs available on GitHub.

Thanks to [mazur8888]. If you’ve got something on the go with an e-ink display (or anything else) send your electrophoretic hacks in to our tips line; we’d love to hear from you.

3 thoughts on “Off To The Races With ESP32 And EInk

  1. I’ve got a couple of red/black rink displays I’d like to use, but I haven’t determined the support for them. It wasn’t headed in the right direction last time I looked.

    Anybody have a cheat sheet for how to figure out these displays without risk of frying anything?

    1. Pretty straightforward honestly, connect it to your MCU of choice and include the manufacturer provided library into your code. Although you probably don’t need the entire library, just the single function to send a new frame to the screen.
      I never liked using the bloated libraries that manufacturers provide, I just strip them down and use my own framebuffer+drawing functions

      1. ^this, borrow initialization instructions from manufacturer provided demo code and write your own drawing functions. On a few epd’s I even was able to figure out how to add partial/fast updates by reading the controller chip datasheet.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.