I read a lot, blogs, papers, news, etc. My eyes are sensitive to artificial light so I prefer to read on e-ink. I also like to work outside, so things that try to fight the sun by feebly (relative to sun) shining even more light into my eyes are frustrating. I also find that e-ink screen limitations like slower updates and lack of color to be wonderful for not getting distracted by shiny pictures, videos.
For some time I knew that Lenovo made an e-ink laptop. I did not buy it because it was really expensive. Also the reviews were really negative. Was also not super excited about the color e-ink tradeoffs. Instead I bought an android device and was somewhat content.
Reddit revived my e-ink laptop dream
Then I came across this reddit post whereupon I learned that the e-ink laptop can be had for a reasonable ~$1100 and that it is actually good hardware. So I bought it to try it and omg, it was so bad.
The e-ink screen was unusable until followed the reddit instructions. I learned the horrid Lenovo UI. I made a white Windows high-contrast theme, installed NegativeScreen to get rid of color. Suddenly I had the single most pleasant (and at 12", largest) e-ink device I ever laid my eyes on. Even PDFs are nice to read on this giant 12" e-ink screen.
This experience made me realize that people who are not e-ink reviewers are not to be relied on for these specialized devices. Most people do not read and are addicted to 120FPS animations. The tech limitations of e-ink and software barely working with them is understandably off-putting. I would have never bought this laptop without that reddit post.
Lenovo sucks at software
Now there is a big gap between “laptop can be beat into rendering things nicely onto e-ink screen” and “I can use this thing without angry outbursts”. E.g., for some reason Lenovo always sets the e-ink screen to be in landscape when turning on the screen. This is in contrast (heh!) to OLED screen which auto-adjusts orientation per accelerometer. Another example: OLED screen prefers to live in dark mode, which means that switching from LED-to-OLED makes it nearly impossible to read on E-ink screen. Switching e-ink-to-OLED while running the white high contrast theme results in “my retinas are burning from bright OLED pixels” sensation.
Here is a video of how painful it is to get the laptop into happy e-ink reading mode:
Writing Code to Make the Excellent Hardware Usable
I had not used Windows in 25 years. There’s currently no hope of this screen working on Linux.
However, writing software for Windows is kind of nice. Win32 APIs are still my favorite for interacting with software other people wrote.
I fired-up aider and co-wrote a hacky tablet_mode.py script to automate the 2-min of tapping around that it takes to get me to happy portrait-reading-mode.
Here is the video is the laptop switching into happy e-ink reading mode mostly via script:
The script is mostly a proof of concept, it’s very fragile, but it already enabled me to retire my Android device for reading. Next steps are to make it more robust by using accessibility APIs
Maybe someone wants to collaborate on software hacks to fix UX on this laptop? My github repo is at https://github.com/tarasglek/lenovo-eink-workarounds/
Misc
-
The first few weeks of carrying a 2-screened laptop were terrifying as Lenovo does not have any protective cases for it. Eventually I found this case for it.
-
Wezterm is fantastic in that it has native ssh and screen/tmux type functionality. So SSHing into other computers is mostly no worse than on Linux…Except for the fact that Windows severs all network connections upon suspend. TODO: eink-friendly terminal theme for it
-
Have not found an e-ink friendly way to work with VS Code except for the high-contrast white reading mode, but that gets rid of all syntax highlighting.