Time to retire the 16x2 LCD
Most of us can remember seeing some technological gadget for the first time. Depending on your age, you might fondly remember the first CD, first smartphone, first pocket calculator. They were new and exciting once. But the 16x2 LCD was never cool. Low-contrast, slow to update, a terrible signal interface. All these shortcomings were apparent from the beginning, yet somehow it lasts and lasts. The HD44780-based display got a lot of adoption but never much love.

Well, here's something better. It's a 480x128 RGB panel - you can get them from multiple sources, starting at under $20.

This one from buydisplay is high-contrast with a strong backlight. It has the same 40-pin connector as a 4.3" panel, so a GD3X can drive it directly. (All these examples are in Python, here, and I've also linked each image to the code snippet.)

Its signaling is a little odd. The panel acts as if it is the bottom 128 pixels of a 480x272 display. That is, you feed it a 480x272 picture, and it ignores the first 144 lines and displays the last 128. (I experimented with sending fewer than 272 lines, and confirmed that it needs the whole picture to sync.)

EVE copes just fine with this for the most part. If you use the screen rotate picture, you can just turn the screen upside-down and forget about the invisible 144 lines. If you drive it non-inverted, then the the top left is not (0, 0) but instead (0, 144). It's not very complicated, and you can always use:
gd.VertexTranslateY(144)to get the EVE hardware to apply the offset for you.
You can use it just like an old text LCD:

Or do something completely new!

Thanks for reading.