Can’t explain why but all these E-Ink projects are so awesome and attractive to me. I’m surprised I can’t just buy a bunch of E-Ink style gizmos from some company to decorate my home and office. My wallet would be wide open to it constantly.
These projects have a pleasant "lo-fi zen" aspect that makes them attractive, I think. They are simple, provide value yet fade into the background without sucking your attention like some other gadgets.
Probably that's why you can't make money on it at scale that you can with any addictive type of device and so it's not attractive for most entrepreneurs - a lot of work to put in and not enough money to even buy a Cessna.
Target the high-end? There might be a demand for a device with an e-ink esthetic which takes care of, I don't know, planning the days of rich people? An actual need instead of a manufactured want? Or maybe the lower power consumption of an e-ink display can make it useful in other areas not yet identified instead of consumer products?
I buy old kindles for this, ~50$ per piece.
they have a linux os & battery included.
you get in through a serial port and a password generated for your serial number.
downside is that you fight the kindle os in certain aspects.
I wonder what it would take to build your own firmware image if you were reusing for exclusive alternative use? Presumably there is a Linux kernel tree somewhere and you could pull the waveforms from the Amazon image?
Tried that, but when I was at the process of soldering the cables to the debug ports, the "solder spots" came out of the board :(
Now I need to press hard with a needles to make the serial port work - so it is quite hard to setup - at least until I install sshd there and setup wifi to make it work wirelessly.
i bought the 6" display from eink.com to build a small personal art project - an infinite scrolling procedurally generated landscape based on this project - https://github.com/LingDong-/shan-shui-inf
A few gotchas:
1. some of these eink boards are hard to procure as a consumer. the vendors want you to be a company
2. the driver boards are purchased separately, are definitely required, and sometimes have windows software (vs easy to use rasp-pi drivers)
3. support is often difficult or from the OEM so english-language communication can be difficult.
I had the same idea a few weeks back. Until i tried it. the javascript there is VERY slow. on an overclocked r-pi zero in chrome it takes > 5 minutes to render one. A few min of r-pi 0 time (1.9W) will kill batteries fast...
A Raspberry Pi Zero and Pimoroni's Inky Impression are a very easy cheap setup to have a cute eink gizmo. Here's a twitter thread I posted with some images of it working: https://twitter.com/berenguel/status/1344016064196304899 and links to the screen as well.
I scoured the wave share site for all the other e-ink screens and there're many cheaper ones.
You can get small e-ink screens (without a HAT, requires adapter ~10$ and dev board which is necessary anyway) for much cheaper.
5.8 inch is 40$
800×480, 7.5inch 50$
400x300, 4.2inch E-Ink raw display, three-color 26$
The cheaper ones are cheap because:
1) Each size comes in a low res and a high res variant, the low res ones are a lot cheaper
2) No HAT, so no built-in dev board for the PI. You do need to somehow connect it to your dev board. An adapter with SPI costs 10$, a dev board with esp8266 that has built-in adapter costs ~18$. Both are officially from wave share available on their site as well
3) All boards below 7 inch are relatively affordable. After that the price increases are huge
4) Not sure why, but price difference between black/white and 3-color is negligible. So feel free to pick a 5 inch tricolor screen for like 40$!
1. Refreshes are much slower on 3-color eInk panels than on monochrome ones (eg: 20 sec vs 2)
2. Partial refresh on 3-color panels is rare and quickly gets messy around the edges. Partial refresh on monochrome panels is a relatively simple thing to do.
3. Greyscale on a 3-color eInk screen is VERY VERY VERY hard! Officially it is not supported at all. By any 3-color panel. I made it work [1] but even then, it is very very slow (bordering on a full minute per refresh).
4. Stock waveforms are rarely good. And almost no vendor will give you proper temp-compensated partial update waveforms. Developing your own waveforms for monochrome panels is easy and simple (~day). Developing your own waveforms for 3-color panels is a lot of work (~weeks + more weeks once you need to support more than just "21-25 celsius")
e-ink is the perfect blend between technology (screen can display whatever you want) and the analogue/physical world (it looks like a piece of paper which you can put in a wooden frame and interact with).
Another example for me is the “Buddha Machine” by FM3 (https://www.fm3buddhamachine.com): it’s basically a box that plays some ambient loops (technology) but it looks like a small and unthreatening transistor radio with nice tactile buttons (physical).
They are neat. It's not as much in your face as a normal display plus they require almost no power so you can do awesome things with a SBC or an Arduino, smb32 or something else if you really want to make something completely off the grid. The Denali is that eink displays are still insanely expensive compared to any other screen.
The main problem with e-ink is finding a display that doesn't cost 5x what an LCD of the same size would cost. This display was $179 before it became unavailable. That's on the low end for such displays bigger than phone-sized.
If the e-ink people ever overcome their cost problem, we'll see many more products.
I saw this recurring theme on HN that electrophoretic panels were expensive due to patents and evil misdeeds by that most evil corporation called E-Corp.
I thought, hey, I work in this bloody display industry myself where everything is about volume, volume and more volume, and I hangout with their guys at conferences and events, and I've never heard such a thing as them using patents to attack other industry players. Are they really attacking people and hurting customers that want to use their technology as alleged?
So I asked a simple question each time I saw that claim that E Ink uses patents to attack startups or similar claims. What's the evidence?
And guess what. Now it turns back to people like you who ask what is my evidence that there's no evil misdeeds. And to which I just feign shock, oh no, it must be true then, since a lack of evidence for them being innocent of the alllegations must mean they are guilty.
So we're left back at square 1. I hope people with a smarter mind than mine can arrive at whatever the correct conclusions are.
Could you please tell a bit more about the volume-side of story? Somehow I feel that E-ink is at this weird point on the cost/volume curve because it is a fundamentally flawed display technology: monochrome or a couple of dull colors at best, very slow refresh rate (with ghosting/leftover on partial refresh).
LCD/OLED displays were also very expensive initially, but because they're so much appealing universally, loads of money got poured into the industry to make them better and cheaper (mostly due to volume demand).
There's no such amount of money/interest in making E-ink better and cheaper :(
Please search my comment history for what I posted about electrophoresis and physics. I don't think they'll be able to get past the physical limitation. To summarize, you either move ink fast but end up losing bistability, or move ink slow, as it is currently. Most people don't realize electrophoresis has remained at about 700ms for an update over the last decade. Tricks like A2 sure with the Dasung, but nothing substantial.
As for the comment about "money/interest", see my comments about why a venture capitalist would have little interest in spending billions trying to create new display tech and fighting hard expensive physics problems when they could get higher rate of return by investing in another software service or ML/AI company. That said, Jeff Bezos spent hundred million or more on trying to get Liquavista working, Qualcomm spent lord knows how much on Mirasol. Great demos, but just couldn't get the process scaled or reliable enough to commercialize. Physics is hard. Physics is expensive.
I mean, as long as they have patents they don’t need to “attack” others. A patent is enough on its own to prevent others from innovating. That’s the function of a patent after all!
Well, to be fair, large displays tend to be fragile and unwieldy as well. Depends a lot on manufacturer, but in essence short production runs also don’t help lower the price.
The project uses tri-color e-ink display. You can downgrade to two colors (and use e.g. dithering to get shades of gray) and get almost the same functionality for less money.
This project is really cool, but I would prefer to have "a new picture every morning" in a frame than a calendar. For my purposes the e-ink displays are still a bit too small....
I used a kit to ‘root’ it and allow installing software. I then installed some handy utility which basically just shows a web page and refreshes it every so often.
I just made a simple weather web app which connects to a free service. This works great. I could have written a little Android app to do the same, but my memory of Android UI is that I never ‘got’ it so this seemed easier.
Unfortunately the display isn’t as big as the one you chose and it isn’t battery powered. But I am starting to ship the first units, so there is that :)
That's cool. Why not battery powered though? That seems like one of the biggest benefits of e-ink and also a wire coming out of your calendar seems like a pretty huge drawback.
If I make it battery powered it needs to run on a charge for a few months, otherwise it becomes a hassle. And then, it must be possible to charge it easily.
Also, space. Right now the calendar is 7mm think and I think it won’t look as nice on the wall if I make it much thicker.
There are a lot of edge cases to consider. It’s definitely on my wish list but I cut it out for simplicity, for now.
1. Any plans to release some general purpose version of this? Ie i'd love to buy this and hook it up to an HTML webpage i generate or something. Then it's flexible to whatever i want to show on my dashboard.
2. Any plans for how consumers should power this hanging on a wall? Since it's wired it looks like.
Heh that's cool. It renders the calendar as HTML and then uses selenium to open up headless chrome and screenshot it and then send the bitmap to the eink display. Clever.
Ah nice. Yeah I'm looking for the right display for my skymap that shows the sun and moon and planets as they track across the sky. It's fun to see the sun curve change with the seasons. Would be way better to have on 7 color eink in the living room than on my phone or laptop.
This one looks good. Are there any that are like 3 inches bigger with borderline similar price points?
All the complexity is handled by well known tools/libraries.
I can code a selenium script to capture a screenshot in my sleep.
Often using tools your know is the best solution.
Your free to fork this and come up with a cleaner implementation. This is probably why you need a PI Zero. Smaller micro controllers can't run a full browser.
Most of these projects are just whatever can be hacked together in a weekend.
Why tough? It works. What exactly is wasted here? 100MB for Chrome binary and that few percent of CPU hike while rendering the image? Is it worth wasting endless hours of time researching some niche, quirky, badly documented drawing library, where the hard earned end result has absolutely negligible difference from a human standpoint? Machines work for us, not reverse.
he solved the problem with the tools he had, without spending time learning an alternative graphics layout system. I’m curious what you’d recommend as rudimentary tho, I would love to see such projects on lower power devices, but if you already need the Pi to talk to the ePaper, I don’t see the harm in burning a few cycles rendering a webpage to get the result you want.
That phrase is so overused in light of massively over engineered solutions that are created every day in our industry . Let’s face it: this project loads some data via http and displays some text and primitives on a display. This can easily be handled on a esp32 with room to spare. But somehow we think it’s normal to involve an OS, a fully fledged computer and a browser to do this. Seriously, we need the opposite of the Knuth quote: “When in doubt don’t ship a browser” or something like that.
His GitHub says this:
"This might sound like a convoluted way to generate the calendar, but I'm doing so mainly because (i) it's easier to
format the calendar exactly the way I want it using HTML/CSS, and (ii) I can better delink the generation of the
calendar and refreshing of the eInk display. In the future, I might choose to generate the calendar on a separate
RPi device, while using a ESP32 or PiZero purely to just retrieve the image from a file host and update the screen."
Its easy to design something nice looking in html and css and compute is cheap. Seems like a fine solution to me. Maybe even better since you can push the image generation somewhere else and just have the RPI update the screen with an image which would save lots of power.
I've tried making nice interfaces with GUI toolkits and its a nightmare.
He has a valid point, generating the image on a separate device (heck, you could do that on AWS Lambda for free) and only grabbing the resulting image could vastly improve battery life. Then you could also switch from a power hungry Pi to a simpler choice like an ESP32.
Cause EInk display code works nice to just ship it an image type file. So, it's gotta be rasterized before, using Chromium makes that super easy - rather than hand crafting PNG.
I personally make SVG then rasterize but this isn't that terrible.
People gluing together lots of stuff to making something barely-working and massively inefficient is not a new phenomenon. Unfortunately, all the "maker movement" seems to have done is encourage it more. Careful design, knowledge and learning is being discouraged in favour of superficial understanding, copy-pasting, tweaking-until-it-works. They don't want to spend the time to learn the basics. I was recently saddened to see someone who had published code for a tiny project in Asm being asked if there could be "an Arduino version".
> Careful design, knowledge and learning is being discouraged in favour of superficial understanding, copy-pasting, tweaking-until-it-works.
This is like poo-pooing amatuer woodworking and saying “people should really become an apprentice first” - no one who has the education to do careful engineering is being discouraged, the field of hardware and software is now within reach of people who just wouldn’t take on any of these projects 10 years ago.
no one who has the education to do careful engineering is being discouraged
They are, because they think this stuff is just as good --- and it clogs the search results for those who do want to dig deeper. I often have to add "-Arduino -Maker" and a bunch of other filters to my search results to find the actually useful stuff.
This stuff IS good! It inspires people to task themselves with projects they don’t yet know how to do, and blog about what error codes they received and what they did to fix it.
Besides, how can you look down on them when you’re googling for answers instead of, you know, RTFM / getting your engineering degree?
and blog about what error codes they received and what they did to fix it
That is often more than useless to everyone not exactly in that one person's situation.
Besides, how can you look down on them when you’re googling for answers instead of, you know, RTFM / getting your engineering degree?
When trying to find TFM is itself a problem... I'm definitely not one to want to be "censoring misinformation" unlike a lot of others, but the blind leading the blind is certainly happening a lot and it doesn't help anyone.
i’ve thought about this a lot because i use a whiteboard on my fridge. i would do this if it was huge like my whiteboard. like 2ft by 3ft. then i can read each day at a glance. seeing the whole month is huge. and writing on it means it should be a touch screen
i find myself wanting larger displays than is for sale a lot. i want an electric photo frame but not some 12in screen. i have great photos i want to see them 4ft tall. this is an underserved market
A lot of these kinds of projects render out an image and send that to the display. If you did it on a server, cut up the images, and had each kindle pull their image it should be pretty trivial. The only immediate issue that comes to mind is making sure they're relatively in sync when pulling a new image if you're worried about polling too often.
Hundred dollars for the printer, probably 20 cents a day for the consumables (paper, toner, electricity). The paper is recyclable. At one page a day, I would guess lifetime will be dominated by mechanical lubrication or degradation of capacitors, dust clogs, etc.
You definitely need to be able to make out an Information Radiator from across a room. We’ll probably see a tipping point somewhere around a 30” screen, where you can put a large summary at the top, and details farther down.
Is anything going on? Is it worth me crossing the room to see? Should I be checking my email, other dashboards, or coworkers?
This morning when I awoke, my wife had propped up her ebook reader on the nightstand next to me. It looked nice. I thought: how cool would it be to have a little e-ink display to which I could beam a few key pieces of information?
Nice, but I can't think of less power-efficient embedded platform than an RPi. Especially with something as low power as E-Ink (zero power when displaying).
Innophase T2, Dialog DA16200, RedPines (SiLabs) RS9116, RealTek Ameba... they all are super low power (like 100x less than RPi) even while maintaining the 802.11 association, and come with easy SDKs ready for REST HTTPS out of the box (and RTC capabilities, not sure about the ameba).
I find the ESP32 much easier to develop for, you don't need to install any toolchains, just plug in and drop code into the virtual USB drive that shows up! I wish all microcontrollers were like that these days.
That sounds like a very specific bootloader that you're using
ESP-IDF is still very nice though, and being CMake based makes it easy to integrate outside code
It supports serial based uploads, which are still pretty nice with the bundled serial monitor (one key combo to build, upload, and restart) and OTA uploads
Oh sure, but it's still way better than the last time I had to deal with an STM32 and install about 5 different things, modify a "boards.txt" file (which there were 3 copies of on my system in different places and I had no idea which was the real one) and then hit the program button with one hand with a mouse in the air while carefully timing a short of a reset trace on a PCB with the other with my elbow holding down the PCB. STM32s really suck. Never had to do that with an ESP32, at least someone made a nice bootloader for it.
I never coded on Espressif, but in other SDKs (e.g., mosquitto, mbedtls) typically this is done when you open the connection at the application layer (HTTPS, MQTTS). You pass in the cert bytes either as binary or PEM text as a char[]. Use a CA root cert(s) from your OS/browser.
It depends on whether you want to connect to random hosts or ones that you know beforehand. The latter is very easy, I just hardcode the certificate fingerprint. The former/dealing with CAs is harder, I've never done it.
ESP32 is a very generic synthesized chip, not particularly ULP oriented.
On other hand, it's the most developer friendly company out there.
I've been unsuccessful getting any proper reaction from Innophase about SDK support. Their sales seem to not even understand what we are wanting from them, and keep sending us "enter these AT commands through USB-TTL"
ESP32 is also pretty much the one, and only wireless MCU you can buy on the open market, in any quantity, on a short notice. Nothing else comes with the supply chain security like this.
> ESP32 is a very generic synthesized chip, not particularly ULP oriented.
Maybe not, but setting it up to sleep most of the time and only boot once a day to fetch the calendar and update the display should sip power pretty sparingly; I expect you'd get months if not a year or more before needing to recharge the battery.
I wanted to try their Espressif ESP32 low power 802.11 part back in March but it wasn't shipping yet. Their website isn't clear but I'll poke around and see if it has been released yet.
I don't think it has a hibernate mode, but it has been a quite a hwile since I've downloaded the latest headless server build.
I am currently reading 428mA at 5.0V on the power supply that is driving it. It is headless and I'm not interacting with it. (400mA w/ethernet unplugged). So that's 2W. I'm running Buster Debian build. If you got a low power command, hit me with it and I'll try it! systemctl doesn't support hibernate. I don't do any low power linux programming mainly because Cortex-A class processors (heck, even M7's) are already far outside my power budget.
That is a crazy amount of power, compared to the InnoPhase T2 that draws ~300 MICRO Watts when connected and sleeping.
You don't really need to "hibernate"; shutting the entire system down and booting from scratch on each update is simpler and probably more reliable.
The problem (hibernate or not) is getting the Pi to wake up, since it doesn't have a real-time clock. OP is using a RTC hat to achieve this. I do wonder what kind of power consumption it uses while sleeping.
what a colossal kludge. what you're trying to accomplish is basically embedded programming 101: sleep mode + wakeup timer. RTC? pff.. even any MPU on-board oscillator with no crystal has good enough PPM and lower power than an RTC. your solution is like hunting quail with a nuke.
yes, but trying to generate a nice rendered image on a stand-alone uProcessor is pretty hard.
I don't like that it takes headless chrome to render, but it _works_ and fills a need for the maker.
I'm pretty sure they looked at the stuff they'd need to write (A layout engine, a anti aliasing library, a calendar parsing library, an image handling library) and thought "fuck that, lets use a pi".
It terms of time thats weeks full time, and even then might not be possible to fit on the uCPU of choice.
just buy a realtime hat with wake up ability, for $40 max, boom job done moving to making the thing look good.
Its not a product, its someone's hobby, leave them be.
> trying to generate a nice rendered image on a stand-alone uProcessor is pretty hard.
Did you see the rendering? It is very simple, and does not require PIL. There are plenty of embedded GUI libraries that are specifically for this kind of application (uFX, Qt). Why not learn something new?
I want HN to be a place where experts critique ideas, not a Facebook/Instagram like-fest ego-stroke. I was proposing a deeper dive to the OP so that s/he could develop better skills. I wasn't mocking OP, but I was mocking your bad idea because you didn't make anything, you just threw out a naive suggestion.
Did you come here to learn or to get some karma for a dopamine hit?
> I want HN to be a place where experts critique ideas
I was critiquing your world view that _everyone_ must at all times go really deep into software so that everything can fit inside 4mbit of flash.
I was also also critiquing your strongly held opinion that simply because a microprocessor has low power states, it doesn't mean that its quick, easy or indeed achievable to render a nice calendar entirely onboard. (it is of course possible, but I know it would take me a lot of time and be no fun.)
Perhaps the goal of the project was to get something that looked nice in a time frame that was reasonable. Perhaps the goal was not to spend time learning how to do antialiasing, font handling, calendar parsing in a power constrained environment.
The joy of the internet is that they have shared their work, now you can build on it and make a good looking eink calendar that's battery powered on some tiny ARM SoC with 4kb of ram.
I can see myself expanding on this (maybe even re-hashing your library essentially) running:
1. a Calendar,
2. next to a Stock Ticker,
3. next to a Financial accounts (i.e. all current asset) combined with Financial goals.
I've been thinking about the third one for a while. E-Ink / a simple, low power, monochromatic screen (similar to Amazon Kindle eReader) would be a good choice.
IIRC someone on HN once mentioned that the Kindle web browser has a memory leak that will cause an OoM error/crash every (1000?) refreshes. They had a workaround but I forgot what it was.
This calender-thing really seems to resonate with people!
I built something similar but more versatile, where you can either display images or feed the display with whatever information you want remotely. And it runs on a battery for a whole year:
When I was at Google I worked with the developers of the Radish project [1], which was installed all over at the time. It's amazing how far the state of the art has some since then. Aaron told me about the memory constraints - The Radish streamed data to the e-ink display's memory buffer to update, powering it on to do so only briefly, while a Pi Zero is plenty enough to render the whole display. We've come a very long way.
I'm planning on setting up an all-in-one touchscreen+computer+monitor ($300 on eBay) as a glorified family to-do list manager and photo frame... any software recommendations would be appreciated! (For instance, not sure how well supported the touch screens are on Linux, etc.)
This is awesome! I'd love to build one. But I would probably like to have it plugged in, so I could update it more regularly with Spotify and some info from Home Assistant. The only problem is that I can't find Raspberry Pi Zeros anywhere. I tried ordering one yesterday to make a little Spotify Now Playing screen, and they're out of stock everywhere I looked.
The e-ink displays are a bit costly. Otherwise I would get a few of them and would replace all the paper calendars at home. Simply a calendar, no internet, low power. Not raspberry PI based, some low powered microcontroller simply displaying a paper like calendar and nothing fancy.
It seems some of us are more averse to LCD screens than others. For an always-on ambient advice, I appreciate that epaper can match the lighting of the room and not draw attention to itself (instead of basically being a flourescent bulb)
This looks like a desk calendar. e-ink is low power, allowing you to build a portable unit running on battery. And it has it own distinctive look, which some may prefer. Though yeah, an hdtv version would be lot functional.
Yes. The continual obliviousness which product makers (and buyers) have towards battery life is very annoying. I used to have a wristwatch which was the most technically advanced watch I could find, and it had a touch screen and various applications. Its battery consistently lasted for more than two years after each battery change. Eventually the touch screen wore out, and I stopped using it.
I can’t stand all this modern hardware which must all be charged after a few hours of use. It’s a continual stress factor to keep track of the charge of all your various devices.
The first thing I always do with these E-Ink projects is to check the price of the display, to see if it's come down at all since the last time I checked over the last 3+ years:
Great work and congrats on this!