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.
I don't know how current your experience is, but on a year-old Onyx BOOX, I'm generally not seeing the flicker issue you're describing provided display mode is appropriate to application context.
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.
Alas, I would love to implement this, but the world of eink is filled with patents and lawsuits, and I think that if I implemented this and it worked well I could never sell it. Even if I gave it away for free, I'd probably have lawyers banging on my door wanting to take away my home.
> but the world of eink is filled with patents and lawsuits, and I think that if I implemented this and it worked well I could never sell it. Even if I gave it away for free, I'd probably have lawyers banging on my door wanting to take away my home.
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].
> There are lots of patents on electrophoretic displays.
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?
A link to a single patent lawsuit and a link to an old HN post from a brand new throwaway account which itself provides no citations or links? That's not very persuasive.
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.
Please excuse my ignorance but are there new patents coming in every year or is it more like mp3 where we had a patent but eventually it expired? My question is like will we have e ink in about twenty years?
The methods or refreshing e-ink displays are called "Wave Functions" in e-ink parlance, and they're actually implemented in software.
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.
> The methods or refreshing e-ink displays are called "Wave Functions" in e-ink parlance, and they're actually implemented in software.
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 you are attempting to communicate with the link to the header file, otherwise it looks like you just googled and gave a link to something that you yourself don't really understand.
It would be hard to miss as it’s required to display anything. However, most dev kits come with a controller which embeds a [proprietary] set of waveforms. That however leaves you with conservative implementations and far from state-of-the-art.
> most dev kits come with a controller which embeds a [proprietary] set of waveforms. That however leaves you with conservative implementations and far from state-of-the-art.
Please clarify what dev kits you are referring to. What do you mean state-of-the-art?
I didn't say that, but I don't see the waveform they use documented and I didn't see it documented how to make your own and/or replace the one the dev kit is using.
It seems you think I'm wrong, great! Please share how and why.
I've briefly looked for the things I've read in the past but failed to find them currently. Will do when I return home, and will send another reply. I don't like when I can't find the references I remember so vividly.
So, I have looked around and refreshed what I've read, and what I've saw. Let me try to summarize.
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.
While any company is trying to do R&D and sell product, there tends to be new patents each year. That means there never a nice 20 year boundary when it becomes safe to build on top of the tech, because you'll always have the threat of a lawsuit that you are violating one of the newer patents in your implementation. And the costs of such litigation deters investors, even if you would have a good chance of winning.
I wonder what the display's lifetime is with this kind of usage? I see someone asked in the YT comments but it is unanswered.
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.
I am still hoping for a large, reasonable priced eInk display that I can frame and hang up on a wall. Does not even have to be color, I would be fine with just changing through different black&white dithered images over time. But large eInk displays are prohibitively expensive for what is basically a gimmick :-/
This. I'd buy a reasonably priced 10+ inch E-ink display that I can use as an art display on the wall or a creative dashboard of things I care about. However, anything above the size of a Kindle is too expensive for this purpose. A kindle is rather too small...
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.
Fair ... I just read your response and assumed it was answering to my complaints :-)
He specifically asked for a 10" inch display and your proposal fits there.
Me too, but perhaps cheap AMOLEDs will come sooner and they can kind of be an okeyish replacement? If one runs an AMOLED on black background, e.g. a terminal, a text editor or an inverted PDF, only the pixels displaying characters will be lit.
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.
Sharp's Memory LCD comes pretty close. It's a high contrast LCD with a reflective back layer that mimics paper and has very low power consumption. But I believe it's only available on small sizes, and it's a one-bit display (no greyscale).
This screen is used in Panic's Playdate game console as well as the Pebble smartwatch.
Good news is they do exist, and manufacturers do make them even if they are prohibitively expensive. If you want it enough you can actually pay to get it made and shipped to you, which is better than not having that option at all.
Last time I checked in the displays in the sizes I am interested in (>= DIN A2) are in the lower five figure ranges ... for that price I could buy several real art pieces that I like :-)
It's incredible how as a society we have accepted that people must spend hours upon hours glued to screens that were never made to be reading devices.
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
They mention the issue of dithering changing "everywhere" when e.g. a mouse cursor is moving, which is obviously distracting. I wonder if you couldn't make an error diffusion dithering technique where the amount of error to diffuse is mollified by the signed distance from the moving pixels?
* 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.
Thanks for the link, that was a nice writeup indeed!
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.
> “This is possible and used on eReaders, so texts, images, and UI elements could use different update modes, but not with the current available Eink monitor + software stack. Our controller supports per-pixel update mode settings, but this would need support from the software side.”
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.
Companies have tried for years [0] to make progress here and none of these problems (ghosting, refresh time, price) have proved solvable given the quantity of units demanded. I wonder if anything has changed or if this is just an exploratory survey that precedes any of those advances
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.
Yep, I think there's no need to make e-ink into a competitor for oled or lcd monitors. Something like a tablet or small purpose built computer like a POS machine with built in scanner and card reader is something I think would fit best for this kind of display rather than forcing LCD/OLED to handle small form factors but somehow compete on power usage.
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.)
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.
Instead of e-ink displays, I wish companies would try to make strides in transflective lcds [0]. If more companies invested the time and resources, I think that the potential cost savings and technological benefits (such as a higher refresh rate and no ghosting) over e-ink would make a killing.
Right now, I only know of one commercial product [1] currently being made that is taking advantage of this untapped market.
I know a lot a people seem to prefer e-paper to LCDs. However, I have not yet found papers that could show a significant benefit with regards to eye strain of e-paper over other types of displays. If you are outside and have reflections, shure - but inside?
Obviously just an anecdatum. An e-paper reader(Kindle Paperwhite, though I'm planning on getting something non-amazon...) helps me read in bed without any distractions. Since it has a sidelight, I don't need a lamp, which keeps light pollution at a minimum. The device is basically useless for anything other than reading, so there's no push notifications or messenger chats popping up. I regularly pass out after 3-4 pages.
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.
I also didn't find any papers regarding to differences, but I have my eyes and experience.
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.
That's interesting I switched from a kindle to an iPad mini a few years ago and except for reading outside in the sun, I didn't notice any downsides concerning the display.
I started with a 212 DPI display (PocketBook 626), then moved to Kobo, which is 300 DPI, and the effect was much more dramatic.
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.
I also am not aware of any papers that show any benefit, so it's just a personal preference to me.
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.
I think it's very common for people to use "wrong" settings on their monitors (besides often bad ergonomics in general). If you have pretty much any amount of natural ambient light in your office, and you don't adjust the monitor's brightness over the course of the day, it's probably wrong for long durations. Many folks seem to leave monitors at default settings, which are generally way too bright for most environments. A simple test would be holding a piece of paper up to the screen - white on the screen shouldn't be brighter than the paper.
A monitor that auto-adjusts not just brightness, but contrast and color temp, based on input from a couple cameras (both in front and behind the display) has the potential to be incredible.
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.
There is some academic work in this area. If you're searching, use the terms "electrophoretic", "EPD", or "epaper" rather than "eink". Most focuses on either readability or subjective evaluation rather than eyestrain though. There's also a lot of related work on optimal contrast/luminance ratios independent of display type. Generally I think the reason people subjectively prefer eink is because the research tends to find that (for users that do not require visual accessibility accomodations) readability decreases after the luminance contrast ratio exceeds about 10 (e.g., Wang and Chen 2000), which puts eink in a natural sweet spot, and the need to increase LCD backlight brightness in well-lit rooms (e.g., Miyao et al. 2016).
That's just a single data point, but here's my experience. I have severe myopia, and I experience discomfort when reading from a screen over a prolonged period of time. I read a lot, and I can't read for more than two hours even on a quality LCD screen. With e-paper, three hours of continuous reading are not an issue. If my reading habits were as simple as reading for an hour before bedtime, I don't think I would need anything more than a tablet.
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.
Yes. New generation of displays have greater contrast ratio and way faster page change speed. 300 dpi e-ink displays at least one generation newer than 212 dpi screens I've used before and they visibly improve speed, contrast and readability.
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.
Is anyone aware of any development for a product which can be a fast-refresh monitor while USB-C powered, but has a battery-powered PDF tablet mode when disconnected?
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.
Eink experience would improve if there's built in style transfer algo to convert to images/video to be more legible. Something like toonify BW line art with shading.
Line art is e-ink's strength, which is why it's featured so often in adverts or boot / sleep screens. Durer's rhinocerous is phenomenal on a high-quality, large e-ink display.
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.
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.