Clever E-Ink Driver Does 32 Levels Of Grey, Avoids Update Flicker, And More

There’s a lot to like about E-Ink displays, and you might be about to like them even more with [antirez]’s MicroPython driver for the Badger 2040 (or any display based on the UC8151 / IL0373) because it brings all kinds of useful features to your next project.

E-Ink displays are great. They are high contrast, daylight-readable, and require zero power to maintain a displayed image. But a few things come with the territory: displays have slow refresh rates compared to other display types, expect flickering during screen changes, and the displays are monochrome. [Antirez]’s new driver not only provides a MicroPython interface but goes in some fantastic directions that challenge those usual drawbacks.

Probably the most striking is the ability to display greyscale images without relying on dithering, which means the results avoid the charmingly gritty look of old-school dithering. Dithering has its place, but it’s not always the best choice, so options are great.

Similarly, display flicker may be a small price to pay for some, but if the obvious flicker is too boorish and crude-looking one can use an anti-flicker refresh mode that greatly limits flickering at the cost of update speed. Over time some image ghosting will accumulate which necessitates an occasional whole-screen refresh, but the effect is overall much nicer when updating something like a clock face.

How is this all done? It turns out that the controller chips for these displays are highly configurable, and it’s possible to do much more than simply drive the display in known-good and completely approved modes. It’s also entirely possible to permanently damage one’s display by doing so. Part of what makes [antirez]’s work so appealing is that he has already done the work finding workable configurations.

His driver is designed using computed LUTs (look-up tables) that make using and exploring alternative refresh modes easy and efficient, invaluable for exploring the capabilities of a patented, poorly documented technology like E-Paper displays.

We’ve seen the Badger 2040 E-Ink display in a teapot timer and a custom macropad, and [antirez]’s uc8151_micropython project is a fantastic step forward. And don’t miss another of [antirez]’s clever microcontroller hacks: playing audio without a DAC.

UV Photographic Printer Lets You Use Strange Chemistries

There is a family of old photographic chemistries based on iron compounds which, like the blueprint, are exposed using UV light. Ironically, the digital camera revolution which has made everything else in our photographic lives much easier, has made it harder to experiment around with these alternative methods. [David Brown] is making a UV photographic printer to change that.

[David]’s application has a lot in common with PCB printers that use a UV-sensitive resist, only [David] needs greyscale, and it might also be nice if it could work with wet paper. This makes it a more challenging project than you might think, but we like the cut of [David]’s jib.

Like some of the other UV exposer projects, [David]’s uses a rotating mirror to scan across the to-be photograph’s surface. Unlike the other ones that we’ve seen, the exposer hangs from two linear rails. Other printers move the paper underneath a stationary scanning head, which seems a mechanically simpler arrangement. We’re excited to see how this goes.

There’s a lot of interest in UV PCB printers right now. We’ve seen one made from junked CD-ROM drives on one end of the spectrum to one made by retrofitting a delta robot on the other. And don’t disregard the work done by folks interested in UV-curing 3D printers, either.