ESP32uesday: LovyanGFX High-Performance Graphics Library

The eventual goal of all this mucking about with the ESP32-S3 LCD peripheral is to improve the performance of the Adafruit_GFX library that underlies a ton of projects. This could take some time. If you need something performant right away, consider LovyanGFX as an alternative graphics library. You can locate and install it through the Arduino Library manager.

This is not a drop-in replacement for Adafruit_GFX. While many functions are named and function similarly, other aspects work quite differently, such as screen initialization and the whole idea of “canvases” (Adafruit_GFX) vs “sprites” (LovyanGFX). Thus…existing Adafruit_GFX projects won’t just copy-and-paste run under this other system…and once adapted to LovyanGFX, won’t directly copy back. There’s a lot of overlap, but they’re not congruent.

LovyanGFX gets much of its speed by focusing on DMA and high-speed peripherals only present on the ESP32 family, RP2040 and SAMD51. Primitive microcontrollers like the AVR line are left out. Performance then is stunning…as you can see in the banner image, one of the example programs running on an ESP32-S3 with 8-bit parallel ILI9341 display is animating an absurd number of sprites at 130 frames per second (the LCD can only refresh at about 70 Hz, so there’s plenty of overhead to do more interesting things with all those free cycles).

We have hundreds of existing published Adafruit_GFX projects (many using AVR), so we can’t simply switch over to this as “the new GFX.” But we do want to improve performance, and there no doubt will be lessons here. If you need that performance today and don’t mind the diverging API…well, there you go!


Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7:30pm ET! To join, head over to YouTube and check out the show’s live chat and our Discord!

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 38,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

CircuitPython – The easiest way to program microcontrollers – CircuitPython.org


New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — New Products 11/15/2024 Featuring Adafruit bq25185 USB / DC / Solar Charger with 3.3V Buck Board! (Video)

Python for Microcontrollers – Adafruit Daily — Python on Microcontrollers Newsletter: A New Arduino MicroPython Package Manager, How-Tos and Much More! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

EYE on NPI – Adafruit Daily — EYE on NPI Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

Adafruit IoT Monthly — The 2024 Recap Issue!

Maker Business – Adafruit Daily — Apple to build another chip at TSMC Arizona

Electronics – Adafruit Daily — SMT Tip – Stop moving around!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !


No Comments

No comments yet.

Sorry, the comment form is closed at this time.