Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/rm-hull/luma.oled/llms.txt

Use this file to discover all available pages before exploring further.

This page lists every release of luma.oled in reverse chronological order, drawn directly from CHANGES.rst in the repository. The current version is 3.15.0.

v3.15.0

Released: 2026/03/05
  • Add support for 128×64 CH1115
  • Add support for SSD1305
  • Add support for SSD1315
  • Add support for SSD1316
  • Fix SH1106 display of a rotated image
  • Drop support for Python 3.8

v3.14.0

Released: 2024/10/26
  • Drop support for Python 3.7

v3.13.0

Released: 2023/08/12
  • Add support for 128×128 SH1107

v3.12.0

Released: 2023/03/19
  • Fix 96×16 OLED panel offset

v3.11.0

Released: 2023/01/26
  • Add support for SH1107 greyscale OLED

v3.10.0

Released: 2022/11/14
  • Fix SSD1322 NHD initialization and encode each pixel as 4-bit+4-bit identical nibbles

v3.9.0

Released: 2022/10/19
  • Use native namespace package configuration
  • Drop support for Python 3.6

v3.8.1

Released: 2020/11/15
  • Fix mutable default parameter bug when using multiple displays

v3.8.0

Released: 2020/11/06
  • Improved diff_to_previous framebuffer performance

v3.7.0

Released: 2020/10/25
  • Drop support for Python 3.5; only 3.6 or newer is supported
  • Add support for SSD1351 128×96 display
  • Pin luma.core to the 1.x.y line only, in anticipation of performance improvements in the upcoming major release

v3.6.0

Released: 2020/09/24
  • Add support for Winstar OLED displays

v3.5.0

Released: 2020/07/04
  • Drop support for Python 2.7; only 3.5 or newer is supported

v3.4.0

Released: 2020/01/19
  • Add support for SSD1362 256×64 greyscale OLED

v3.3.0

Released: 2019/06/19
  • Namespace fix

v3.2.1

Released: 2019/04/30
  • Fix bug where SSD1325 framebuffer=diff_to_prev didn’t set column address properly, resulting in garbled output

v3.2.0

Released: 2019/04/17
  • Add support for 128×64 OLED (Newhaven SSD1322_NHD)

v3.1.1

Released: 2019/03/30
  • Fix bug where SSD1327 framebuffer=diff_to_prev didn’t set column address properly, resulting in garbled output
  • Minor API documentation improvements

v3.1.0

Released: 2018/12/21
  • Add support for 128×64 monochrome OLED (SSD1309)

v3.0.1

Released: 2018/12/21
  • Fix bug where SSD1325/1327 didn’t handle framebuffer properly

v3.0.0

Released: 2018/12/02
Breaking change: Fix SSD1351 init sequence that didn’t set RGB/BGR color order properly. Users of this device should verify proper color rendering and add bgr=True if blue and red color components appear reversed.
  • Device consolidation — greyscale and color SSD13xx devices now share common base classes

v2.5.1

Released: 2018/09/14
  • Fix bug where SSD1331/1351 didn’t render green accurately

v2.5.0

Released: 2018/09/07
  • Add support for 128×128 monochrome OLED (SH1106) (by @Gadgetoid)
  • Dependency and documentation updates
  • Minor packaging changes

v2.4.1

Released: 2018/05/28
  • Fix bug where SSD1327 init sequence exceeds serial command size

v2.4.0

Released: 2018/04/18
  • Support for 128×128 4-bit OLED (SSD1327)

v2.3.2

Released: 2018/03/03
  • Support for 96×96 color OLED (SSD1351)

v2.3.1

Released: 2017/11/23
  • Changed version number to inside luma/oled/__init__.py

v2.3.0

Released: 2017/10/30
  • Support for 128×128 color OLED (SSD1351)

v2.2.12

Released: 2017/10/18
  • Explicitly state UTF-8 encoding in setup when reading files

v2.2.11

Released: 2017/09/19
  • Update dependencies
  • Additional troubleshooting documentation

v2.2.10

Released: 2017/05/01
  • Add support for 128×32 mode for SH1106

v2.2.9

Released: 2017/04/22
  • luma.core 0.9.0 or newer is required
  • Documentation amendments

v2.2.8

Released: 2017/04/13
  • SSD1331 and SSD1322 framebuffer and API docstrings

v2.2.7

Released: 2017/04/12
  • Add support for 64×32 SSD1306 OLED

v2.2.6

Released: 2017/03/30
  • Add support for 64×48 SSD1306 OLED

v2.2.5

Released: 2017/03/02
  • Restrict exported Python symbols from luma.oled.device

v2.2.4

Released: 2017/02/17
  • Tweaked SSD1325 init settings and replaced constants
  • Update dependencies

v2.2.3

Released: 2017/02/14
  • Monochrome rendering on SSD1322 and SSD1325

v2.2.2

Released: 2017/02/02
  • SSD1325 performance improvements (perfloop: 25.50 → 34.31 FPS)
  • SSD1331 performance improvements (perfloop: 34.64 → 51.89 FPS)

v2.2.1

Released: 2017/01/29
  • Support for 256×64 4-bit greyscale OLED (SSD1322)
  • Improved API documentation (shows inherited members)

v2.1.0

Released: 2017/01/22
  • Simplify and optimize SSD1306 display logic

v2.0.1

Released: 2017/01/15
  • Moved examples to separate git repo
  • Add notes about breaking changes

v2.0.0

Released: 2017/01/11
Breaking change: Package renamed to luma.oled. See the upgrade guide for migration instructions.
  • Package rename to luma.oled

v1.5.0

Released: 2017/01/09
  • Performance improvements for SH1106 driver (2× frame rate)
  • Support for 4-bit greyscale OLED (SSD1325)
  • Landscape/portrait orientation with rotate=N parameter

v1.4.0

Released: 2016/12/23
  • Add savepoint/restore functionality
  • Add terminal functionality
  • Canvas image dithering
  • Additional and improved examples
  • Load config settings from file (for examples)
  • Universal wheel distribution
  • Improved and simplified error reporting
  • Documentation updates

v1.3.1

Released: 2016/12/11
  • Add ability to adjust brightness of screen
  • Fix for wrong value NORMALDISPLAY for SSD1331 device

v1.3.0

Released: 2016/12/11
  • Support for 16-bit color OLED (SSD1331)
  • Viewport/scrolling support
  • Remove pygame as an install dependency in setup
  • Ensure SH1106 device collapses color images to monochrome
  • Fix for emulated devices: do not need cleanup
  • Fix to allow gifanim emulator to process 1-bit images
  • Establish a single threadpool for all virtual viewports
  • Fix issue preventing multiple threads from running concurrently
  • Documentation updates

v1.2.0

Released: 2016/12/08
  • Add support for 128×32 and 96×16 OLED screens (SSD1306 chipset only)
  • Fix boundary condition error when supplying max-frames to gifanim
  • Bit pattern calculation rework when converting color to monochrome
  • Approximately 20% performance improvement in display method

v1.1.0

Released: 2016/12/05
  • Add animated-GIF emulator
  • Add color-mode flag to emulator
  • Fix regression in SPI interface
  • Rename emulator transform option scale to identity

v1.0.0

Released: 2016/12/03
  • Add HQX scaling to capture and pygame emulators
  • SPI support (Note: contains breaking changes)
  • Improve benchmarking examples
  • Fix resource leakage and noops on emulated devices
  • Additional tests

v0.3.5

Released: 2016/11/30
  • Pygame-based device emulator and screen capture device emulator
  • Add bouncing balls demo, clock, and Space Invaders examples
  • Auto cleanup on exit
  • Add bounding_box attribute to devices
  • Demote buffer and pages attributes to internal use only
  • Replaced SH1106 data sheet with version that is not preliminary
  • Add font attribution
  • Tests for SSD1306 and SH1106 devices
  • Add code coverage and upload to coveralls.io
  • flake8 code compliance
  • Documentation updates

v0.3.4

Released: 2016/11/15
  • Performance improvements — render speeds approximately 2× faster
  • Documentation updates

v0.3.3

Released: 2016/11/15
  • Add PyPI badge
  • Use smbus2

v0.3.2

Released: 2016/11/13
  • Fix bug in maze example (integer division on Python 3)
  • Use latest pip
  • Add tox and Travis config (with badge)
  • Add RTFD config
  • Documentation updates

v0.3.1

Released: 2016/11/13
  • Adjust requirements (remove smbus)
  • Default RTFD theme
  • Documentation updates

v0.3.0

Released: 2016/11/13
  • Allow SMBus implementation to be supplied
  • Add show, hide, and clear methods
  • Catch and rethrow IOError exceptions
  • Fix error in hello world example
  • Clean up imports
  • Allow setting width and height
  • Documentation updates

v0.2.0

Released: 2016/09/06
  • Add Python 3 support
  • Add options to demos
  • Micro-optimizations
  • Remove unused optional argument
  • Fix bug in rendering image data
  • Added more examples
  • Add setup file
  • Support SH1106
  • Documentation updates

Build docs developers (and LLMs) love