41 Commits

Author SHA1 Message Date
antirez
77e94274ad Option dangerous_affirm_black added. 2024-03-23 23:06:16 +01:00
antirez
696ac7977c Improve test main inside the driver. 2024-03-20 15:33:05 +01:00
antirez
c36c2b77a1 Remove fade_out: risk of polarization due to biased LUT. 2024-03-20 15:17:27 +01:00
antirez
3a9842aae7 Minor fix to LUT change + improve LUT comments. 2024-03-20 12:09:51 +01:00
antirez
646374e080 LUT: use no-charge-neutral WB/BW at high speed. 2024-03-20 11:55:13 +01:00
antirez
0cad9e688d README: work in progress, yet a draft. 2024-03-20 10:20:12 +01:00
antirez
eac7fe3d1d Refactoring of greyscale rendering and init sequence. 2024-03-20 09:31:34 +01:00
antirez
a5607f0ef0 Non buffer-destructive greyscale rendering. 2024-03-19 22:51:26 +01:00
antirez
40840ab5bd Charge-neutral / simpler LUTs generation. 2024-03-19 17:04:28 +01:00
antirez
adcac002a4 Improve set_waveform_lut() comments. 2024-03-19 09:04:41 +01:00
antirez
ea99b655bd Improve periodic flickered refresh. 2024-03-18 23:14:43 +01:00
antirez
0e3fa48027 Remove reaffirming of past color: damages possible.
In old LUTs for WW and BB we used just to force the microcapsules
towards the position they should be. But this for some reasons stresses
the display: there will be some kind of semi-permanent polarization. So
now we keep WW/BB to ground, and from time to time do a full refresh
if we are using a no-flickering mode.
2024-03-18 22:55:26 +01:00
antirez
583b91a940 Do blocking updates by default.
If I understand correctly reading the very lacking data sheets available
around, the booster may remain turned ON after the display refresh if
not turned off manually via POF command. If that is true, it is safer as
a default update method to block and turn off the display: this may
improve both energy usage and display life.
2024-03-18 09:12:48 +01:00
antirez
45174c431e Improve border selection documentation/comment. 2024-03-17 22:12:23 +01:00
antirez
93665cd85f Use old buffer write for greyscale.
Previously we used the fact that an update will have the effect, at
the end, of copying the new bitmap to the old bitmap. The next update
would use old/new bits difference to understand if the change it's
WW, BB, WB, BW. However we can set the old framebuffer directly as
per datasheet. The previous system worked, but was kinda of a hack.
2024-03-17 22:06:07 +01:00
antirez
df6fcd0f87 Avoid border flickering. 2024-03-17 22:00:04 +01:00
antirez
3d6ed2f41a Fade out effect. 2024-03-17 20:08:40 +01:00
antirez
6b8f4218be Refactor image transfer out of update(). 2024-03-17 20:08:10 +01:00
antirez
79e1f9ac57 set_pixels_for_greyscale(): don't modify input buffer. 2024-03-16 23:26:53 +01:00
antirez
4bb166ea30 Improve comments here and there. 2024-03-16 23:22:53 +01:00
antirez
d61ae3d839 reset the two FBs in set_pixels_for_greyscale().
Also avoid reallocation of the second FB.
2024-03-16 23:22:32 +01:00
antirez
1d0ffa19ff Refactoring and minor fixes. 2024-03-16 23:01:43 +01:00
antirez
9ccb860a93 Use self.update() for the fake greyscale update. 2024-03-16 18:27:34 +01:00
antirez
978e344ce7 3x faster greyscale images using all 4 channels. 2024-03-16 17:32:12 +01:00
antirez
80a682aa08 Multiple resolutions + Viper grey scale speedup. 2024-03-16 11:50:16 +01:00
antirez
b25f52c527 Untested support for other resolutions. 2024-03-16 11:36:10 +01:00
antirez
4bcc3e4633 Better greyscale generation technique. 2024-03-16 09:51:56 +01:00
antirez
f1d9f11c99 Reduce VDH/VDL to 10v. Soft reset. More grey scales. 2024-03-16 09:27:21 +01:00
antirez
61a962f92b Greyscale images improvements. 2024-03-15 23:30:10 +01:00
antirez
6566e70eb3 Multiple-passes greyscale image rendering. 2024-03-15 22:26:31 +01:00
antirez
01b762907e Fast LUT computation improved. 2024-03-15 19:10:11 +01:00
antirez
34c4969169 Better handmade LUT. 2024-03-15 18:34:22 +01:00
antirez
5857a35724 Floating point speed. 2024-03-15 16:54:26 +01:00
antirez
94fa58f70b Temporary experimental hand-made fast LUT. 2024-03-15 16:28:58 +01:00
antirez
914a09a5f3 Debugging function that shows a LUT. 2024-03-15 16:03:45 +01:00
antirez
80cf658871 LUTs computed on the fly. 2024-03-15 14:36:12 +01:00
antirez
dfef74b765 Test of a no-flickering mode. 2024-03-15 10:30:12 +01:00
antirez
6c30f645fa ULTRA mode. 2024-03-15 00:17:30 +01:00
antirez
0aaf4c6bab Play with different LUTs for different refesh times. 2024-03-14 23:50:31 +01:00
antirez
6f5b01b6aa Document setup + blocking / non blocking mode. 2024-03-14 19:40:56 +01:00
antirez
f5c595a874 Badged 2040 UC8151 display driver: setup & refresh test. 2024-03-14 18:48:59 +01:00