Skip to content

Hard-coded gamma-correction, maybe add option? (patterns not written correctly on _old_ blink1) #10

Open
@cvdwl

Description

I have a couple of old blink1s I bought, possibly first batch out of beta. Using either the CLI or the python library, I get an issue where writing a pattern doesn't work.

  1. Buffers 12-15 map to 0 (ok, I guess the pattern memory is only 12 deep).
  2. written color values do not correspond to those read. Looks like it's a parabolic transform.

Not really a show-stopper, mostly just curious.

In [65]: for i in range(0,15):
    ...:     b.write_pattern_line(i*50,(i,i*10,i*15),i)
    ...:     print((i,i*10,j+i*15,i*50))
    ...:           
(0, 0, 0, 0)
(1, 10, 15, 50)
(2, 20, 30, 100)
(3, 30, 45, 150)
(4, 40, 60, 200)
(5, 50, 75, 250)
(6, 60, 90, 300)
(7, 70, 105, 350)
(8, 80, 120, 400)
(9, 90, 135, 450)
(10, 100, 150, 500)
(11, 110, 165, 550)
(12, 120, 180, 600)
(13, 130, 195, 650)
(14, 140, 210, 700)
(15, 150, 225, 750)

In [66]: b.read_pattern()
Out[66]: 
[(1, 88, 199, 750),
 (0, 0, 1, 50),
 (0, 2, 4, 100),
 (0, 4, 8, 150),
 (0, 6, 14, 200),
 (0, 10, 22, 250),
 (0, 14, 32, 300),
 (0, 19, 43, 350),
 (0, 25, 56, 400),
 (0, 32, 71, 450),
 (0, 39, 88, 500),
 (0, 47, 107, 550),
 (1, 88, 199, 750),
 (1, 88, 199, 750),
 (1, 88, 199, 750),
 (1, 88, 199, 750)]

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions