Skip to content

feat: expose dizzy dithering in the service selectors - #88

Merged
g4bri3lDev merged 1 commit into
feat/clean-portfrom
feat/dizzy-dither
Jul 30, 2026
Merged

feat: expose dizzy dithering in the service selectors#88
g4bri3lDev merged 1 commit into
feat/clean-portfrom
feat/dizzy-dither

Conversation

@g4bri3lDev

Copy link
Copy Markdown
Member

Exposes DitherMode.DIZZY (epaper-dithering 6.0.0) in the HA UI.

py-opendisplay already passes it through: it re-exports DitherMode from epaper_dithering, and _str_to_int_enum builds the service validators from the enum, so "dizzy" was already accepted. It was just missing from the hand-maintained UI metadata, making it invisible in the service picker.

  • services.yaml: added to the upload_image and drawcustom option lists
  • strings.json: added the selector label
  • docs/drawcustom/supported_types.md: documented the value

Both selectors now match DitherMode element for element. Suite passes. Translations regenerate from strings.json via the translate workflow.

epaper-dithering 6.0.0 added DitherMode.DIZZY (value 9), error diffusion
with a pseudo-random traversal instead of a raster scan. py-opendisplay
re-exports DitherMode straight from epaper_dithering, and the service
schemas build their validators from the enum via _str_to_int_enum, so
"dizzy" was already accepted by upload_image and drawcustom. It was just
missing from the hand-maintained UI metadata, which made it invisible in
the Home Assistant service picker.

Add it to both select option lists in services.yaml, add the label to
strings.json, and document it in the drawcustom option table. Both
selectors now match DitherMode element for element in enum order.

Translations regenerate from strings.json via the translate workflow.
@g4bri3lDev
g4bri3lDev merged commit dd28b5a into feat/clean-port Jul 30, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant