Skip to content

Touch/gestures, Sprites and LVGL integration

Choose a tag to compare

@pschatzmann pschatzmann released this 16 Aug 09:19
· 35 commits to main since this release

Changes since v0.1.0

Release v0.1.0 was tagged on 2026-04-24. Since then, 32 commits landed on main, touching 46 files (+4881/−497 lines).

New display driver infrastructure

  • New DisplayDriverSPI.h (565 lines) — generic SPI display driver, later optimized (writeData) and had a redundant writePixels removed; fixed for correct pixel byte order; new ILI9341/ILI9342 full-init drivers, plus a rotation parameter and readData support
  • New DisplayDriverSDL.h for desktop/SDL output, plus a desktop example and CMake desktop build support

Fonts

  • New bitmap font system: AsciiFonts.h, FixedBitmapFont.h, GammaTable.h
  • Fixed Font16x24 horizontal mirroring bug; added font-test example

Touch & gestures

  • New TouchDriver.h (730 lines) with new touch driver classes, plus several follow-up fixes for compile errors and a review pass
  • New GestureDetector.h (322 lines) for gesture support

Sprites

  • New SpriteDisplay.h, SpriteInfo.h, SurfaceWithExternalBuffer.h for sprite rendering
  • FrameBuffer gained sprite access (setData(), sprite access methods) and was refactored/slimmed (net ~-150 lines despite new features)
  • Added setClearOnSpriteMove option
  • New sprite-display-demo and bouncing-ball examples

LVGL support

  • New LVGLDriver.h (281 lines) integrating LVGL, with a dedicated lvgl-example (later cleaned up)

Color formats

  • New RBG565.h, plus additions to BGR565.h / RGB565.h

Other

  • TinyGPUGlobals.h significantly expanded (+116 lines)
  • New color-test example; test-compile example renamed/expanded from old test.ino
  • CMake build improvements across examples (CMakeLists.txt added to most example dirs, plus a top-level CMakeLists.txt)
  • General cleanup commits and TinyGPULoggerClass documentation
  • Desktop compilation support, UDP example fix
  • docs/palette.png removed

Summary

This release adds three major subsystems (touch/gestures, sprites, LVGL integration) plus a from-scratch SPI display driver layer and bitmap font rendering — a substantial feature release beyond v0.1.0.