63
63
)
64
64
65
65
_GRAYSCALE_LUT = (
66
- # Common voltage
67
- b"\x20 \x2a "
68
- b"\x00 \x0A \x00 \x00 \x00 \x01 "
69
- b"\x60 \x14 \x14 \x00 \x00 \x01 "
70
- b"\x00 \x14 \x00 \x00 \x00 \x01 "
71
- b"\x00 \x13 \x0A \x01 \x00 \x01 "
72
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
73
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
74
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
75
-
76
- # White to White
77
- b"\x21 \x2a "
78
- b"\x40 \x0A \x00 \x00 \x00 \x01 "
79
- b"\x90 \x14 \x14 \x00 \x00 \x01 "
80
- b"\x10 \x14 \x0A \x00 \x00 \x01 "
81
- b"\xA0 \x13 \x01 \x00 \x00 \x01 "
82
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
83
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
84
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
85
-
86
- # Black to White
87
- b"\x22 \x2a "
88
- b"\x40 \x0A \x00 \x00 \x00 \x01 "
89
- b"\x90 \x14 \x14 \x00 \x00 \x01 "
90
- b"\x00 \x14 \x0A \x00 \x00 \x01 "
91
- b"\x99 \x0C \x01 \x03 \x04 \x01 "
92
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
93
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
94
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
95
-
96
- # White to Black
97
- b"\x23 \x2a "
98
- b"\x40 \x0A \x00 \x00 \x00 \x01 "
99
- b"\x90 \x14 \x14 \x00 \x00 \x01 "
100
- b"\x00 \x14 \x0A \x00 \x00 \x01 "
101
- b"\x99 \x0B \x04 \x04 \x01 \x01 "
102
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
103
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
104
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
105
-
106
- # Black to Black
107
- b"\x24 \x2a "
108
- b"\x80 \x0A \x00 \x00 \x00 \x01 "
109
- b"\x90 \x14 \x14 \x00 \x00 \x01 "
110
- b"\x20 \x14 \x0A \x00 \x00 \x01 "
111
- b"\x50 \x13 \x01 \x00 \x00 \x01 "
112
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
113
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
114
- b"\x00 \x00 \x00 \x00 \x00 \x00 "
66
+ # Common voltage
67
+ b"\x20 \x2a "
68
+ b"\x00 \x0A \x00 \x00 \x00 \x01 "
69
+ b"\x60 \x14 \x14 \x00 \x00 \x01 "
70
+ b"\x00 \x14 \x00 \x00 \x00 \x01 "
71
+ b"\x00 \x13 \x0A \x01 \x00 \x01 "
72
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
73
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
74
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
75
+ # White to White
76
+ b"\x21 \x2a "
77
+ b"\x40 \x0A \x00 \x00 \x00 \x01 "
78
+ b"\x90 \x14 \x14 \x00 \x00 \x01 "
79
+ b"\x10 \x14 \x0A \x00 \x00 \x01 "
80
+ b"\xA0 \x13 \x01 \x00 \x00 \x01 "
81
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
82
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
83
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
84
+ # Black to White
85
+ b"\x22 \x2a "
86
+ b"\x40 \x0A \x00 \x00 \x00 \x01 "
87
+ b"\x90 \x14 \x14 \x00 \x00 \x01 "
88
+ b"\x00 \x14 \x0A \x00 \x00 \x01 "
89
+ b"\x99 \x0C \x01 \x03 \x04 \x01 "
90
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
91
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
92
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
93
+ # White to Black
94
+ b"\x23 \x2a "
95
+ b"\x40 \x0A \x00 \x00 \x00 \x01 "
96
+ b"\x90 \x14 \x14 \x00 \x00 \x01 "
97
+ b"\x00 \x14 \x0A \x00 \x00 \x01 "
98
+ b"\x99 \x0B \x04 \x04 \x01 \x01 "
99
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
100
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
101
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
102
+ # Black to Black
103
+ b"\x24 \x2a "
104
+ b"\x80 \x0A \x00 \x00 \x00 \x01 "
105
+ b"\x90 \x14 \x14 \x00 \x00 \x01 "
106
+ b"\x20 \x14 \x0A \x00 \x00 \x01 "
107
+ b"\x50 \x13 \x01 \x00 \x00 \x01 "
108
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
109
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
110
+ b"\x00 \x00 \x00 \x00 \x00 \x00 "
115
111
)
116
112
117
113
_STOP_SEQUENCE = (
@@ -144,8 +140,8 @@ class IL0373(displayio.EPaperDisplay):
144
140
def __init__ (self , bus , swap_rams = False , ** kwargs ):
145
141
if kwargs .get ("grayscale" , False ):
146
142
start_sequence = bytearray (len (_START_SEQUENCE ) + len (_GRAYSCALE_LUT ))
147
- start_sequence [:len (_START_SEQUENCE )] = _START_SEQUENCE
148
- start_sequence [len (_START_SEQUENCE ):] = _GRAYSCALE_LUT
143
+ start_sequence [: len (_START_SEQUENCE )] = _START_SEQUENCE
144
+ start_sequence [len (_START_SEQUENCE ) :] = _GRAYSCALE_LUT
149
145
else :
150
146
start_sequence = bytearray (_START_SEQUENCE )
151
147
@@ -167,21 +163,23 @@ def __init__(self, bus, swap_rams=False, **kwargs):
167
163
color_bits_inverted = kwargs .pop ("color_bits_inverted" , True )
168
164
black_bits_inverted = kwargs .pop ("black_bits_inverted" , False )
169
165
if "highlight_color" not in kwargs :
170
- start_sequence [17 ] |= 1 << 4 # Set BWR to only do black and white.
166
+ start_sequence [17 ] |= 1 << 4 # Set BWR to only do black and white.
171
167
if kwargs .get ("grayscale" , False ):
172
- start_sequence [17 ] |= 1 << 5 # Set REG_EN to use the LUT sequence from the registers.
173
- start_sequence [6 ] = 0x13 # Boost the voltage
174
- start_sequence [23 ] = 0x3C # PLL set to 50 Hz (M = 7, N = 4)
168
+ start_sequence [17 ] |= (
169
+ 1 << 5
170
+ ) # Set REG_EN to use the LUT sequence from the registers.
171
+ start_sequence [6 ] = 0x13 # Boost the voltage
172
+ start_sequence [23 ] = 0x3C # PLL set to 50 Hz (M = 7, N = 4)
175
173
176
174
# Set the resolution to scan
177
175
if width > 128 :
178
- start_sequence [17 ] |= 0b11 << 5 # 160x296
176
+ start_sequence [17 ] |= 0b11 << 5 # 160x296
179
177
elif height > 252 or width > 96 :
180
- start_sequence [17 ] |= 0b10 << 5 # 128x296
178
+ start_sequence [17 ] |= 0b10 << 5 # 128x296
181
179
elif height > 230 :
182
- start_sequence [17 ] |= 0b01 << 5 # 96x252
180
+ start_sequence [17 ] |= 0b01 << 5 # 96x252
183
181
else :
184
- pass # 0b00 is 96x230
182
+ pass # 0b00 is 96x230
185
183
186
184
super ().__init__ (
187
185
bus ,
0 commit comments