5.9.0 (2026-04-02)
- add GRAYSCALE_16 (4bpp) encoding support (9b5983b)
5.8.2 (2026-04-02)
- bump epaper-dithering version to support GRAYSCALE_8 and GRAYSCALE_16 (eb80b94)
5.8.1 (2026-04-02)
- add refresh display state (947686e)
- apply device config rotation additively during image upload (6c1363f)
- fix encryption (fd2ed20)
- progress bar starts at left edge (d580f17)
- show rotation degrees correctly (1f67c5b)
5.8.0 (2026-04-01)
- add cli (5178320)
- add default file path to export-config cli command (e1d52ca)
- protocol 1.2 support (866bfce)
5.7.0 (2026-03-24)
5.6.0 (2026-03-24)
- add python 14 to supported versions (2d97f2f)
- respect device supports_zip when choosing upload protocol (5320a5a)
5.5.0 (2026-03-07)
- add py.typed marker and fix strict mypy errors (959176b)
- add py.typed marker and fix strict mypy errors and add prek (c1cf3b4)
5.4.0 (2026-03-06)
- add voltage_to_percent function (fd93f82)
5.3.0 (2026-03-06)
- models: update config models for firmware spec v1.1 (5bfccea)
5.2.0 (2026-03-06)
- Add calibration preset for panel_ic_type 55 (2852550)
- Add is_flex property to OpenDisplayDevice (031a778)
5.1.0 (2026-02-18)
- add way of calling prepare_image() without async context (da53f7e)
5.0.0 (2026-02-15)
- change upload rotation semantics to be clockwise
- change upload rotation semantics to be clockwise (d350f02)
4.4.0 (2026-02-15)
- upload: add enum-based per-image rotation before fit in pipeline (38a06bc)
4.3.0 (2026-02-14)
- advertisements: add v1 button tracker (386b67a)
- config: expose binary input button_data_byte_index and align 0x25 layout (5981cfd)
- config: support wifi_config packet (0x26) (8de1e96)
- protocol: add typed LED activate API and handle legacy wifi config packet (ed9676a)
- protocol: support firmware v1 config/advertisement updates (9e929ed)
4.2.0 (2026-02-14)
- return processed preview image from upload_image (54d6ddc)
4.1.0 (2026-02-13)
- require at least one display in config parse and JSON import (758d7a6)
- resolve display color scheme enum using from_value (a2931db)
4.0.0 (2026-02-13)
- make core config packets non-optional across models and serialization
- add typed board type mappings and lookup helpers (2731ee1)
- enforce required config packets for parse and write (6f2d59d)
- make core config packets non-optional across models and serialization (3749da6)
3.2.0 (2026-02-13)
- add display diagonal inches computed property (538a604)
3.1.0 (2026-02-13)
- add typed board manufacturer API and docs (a79eb8d)
3.0.0 (2026-02-11)
- add FitMode image fitting strategies (contain, cover, crop, stretch)
- add FitMode image fitting strategies (contain, cover, crop, stretch) (786c614)
2.5.1 (2026-02-11)
- bump epaper-dithering version (2dfd846)
2.5.0 (2026-02-11)
- bump epaper-dithering version and expose tone compression option (c7d3dd1)
2.4.0 (2026-02-09)
- bump epaper-dithering version to 0.5.1 (9ff01ba)
2.3.0 (2026-02-04)
- epaper-dithering: bump version for corrected palette (2a2d5ff)
2.2.0 (2026-02-03)
- palettes: add automatic measured palette selection (ae35b26)
2.1.0 (2026-01-12)
- add device reboot command (0x000F) (147371d)
- config: add device configuration writing with JSON import/export (4665d98)
2.0.0 (2026-01-11)
- Dithering functionality moved to standalone epaper-dithering package
- extract dithering to epaper-dithering package (95aa3c1)
1.0.0 (2026-01-09)
- connection: Removed get_device_lock from public API. The global per-device lock mechanism has been removed in favor of simpler single-instance usage pattern.
- connection: integrate bleak-retry-connector for reliable connections (088c187)
0.3.0 (2025-12-30)
- add sha to firmware version parsing (a47d58e)
- add git commit SHA documentation (0e2ef50)
0.2.1 (2025-12-30)
- correct advertisement data (ec152ba)
- improve README.md (e90a612)
0.2.0 (2025-12-29)
- add more dithering algorithms (1b2fc6a)
0.1.1 (2025-12-29)
- add conftest (673db99)
- add discovery function (2760ef9)
- Initial release of py-opendisplay
- BLE device discovery with
discover_devices()function - Connect by device name or MAC address
- Automatic image upload with compression support
- Device interrogation and capability detection
- Image resize warnings for automatic resizing
- Support for multiple color schemes (BW, BWR, BWY, BWRY, BWGBRY, GRAYSCALE_4)
- Firmware version reading
- TLV config parsing for OpenDisplay protocol
- Quick start guide with examples
- API documentation
- Image resizing behavior documentation