The Modos Paper Monitor
modos.tech
modos.tech
To set a pixel to anything other than white or black requires a distracting and time consuming pattern of white and black flashes.
But... There exists multiple different patterns of flashes that end up with the same grey scale shade. So the logical solution seems to therefore be for neighbouring pixels to use different flash patterns such that when viewed from a distance the flashes are hidden - ie. At any point in time while the flash pattern is occurring, the average color of an area is the the target colour, even if each individual pixel isn't that shade.
Obviously in eink, pixels disrupt neighbouring pixels, and the target colour of a pixel may change during the flashing pattern. You therefore will be requiring a very complex model/optimizer to figure out how to transition every pixel from its current state towards its destination color while maintaining dithered-flicker.
Seems like a good target for a tiny per-pixel ML model - put as input a state vector representing the current visible and hidden state of the pixel and a few neighbours, together with the target color, and have the ML model output the next signal to output to the screen and the new hidden state. This could be trained with a screen in the lab with a camera pointed at it outputting random patterns for a few days. You could also have as input to the ML model the temperature and per-screen and per-pixel calibration vectors to deal with process variation, and maybe an encoding for the age of the screen if wear starts to occur. Training should be pretty quick, because on a 1 million pixel screen, every frame is a million training data points. The execution of the ML model would run great on a modest GPU in real-time as a shader - it's the perfect fit for that.
It seems this solution covers all the usecases people are wanting... Fast updates for things like mice, fast motion for films, quick updates for typing, high quality for static images, anti aliasing for static text, no blurring for moving things, etc.
However, somehow they're so closely guarded, and even if you have top of the line e-ink reader, it might not come with a license for a nice Wave Function which refreshes your display very nicely. For example, one of the most attractive features of Kindles is they use the best Wave Functions available for their displays (they may even licensed it exclusively) which refreshes the screens instantly and smoothly. My Kobo, while using the same screen, has more clunky refreshing modes built in.
Moreover, it seems, not all methods are provided on every CPU architecture, and you can't see the code of these things.
Lastly, these methods are probably improved upon and re-patented to keep the barrier for entry pretty high. New screens are definitely developed with more features, and they need new Wave Functions to work as expected.
I've never heard of "wave functions" in the context of electrophoretic displays nor have I ever seen a widely used commercial e-ink controller implement a software update method. Do you mean waveform table? All of them that I've seen in commercial use rely on hardware updates to perform the waveform table processing. Eg: here's the software used to setup the hardware used on most ebook readers: https://github.com/UDOOboard/Kernel_Unico/blob/master/driver...
Could you share some citations or links to what specific thing you're referring to?
Please clarify what dev kits you are referring to. What do you mean state-of-the-art?
State of the art (at least a two years ago): Dasung Paperlike HD-F and reMarkable 2.
You'll not get the performance the those two with a dev kit like the one I linked.
Disclaimer: owns too many eInk devices (including Dasung Paperlike HD-F and the truly reMarkable 2), but haven't implemented any of this myself.
Are you saying the ICE driving board hardcodes waveforms? Where do you see that stated?
It seems you think I'm wrong, great! Please share how and why.
In short, the controller you are referring to as defines what you can send to the screen and what not, in other words, it gives you a capability ceiling, but the capability is not inside the controller. In your words, it defines the capability maximum for "waveform table processing".
On the other hand, the controllers you have are sitting ducks without these waveforms (which my mind conventionally renamed them to wave functions, well because they're waves, and they're defined as functions, and my brain is all hazy because everything I read, sorry about that).
These waveforms allows us to reach from a state to a state, generally in page scope, so you generally refresh the page completely. I understand that partial refreshes are also possible, but I don't know how they're implemented, exactly. My Kobo does it rather elegantly, but it might be pushing whole-screen updates too. Anyways.
[0] contains a PDF file which details how to process a waveform table, probably sold as a part of a screen by Waveshare. It details how to interpret the file, and how to make use of the data in the flash file, and drive the screen in most efficient/correct manner. It details gray levels, some special functions for maximizing blackness, etc.
[1] contains the article which brought me to the entrance of the rabbit hole. They give the basic details how they're software defined and controller can use many available waveforms, and you need to license them separately from the controller itself.
[2] is a product page for an eInk display, and it briefly mentions that the image quality you can get it both dependent on the controller and the waveform file you gonna get.
At the end of the day, yes you gonna need a panel controller to talk to your display properly, but what you can do and can't do with it is codified inside the waveform file you get with your device, and it's decoupled from the controller itself.
I guess it's possible that the controller you have can be too primitive to interpret or execute the waveform you have at hand, but vice versa is possible. i.e. your waveform is more primitive than the controller's capability ceiling, and despite having the best controller, you can't get most of the both your controller and your screen.
As a last note, [3] contains a reverse engineering effort and project for these waveforms, which I was not aware of before.
[0]: https://www.waveshare.net/w/upload/c/c4/E-paper-mode-declara...
[1]: https://goodereader.com/blog/e-paper/e-ink-waveforms-are-a-c...
[2]: https://www.eink.com/product.html?type=productdetail&id=1
[3]: https://hackaday.io/project/21168-fpga-eink-controller/log/5...
I work in the display industry. I've never heard anything like what you describe, except on HN comments and blogs that use HN comments as citations. Look at my comment history. I think your claim is false because everytime I've challenged a claim like yours the poster has never been able to substantiate it, but I keep an open mind, if you can provide some real citations backing your claim then I'm happy to be corrected.
There are lots of patents on electrophoretic displays.[1] And unlike some other industries, these patents are actually used in lawsuits by some players [2]. And anonymous insiders suggest that litigation and threats of litigation, together with enforced secrecy agreements really shape the industry [3].
[1]: https://scholar.google.com/scholar?q=electrophoretic+display...
[2]: https://www.bloomberg.com/press-releases/2017-12-20/e-ink-su...
Both Dasung and Onyx have been able to bring e-ink monitors using their technologies to market so if there's a significant barrier, it's not apparent.
There are lots of patents on software.
Could you explain your point in greater detail?
> And unlike some other industries, these patents are actually used in lawsuits by some players
I'm not able to follow. I work in the display industry. What lawsuits are you referencing? What players? How is it any different than the software industry? Anonymous insiders? You mean one HN post that appears nonsensical to a display industry insider who commented on that post and said it sounds like sour grapes from a guy who bought a few displays from Samsung LCD and expects Samsung to give him commercial pricing terms and special support and handholding for his startup?
In Normal/Regal mode, yes, there's a flash as a page is refreshed. This mode should be used only for applications which use page-based (rather than scroll-based) navigation, and which don't have animated elements.
"Speed mode" works exceptionally well for virtually anything else --- most web browsers and even some video, as well as Termux (a terminal-based Linux environment for Android).
The higher-speed modes offer even better refresh rates. The image quality loss / ghosting is only very slightly higher for A2 mode, though for X-Mode it's quite noticeable. The latter is really only for video viewing, or perhaps gaming if that's your thing. Neither of those are uses well-suited to E-ink.
For general reading (PDFs, EPubs, etc.), podcasting (AntennaPod), or web browsing (EinkBro, which is truly awesome, or FennicFox), I prefer e-ink to OLED tablets.
Meanwhile, https://www.youtube.com/watch?v=G2mP23IvraI&t=30s
https://www.makeuseof.com/tag/dont-buy-e-reader-upcoming-tec...
I can't find any official data (as usual with eink) but I have heard that an eink pixel's lifetime is around 10 million pixel transitions. Not sure where that number comes from or how accurate it is and how it varies from one display to the next. But if true, you'd get only a couple days with this kind of usage.
Anyone know any more on this?
Maybe this is good enough? I experimented with an AMOLED tablet displaying inverted PDFs and it felt similar to a Kindle. However, this was my completely subjective perception. It could be that in the long run, it is tiring for the eyes as well. IMHO, the worst part about displays is staring at a bright LED backlight all day long. Screens such as Dell UltraSharp, which are able to dim the backlight a lot and do not flicker feel much better.
Nothing can replace the dynamics of an e-ink display as of today.
This screen is used in Panic's Playdate game console as well as the Pebble smartwatch.
https://sharpdevices.com/memory-lcd/#1615975689583-4d044034-...
I will wait until I can buy one for < EUR 200.
I dont need wifi, "smart", or "cloud" features in it. Just the ability to push images into it statically.
https://www.waveshare.com/product/displays/e-paper/epaper-1/...
https://www.waveshare.com/product/displays/e-paper/epaper-1/...
It would be like if we invented sofas before chairs and so every office worker needs to awkwardly work on a sofa instead if sitting on a nice Herman Miller
And how does E-Ink fit into this idea?
* Seed signed distance function with -1 in all pixels that changed, +1 in static pixels
* Use a fast marching method to re-initialize a narrow-band signed distance function
* Compute gradient of signed distance to get a vector field
* Multiply error to be diffused by a sigmoid function of signed distance
* Diffuse error in the direction of the vector field
Also, I've found in my own toying around that introducing a bit of randomness in the error diffusion matrix of traditional dithering methods gives much more pleasing results.It's about how to perform realtime dithering of a 3D scene such that the amount of annoyance you describe is minimized
It's a different technique though, using a dither pattern gives a very different look from error diffusion (which IMO looks more natural). But in the example you posted, the pattern is a nice stylistic effect.
I might actually have to try and code up what I outlined above to see if it works.
https://en.wikipedia.org/wiki/Dither#Digital_photography_and...
That “per-pixel update mode settings” sounds very useful for things like interactive books, where the static text could be anti-aliased with grayscale, and moving pictures (physics animation, mathematical graphs, etc.) would be 1-bit monochrome and react smoothly to adjustments.
They show something in this direction in their second video, embedded further down in the linked page, where letters being typed are first rendered immediately in 1-bit mode, then after a delay smoothed out.
0: https://cloudconfusing.com/2020/02/07/e-ink-monitors-ready-f...
During the aughts, I got used to saying "Linux is not Windows" --- if you're looking for a Microsoft experience on a Free Software operating system ... you're liable to be disappointed.
If you accept the strengths, and weaknesses, of a platform, you're going to be far happier.
The first computers I used didn't have e-ink displays. They had ink displays. Teletype access to an early Unix system, mostly offering BSD games. No, I didn't do Real Work on those systems....
But I was doing real work on glass-tty VT-200 Wyse terminals about a decade later, also on campus-wide Unix servers. (Benefit: walk into any terminal room, log on, and all my work was Just There.)
As I've noted for a while, E-Ink has features which differ from emissive (OLED / LCD) displays:
- Persistence is free. Once the display is set, it does not change, even with power shut off.
- Pixels are cheap. Current displays tend around 220--300 DPI. That's the effective resolution of most laserprinters (given toner drift and paper coarseness).
- Refreshes are ... slowish. Not seconds, but 4-10 Hz is a typically upper end, rather than 60--120 FPS of an emissive display. Higher-quality refreshes may be slower.
- Colors are nonexistent to few. My monochrome display offers 16 greyscale shades, though with dithering and/or halftoning, that increases. Photographs appear slightly posterised without those. Colour displays exist, though they're limited in size/format, muted in saturation, slower than B&W e-ink, and carry a price premium.
- Paginated navigation is strongly preferred to scrolling. A single whole-screen flush is much better than scrolling a pixel at a time. This is where EInkBro really shines over conventional tablet browsers, in that it supports paginated navigation through a web page.
- Displays are reflective rather than emissive. The brighter the ambient light, the easier the display is to read, with direct sunlight being the optimum. I suspect colour displays will also reflect a mix of ink-vs-light colour design / mixing.
Ultimately, e-ink applications and platforms should play to the medium's strengths. E-Ink does fixed text and graphics exceptionally well. Operating systems, graphical shells, and controls which reflect this should do well. Those that fight these characteristics will deliver disappointing experiences.
It's that e-ink is a viable display, but that it provides a different set of capabilities which must be recognised in the tools (applications, interfaces) which are used on it. Some of those already exist, others might have to be developed or tweaked. And platforms in which the display endpoint is not predefined (e.g., Web content), consideration of e-ink and other alternative display formats and factors will have to be increasingly considered either be designers or by application developers. Again, EinkBro is an examplar of the latter: an e-ink optimised Web browser with a specific design philosophy informed by the characteristics of e-ink displays. (I've had numerous exchanges with the developer, Daniel Kao, and he gets it.)
https://github.com/plateaukao/browser
Text- and static-graphic-centric presentation works well. High-colour and dynamic displays don't. A large set of traditional text-mode tools (e.g., traditional Unix/Linux userland, and tools inspired by these) work quite well, as do many graphical presentations so long as they respect the properties of the display.
I've reflected a fair bit on the MOAD (mother of all demonstrations), now 54 years in our past. MOAD was based on the principles of high-framerate emissive displays, and virtually all elements shown in the demonstration remain the core elements of present-generation graphical displays, despite the migration from CRT to LED to OLED/Plasma displays. All effectively are emissive and low-latency.
Another alternative would be to adopt different display options. LCD (or transflective LCD) is one option; these work fundamentally by light polarisation, which means that they halve whatever ambient or backlight intensity is provided, greatly reducing apparent contrast.
What might be interesting would be a materials advance in which substances or fluid cells transition between primary colour states, giving the ability to directly create static pixels of a given colour, under some influence --- electric or magnetic influence, perhaps some induced pH state change. If that's a durable shift (e.g., there's a stable state that isn't changed until a new stimulus is applied), then we'd have a new display technology. That might even give a true ink-mixing behaviour, if, say, a given fluid cell or particle fibre might include multiple colour elements which would mix as paint or ink pigments do. Any material scientists know of materials which transition between white and CMYK spectra?
Advantages of E-Ink include not only power but readability in high-ambient light situations, or under normal room lighting rather than requiring an independently illuminated display as with LCD screens.
Depending on how displays are specifically addressed, the possibility of arbitrarily large displays at lower costs might also exist. That ... would be interesting. I have the usual present fear: that these would be appropriated principally for advertising and propaganda on wall- or building-sized form factors.
Right now, I only know of one commercial product [1] currently being made that is taking advantage of this untapped market.
[0] https://en.m.wikipedia.org/wiki/Transflective_liquid-crystal...
[1] https://www.sunvisiondisplay.com/product/SVD-32-Color-RLCD-C...
If not, then they don't need to.
I feel uncomfortable reading from a high quality OLED (iPhone X) or IPS panel (Apple MacBook Pro displays and an HP EliteDisplay) after reading for an hour or so, but when I open my Kobo Glo HD, I can read for hours without eye strain or feeling uncomfortable, even with front light. It just feels natural and doesn't make my eyes dry, forehead stiff or feeling exhausted. This is a study I'm conducting myself for 5+ years. So, it's enough of a data for me.
If you're not using displays all day long, you might not be straining your eyes much, and may not be feeling it, too. Try using some artificial teardrops (without any additives, preservatives or active ingredients). If you feel relieved after using them, you're simply unaware of being uncomfortable, then.
Samsung's "The Frame" televisions get close to this, as do some smarthome hubs and smart picture frames, but I've never seen an equivalent standalone desktop monitor with these features.
This may be a bit insane, but E-Ink displays feel less "artificial" to me, more "rooted in the real world", even if the content is exactly the same.
E-Ink with lightly amber front lighting is super cozy, IMO. I tried using IPS displays with a similar, very warm colour temperature - it just looks wrong and I get a headache.
I thought it may be caused by the "E-Ink = reading, LCD/IPS = Work" connection, but the cozy feeling is also there when using E-Ink as a terminal.
It's strange, IDK :D
In addition to that, the experience for reading while travelling is far superior simply due to the battery life.
E-readers to me are a good example of the Unix philosophy applied to hardware. Do one thing, and do them well.
Though in my own case, I have no use for a powerful tablet computer. Reading is literally my only use for the form factors. For someone who does need a "real" tablet, a separate e-reader might not be worth the investment.
Reading fiction on a 300+dpi OLED set to white on black is absolutely wonderful for me, and I can do it for several hours in a row, provided that the ambient illumination is not full sunlight.
Reading fiction on a 180ish dpi E-ink screen is fine but a little aggravating because changing to the next page takes so long. Not-very-black on light grey is not my favorite color scheme.
The screen (Kobo Glo HD) I'm using is probably one generation behind of current screens. It's on par with paperwhite 2 or 3 IIRC.
I can just zone-out and read for hours without noticing any lag, distracting refreshes (my Kobo does full/reversing refresh every 5 or so changes), and I prefer to any screen I've experienced until now, which were not low end, low-dpi screens of any kind.
Moreover, I'm very rarely buying paper books now. If I can find the title electronically, I just purchase it from the Kobo store.
I use both a Digital Paper tablet and Mira monitor and suspect that many in the eink cabal would happily give market share to a product that serves both purposes.
Most photography would benefit by being run through a halftone filter. That's default in "Regal" mode, though "Normal" (highest-quality) mode doesn't do this, and the result is a somewhat posterised image (16-shade greyscale on my Onyx BOOX Max Lumi). Dithering would be another option, and might work.
Onyx's most recent image update (as of a couple of days ago) has some improvements in image display which apply to its book reader (NeoReader), and seem to be an improvement.
Video should be presented at A2 or X mode. Though quite honestly, animation and e-ink are usually a mistake. As jarring and distracting as animation is on an emissive screen, it's pure anger-fuel on E-ink.
Finally a use for the ex mode of Vim or whatever it’s called.