In August of 2025, TMRNL released fast refresh in firmware 1.6.x. We announced it with a blog post, "No more flicker," which contains images and videos providing some examples. But what does it mean?
Where We Started
When our TRMNL (OG) 1-bit device changed screens using the default EPD (Electronic Paper Display) drivers, the manufacturer's spec did not support fast refresh, so whenever the screen changed, it would need to display all-black and all-white before displaying the content. While this flicker could prove distracting, it was a normal refresh to ensure there were no pixels left in the wrong color (black or white).
Changing Only Part of the Screen
Fast refresh is the act of updating the screen contents by changing only the pixels that need to flip from black to white (or visa versa), and leaving the rest of the pixels unchanged. This makes the screen change nearly instant, a feeling similar to the LCD screens we are exposed to every day.
Even with fast refresh, it's necessary to do a normal refresh every once in a while, due to an effect called ghosting, where a pixel doesn't properly change, leaving a ghost of the previous state. This can leave the screen muddy, gray, or unclear until a normal refresh occurs.
We perform a normal refresh after a regular interval, or when switching between bit depths.
Fast Refresh and Bits
At the same time, we released 2-bit support (4 shades: Black, white, light gray, dark gray) on a 1-bit EPD that didn't support that feature with the default driver; so we replaced it.
However, that left fast refresh as a choice, between it and 2-bit images, because due to EPD limitations, we couldn't have both at the same time. So if the device was going to display a 2-bit image, then some flashing was going to return, while if the image was 1-bit, we could use fast refresh and make the screen transition very fast (as far as the user can see). It's not a choice you make, but a choice the device makes to serve you the content you chose, in the format you chose*.
* The ability to choose 1-bit or 2-bit rendering for a particular plugin will be released in late 2025.