Drive 1024Γ600 Pixels via I2C with an ATtiny85

If you need to drive a big screen for a project, itβs fair to say your first thought isnβt going to be to use the ATtiny85. With just 512 bytes of RAM and 8 kilobytes of flash memory, the 8-bit micro seems a little cramped to drive, say, a 10β³ screen. Yet thatβs exactly what [ToSStudio] is doing with TinyTFT_LT7683: 1024 x 600 pixels of TFT goodness, over I2C no less.

The name kind of gives away the secret: it wonβt work on just any TFT display. Itβs using properties of the LT7683 display driver, though if you donβt have one of those, the RA8875 is also compatible. Those drivers can take more than just a pixel streamβ a good thing, since youβd be hard pressed to get that many pixels streaming from an ATtiny. These are character/graphic display drivers, which means you can get them to draw both characters and graphics on the screen if you speak the lingo.
Itβs still not blazing fast; the documentation suggests βstatic or moderately dynamic UIsβ as the suggested use case, and a clock is of the pre-programmed examples. From that, we can surmise that you can get 1 FPS or better with this code. Youβre limited both by the simple micro-controller and the bandwidth of the I2C bus, but within those limits this seems like a very powerful technique.
This isnβt the first ATtiny graphics library to blow our minds, but if you really want an impressive graphics demo from the little micro that could, you really need to race the beam.
Thanks to [Thomas Scherer] for the tip!