Skip to content

Saturated Palette in InkyMockImpression not reachable #196

@PALcod3

Description

@PALcod3
File "/home/user/PycharmProjects/inky_weatherstation/.venv/lib/python3.12/site-packages/inky/mock.py", line 262, in set_image
  palette = inky_uc8159.Inky._palette_blend(self, saturation)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/PycharmProjects/inky_weatherstation/.venv/lib/python3.12/site-packages/inky/inky_uc8159.py", line 196, in _palette_blend
  rs, gs, bs = [c * saturation for c in self.SATURATED_PALETTE[i]]
                                        ^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'InkyMockImpression' object has no attribute 'SATURATED_PALETTE'

When I try to mock the 7 color e-ink display it does not work because ot the missing SATURATED_PALETTE.
As a quick workaround I add the following from inky:uc8159.py into the InkyMockImpression class from mock.py:

SATURATED_PALETTE = [
        [57, 48, 57],
        [255, 255, 255],
        [58, 91, 70],
        [61, 59, 94],
        [156, 72, 75],
        [208, 190, 71],
        [177, 106, 73],
        [255, 255, 255]]

There must be a better way because inky_uc8159.py already contains the SATURATED_PALETTE two(!) times.

I got inky 1.5.0 installed on my IDE.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions