18 ms·
Show HN: E-Paper 7-color display showing the current weather
A hobby project of mine that was surprisingly easy to put together! I love waking up and seeing the freshly generated image.
- illuminant 2y agoNice work! Beautiful use of the display.
- slig 2y agoBeautiful. The prompt in the GH repo is the same you used in your custom GPT?
- thih9 2y agoFirst prompt: https://github.com/blixt/sol-mate-eink/blob/1236dbb66b80c8385d1c8b78f422f7e157734ed6/ai.py#L18 https://github.com/blixt/sol-mate-eink/blob/1236dbb66b80c838... > Get the weather data for {location}. If the location is not on Earth (fictional or otherwise), pick the place on Earth that is most visually similar to the location. Before you get the weather, reason about which temperature unit is most likely to be used at the location in question. That is the temperature unit you should use when getting the weather. Second: https://github.com/blixt/sol-mate-eink/blob/1236dbb66b80c8385d1c8b78f422f7e157734ed6/ai.py#L89 https://github.com/blixt/sol-mate-eink/blob/1236dbb66b80c838... > Here is the weather for the location "{location}": > {weather["status"]} > Use Dall-E to generate a beautiful illustration of the location in the style of a wide post card filling up the entire image. Try to describe a scene that is iconic and aesthetically pleasing for the location specified above, but also one that can showcase the weather. (…)
- blixt 2y agoSince GPTs only have the one prompt I had to specialize it for a multi-step process with tool use (since it has to call an endpoint and draw an image in one go). Here's the prompt that I use in the GPT: https://gist.github.com/blixt/44bbed23bee7f65b53fd3304781eddb4 https://gist.github.com/blixt/44bbed23bee7f65b53fd3304781edd...
- slig 2y agoThank you very much.
- rlv-dan 2y agoReally nice color palettes. Some reminds me if MUI on the Amiga.
- deleted 2y ago[deleted]
- edent 2y agoI'm struggling to work out why this uses AI for getting the weather? There are dozens of different free weather APIs which could be called directly.
- blixt 2y agoIt uses AI for some things you can't really use free APIs for: - Turn a colloquial name for a neighborhood into the exact latitude and longitude (I'm sure there's some API that can kind of do this but I don't know a free one that is as accurate as GPT) - Adding to the previous point, if you say "Hogwarts" or "Tatooine" it will dutifully give you the weather of those too thanks to AI [1] - Most importantly, write a Dall-E compatible prompt to generate an image with the actual weather conditions (and sun/moon etc) [1]: https://x.com/blixt/status/1724099967361462714 https://x.com/blixt/status/1724099967361462714
- gandalfgreybeer 2y agoOf these, only the first one actually has any real value. And as you've mentioned there are likely less "expensive" ways to do so. By expensive, I mean this is essentially using a sledgehammer to crack a nut (especially the Dall-E call).
- blixt 2y agoI don't understand how I would get a unique but accurate prompt that makes Dall-E produce an image that besides the weather/lighting conditions also has a randomly picked iconic scene for the location, people in the picture that have the correct clothing and doing reasonable activities, etc. I'm trying to understand the criticism here, so please give the GPT a shot with a few different locations (you can also do neighborhoods or fictional locations) and describe how this is a nut that can be cracked with non-LLM solutions: https://chatgpt.com/g/g-QIydQSFRm-sol-mate https://chatgpt.com/g/g-QIydQSFRm-sol-mate
- itishappy 2y agoGoogle images? You could run a classifying model if you wanted to segment by time of day and weather.
- mikepurvis 2y ago“Don't leave the same image on the display for too long.” Why is this? Is it something particular about colour e-ink?
- blixt 2y agoThe recommendation from Waveshare is "refresh at least once every 24 hours"[1]. It's probably not such a big deal in reality, but maybe there's some risk of the pixels getting stuck if they are active for too long? [1]: https://www.waveshare.com/wiki/7.3inch_e-Paper_HAT_(F)_Manual#Precautions https://www.waveshare.com/wiki/7.3inch_e-Paper_HAT_(F)_Manua...
- mikepurvis 2y agoAre they “active” when set? I thought part of the point of e-ink was that it would maintain its image without power applied.
- blixt 2y agoNope, it's a completely physical process and state, so you can disconnect it and the image will remain the same. So you could use it as a reusable post card if you wanted, but for $80 maybe it's not such a good idea... I don't really know why they recommend to clear the screen after leaving the same image in for 24 hours, but I think it's mostly a precaution and most likely not a real issue. But for my own sanity, I do clear it at 2am and then it's already drawn a new image at 8am, before I'm out of bed.
- throwaway4220 2y agoI had some “burn-in” on a 4 in waveshare display that lasted for about 10 refreshes. I bought it used so who knows how long it was stuck on that one screen
- Animats 2y agoBecause it burns in, or because it fades out?
- MissTake 2y agoThere a difference in how the display works that’s different to a monochrome one, that requires the caveat of “don’t leave the same image on the display for long”? If memory serves, standard monochrome e-ink displays don’t suffer from burn-in.
- blixt 2y agoI'm just parroting Waveshare's own recommendations[1], but yeah probably it's not such a big deal. I'll link their docs in the README to help people make a more informed decision. [1]: https://www.waveshare.com/wiki/7.3inch_e-Paper_HAT_(F)_Manual#Precautions https://www.waveshare.com/wiki/7.3inch_e-Paper_HAT_(F)_Manua...
- butchlugrod 2y agoI use the Inkplate 6Color for some similar projects. Built-in ESP32 controller, so no Pi required. Can be fully battery-powered, so if you make intelligent use of the deep-sleep/wake schedule, you can stretch that battery charge for a couple of weeks. My favorite one is a red "On Air" sign that hangs on my office door (used for meetings and recordings.) I just trigger a shortcut on my Mac and it automagically updates my status and mutes my devices. They have example open source projects for weather displays, news, Google Calendars... https://soldered.com/product/inkplate-6color-color-e-paper-board-copy/ https://soldered.com/product/inkplate-6color-color-e-paper-b... Cheap e-ink projects are super fun and useful.
- blixt 2y agoNice, super clever use of it! Yeah it's super fun and makes me want to put these screens all over my house.
- localfirst 2y agoholy crap! this hits all the checkpoints edit: shocked at the prices!
- declan_roberts 2y agoAll of the cool e-ink projects I want to do fall apart when I'm reminded of the cost of e-ink panels.
- Loughla 2y agoWhat was the name of the eink computer that was on here last week? I can't find it back for the life of me. I desperately want a flat white display for work. Reading technical grant proposals on a regular screen is killing my eyes.
- computerfriend 2y agoMaybe https://daylightcomputer.com/ https://daylightcomputer.com/? There are also monitors such as https://shop.dasung.com/products/dasung-25-3-curved-e-ink-monitor-paperlike-253-u https://shop.dasung.com/products/dasung-25-3-curved-e-ink-mo....
- NoMoreNicksLeft 2y agoI suppose I don't understand how colors work on e-paper at all. Can these 7 colors not be dithered? Or even mixed more properly, for something like true color functionality?
- blixt 2y agoI use Floyd-Steinberg dithering, and if you look at the "More images" section you can see it does a reasonable job at representing colors. Also worth nothing that 2 of those 7 colors are black & white, so questionable naming perhaps. I'm pretty sure real production use cases of these screens don't tend to use dithering though, focusing on contrast and readability.
- Qwertious 2y agoThe naming is a hard problem - black/white/orange and black/white/red screens are commonly called 3-color screens, to distinguish them from normal black/white screens. Calling them 1-color screens would be an awful choice of name, but "7-color screens" is a name consistent with the "3-color screens" name and calling them 5-color would be horribly confusing (especially since current 5-color would become 3-color). Also, black and white are their own specific primary colors, they're not made out of a combination of other colors, so it's rather appropriate to call them colors in that context.
- koolala 2y agoDoes your room have a window? i am trying to understand the earth
- move-on-by 2y agoThe e-ink review say the display has a dark purple color. How is your experience?
- blixt 2y agoI asked it to generate the weather for "The Purple Forest" (Narnia) and this is what it came up with: https://i.imgur.com/kmKiqbO.jpg https://i.imgur.com/kmKiqbO.jpg You can zoom in on the purples. I would say it looks like a wine purple IRL.
- dh-g 2y agoWow, these have come a long way.
- move-on-by 2y agoI’m sorry I was not very clear with my question. The review is negative- saying the ‘white’ is more like a dark purple color. I’m not asking how well it shows purple- but the general quality of the display itself.
- blixt 2y agoMy bad, I understand now! I think it's at least as good as a Kindle. I understand why someone who is comparing to bleached paper or OLED/modern LCD screens would say it looks purple, but yeah, I have no complaints. Edited to add: In the picture you can also see the white material at the bottom that is not part of the screen, I would say that is "true white". And the picture also has white pixels on the screen. That's the "dark purple" the review refers to in that case.
- nathancahill 2y agoYeah, that's pretty purple for white. But still amazing how far this tech has come.
- edpenz 2y agoThe black does have a purpleish tinge on my panels, but the other colours don't. Overall it's pretty low contrast and saturation, and unable to reproduce cyan or fuchsia even with blending through any kind of blending, which makes certain things like sky and water come through poorly. I made a palette for colour space conversions for reference: https://imgur.com/a/2vgFsT4 https://imgur.com/a/2vgFsT4
- germinalphrase 2y agoWhat are the power requirements for the build? Could it be run off one or more 18650’s?
- blixt 2y agoIf using the Raspberry Pi 5 I wouldn't go for a battery-powered solution because it's pretty power hungry. But you can run this screen just fine off of a Raspberry Pi Zero, or ideally a microcontroller if you want basically no power draw while it's sleeping. I was just lazy.
- edpenz 2y agoThe similar project I'm working on is looking like it'll get about a year of battery life with a typical 18650, the 5.65" version of the display and run off an ESP (refreshed once a day).
- doakes 2y agoI never realized just how thin these displays are. Very cool!
- kfogel 2y agoDoes anyone know why projects like this always seem to specify using a particular type of tiny, low-power computer (usually a Raspberry Pi or something similar) to drive the display? I already have plenty of non-tiny computers that run Debian GNU/Linux. Suppose I wanted to run an e-paper display from one of those computers, using this code, just via a normal USB cable. I could do that, right? There's no reason I would have to use a Raspberry Pi or something similar?
- joezydeco 2y agoThere's no reason at all. RPis come with lots of bootstrap documentation and code so it's comfortable for someone that's played with Linux to get one running, install some packages, and make it do something. You could do this with a tiny microcontroller if you had the time and knowledge to do it. There's nothing magical about the displays other than strange supply voltages at times. The more common problem is that they don't listen to USB. They take SPI or parallel digital interfaces to set the pixels. So you need some kind of intermediate interface and software to draw the display. Which is why people just slap an RPi into the mix and talk to that over more common protocols.
- kfogel 2y agoThank you. My idea was more the opposite: do it with a normal laptop or desktop computer driving the display, rather than a tiny microcontroller. I guess I'm assuming that either the display's USB input supplies enough voltage to run the display, or that the display has a separate power supply -- i.e., that there's nothing magical about a Raspberry Pi that makes it supply special bits or special voltages to these displays that can't be supplied by, say, my desktop computer.
- joezydeco 2y agoEdited my response above. The answer is more about the interface that these displays require.
- 2y ago
- jrussino 2y agoThanks for posting! I picked up two of these same displays after seeing similar projects here that used them: - "A WiFi color eInk picture frame" https://news.ycombinator.com/item?id=35689706 https://news.ycombinator.com/item?id=35689706 - "Color E-Ink Display Photo Frame Pranks [Mom]" https://news.ycombinator.com/item?id=26977747 https://news.ycombinator.com/item?id=26977747 I was planning to turn them into color photo displays like in those two examples, but this is a neat application too.
- blixt 2y agoThank you for sharing – I love that the second one also has a microscope closeup of the display while it's changing. Happy hacking, hope to see your projects on here soon!
- skrebbel 2y agoTotally off topic because this is v cool, but what’s the use case for things showing the current weather? Forecasts I get, but current? Lots of phones and even Windows 11 prominently display this information but who is it for? People who work in windowless offices or something? I mean it’s a bit like a restaurant menu app that only shows you pictures or what you just ordered, right?
- ImPostingOnHN 2y agoMany taller buildings don't have a way for you to step outside in an outfit to see if it works for the weather. Or to step outside for a few minutes to try to manually gauge the temperature with our squishy body thermometers. If you know the temperature, you don't need to do this exercise at all, you simply know based on experience, and it's more accurate, too. A few degrees difference can mean different clothes, different materials, different layering, etc.
- advael 2y agoCool hardware project and idea, but I'm not touching an OpenAI API with a ten-foot pole, especially for an always-on device Maybe when I need a fun project I'll make a version that uses OpenStreetMaps + LAN-hosted Stable Diffusion tho, so worth a bookmark to remember to do that
- stavros 2y agoWhat's wrong with OpenAI APIs and always-on devices?
- advael 2y agoTrickly cost center a corp that's already betrayed me multiple times gets to set the price on. Also I have a hardline policy that I won't interact with Microsoft in any capacity for less than $80/hr, and that's the friends and family discount
- stavros 2y agoAh, you're afraid of sudden price changes? That makes sense, though (at least for my frame) I cache the responses, so after a few days I don't make any more API calls, everything comes from the cache.
- advael 2y agoLimiting contamination is a good first step, but I'm of the mind that anything that doesn't need a cloud service shouldn't use one. To each their own though
- stavros 2y agoOK this is uncanny, I independently made the exact same thing with the exact same display a week ago: https://imgz.org/iBLADkCU.jpg https://imgz.org/iBLADkCU.jpg It's a frame that fetches the current weather and time at a location, has AI generate a photo with that location, and shows it. How did we both independently arrive at this? I guess it was the most obvious thing to do?
- djbusby 2y agoThis is a case where ideas are "all around" - it's the kind of example that's wonderful for a new entrepreneur - to see your idea isn't unique (very few are). Execution matters. Y'all like the Uber and Lyft of eink weather - but I've tagged others like this from HN. Edit: soon as I find the time I'm building one too - all are inspirational for esp32 dev + key for FOSs home-automation
- securam 2y ago$86 for 7-colour 7.3" RPi compatible e-paper display. That's not bad.
- freedomben 2y agoNeat, thanks! What a great project, and like any excellent project it helps get somebody on a path to customization. The hardware recommendation and even just epaper.py[1] is nice to see as a reference. Thanks for sharing! [1]: https://github.com/blixt/sol-mate-eink/blob/main/epaper.py https://github.com/blixt/sol-mate-eink/blob/main/epaper.py
- brunoarueira 2y agoCongrats, it's awesome! I've starred the repo to use some ideas.
- card_zero 2y ago"Stocckholm". Also Santa Monica has at least one giant man, and on the beach there's a centaur, but I guess these little glitches add to the entertainment value.
- serial_dev 2y agoThe image displays Barcelona with 26°C and 2°C. I've been to Barcelona a couple of times and it's hard to imagine a day where you hit both temperatures? Is the weather data in any way reliable? Or is it all just hallucinated stuff and I should just enjoy the animations? It could also be that I know Barcelona weather less then I thought and it's possible to hit 26 high and 2 low?
- blixt 2y agoYeah this is Dall-E incapable of cleanly writing text. The 2 C is just a “hallucination” from the 26 C. This is a hobby project and as such I prioritized the text looking unique every time (and usually more artistic than in that image), rather than put a traditionally rendered text on there, but image generation models are not good enough for this use case if you were to make a serious product out of it.
- serial_dev 2y agoIt is certainly beautiful, would be good if it was correct, too :)
- atoav 2y agoI mean cool and all, but as an electrical engineer literally shaving off microamps from my design I can't help but wonder what the energy use behind the AI-generated backdrops is. After all we have kinda a situation as a planet.