UpNext – an ePaper digital calendar for your desk
brettcvz.com
brettcvz.com
I really like the aesthetics. There's something human about it -- it reminds me of Susan Kare's work on the original Macintosh [1]. There's so much soul and whimsy in what were nothing more than B&W pixeled icons. There's a certain timelessness to it. Another example: HyperCard's main screen [2].
Another Raspberry Pi digital display project I really like is this one [3], which mimics a train station display. The aesthetics is powerful here too because the fonts etc. reminds one of something familiar in the physical world.
[1] https://kare.com/apple-icons/
[2] https://blog.archive.org/wp-content/uploads/2017/08/MTIyMzI2...
[3] https://www.balena.io/blog/build-a-raspberry-pi-powered-trai...
Since the browsers support JS and some mix of WebSockets, EventSource, and, at the very least, long polling, it's possible to send messages out to them to update data in real-time or refresh the entire page when I change it. The screens are sharp and the browsers do partial updates, fast enough that I have some touch-draggable sliders that follow your finger.
They cost me from $16-50 each, depending on model. They tend to be cheaper if there's a lot of wear/damage to the case, but if you put it in a shell or cover the whole thing with gaffer's tape, that's not a problem!
I am told that with some amount of hacking and a supportive chipset/vendor, you can avoid most of this without reducing the lifetime of the display with the right calibration constants for the device... but nobody seems to have open-sourced anything like this and even places like Adafruit don't provide proper datasheets.
(And indeed, the display I used did break! I have no idea why, but it just stopped updating one day.)
Ben explains some of the constants that can be tweaked here: https://www.youtube.com/watch?v=MsbiO8EAsGw
To reduce degradations further, whenever UpNext boots it does a cycle of 10 full screen refreshes - overkill certainly, but I think of this as the “cleaning cycle.” If the screen ever starts to fade, I power cycle it, and it’s fine for a long time.
I’ve been running it continuously like this for 2 years now, and while the screen is a bit less sharp than it was originally, it’s still in good shape - the photos in the article are from this week.
A calendar will only update when your calendar events pass, which at least for my usage tends to be limited to 30 minute intervals and generally only a few times a day.
Second scare is about how to get the software onto Raspberry pi W. In the past, all how-tos I have read just say "flash it" and go on to the next cool step, but I'm lost right there.... how to get the software into the thing? - SSH?
My point is, I'd appreciate a really beginner friendly write up of your project. From the parts list, how to connect everything, and how to get the software on to it. I'd pay for such a tutorial rather than the finished product. I know it is your time that I am asking for, but I wish you found time to spare to help a beginner like me.
If you're like many others, you very likely teach yourself things often by investigating and experimentation :)
No reason you can't do that here.
These are (relatively) safe low voltage parts, a bit of googling and you'd be on your way :).
- What wire goes where will generally be explained to you. These boards all have a set of pins that do standard things, and are labelled via a "pinout" diagram. See https://www.raspberrypi-spy.co.uk/2012/06/simple-guide-to-th... for details if you're interested.
- Getting software onto a Pi is super easy. You have to "flash" a linux distro onto an SD card. There's a GUI tool that does this for you, all you need is an SD card, a computer with an SD card reader. Then you pop the SD card into your Pi, and you can boot into a full linux desktop, complete with internet, Gnome, etc. https://www.raspberrypi.org/documentation/installation/insta...
After that, you can indeed use SSH and the command line to install the software of your choice, e.g. with Docker (you should assign your RPi a static IP for convenience).
Lastly, here's a random example, installion of Hassio on an RPi: https://www.home-assistant.io/hassio/installation/
As others have commented, this project is mostly software and would be a great introduction to building physical electronic gadgets.
How about this - I think there’s enough context in the blog post and source code to recreate it, but if you start out and run into any issues, send me an email and I’ll get you unstuck. In exchange, I’d ask that you take detailed notes of your process and post a blog post/github readme of how you got it running for others to follow, and I’ll link to it.
The 2.7 inch models are nice for people beginning with hardware because it's already built as a Raspberry Pi HAT, literally plug and play, no soldering or wires required. https://www.waveshare.com/product/displays/e-paper/2.7inch-e...
The bottom of that page lists the other models; look for the ones supporting partial refresh to get around that flashing distraction.
From my experience with this project, all ePaper displays _can_ do partial refresh, but some may have the drivers (LUT) included, others you might have to find some community-sources ones or design it yourself. In the post I link to my drivers for partial updates for the 4.2”, and in the footnotes there is a YouTube video going into lots of detail on how the drivers work if you wanted to write one or update it for a different display.
Hope that helps!
These kinds of projects are cool, but I think they’re even cooler if they’re reusing stuff you already have in random drawers in your house
Is anybody else at the point of establishing their own digital calendar system? I feel like my main web-based calendar, one lots of people use, is powerful, but mainly in super boring ways. And it's functional, but mainly also in boring ways. It fits more like a generic pair of slacks, than a nice glove.
For example, I think I would cram the interface all the way up, and then slim down from there if needed. I may have some kind of material design-derived interface illness. I look at the interfaces of things like shortwave and ham radios and just think--yes, good, I am a big boy and can tolerate much more info-noise from my calendar display. Heck, cram the latest Get Fuzzy in there. And maybe even complex keyboard shortcuts, shell script integration, the sky's the limit!
I think I can go heavier on the information density (e.g. maybe using a lot less white space than Notion does) as long as the information has a personalized reason for being there...
https://news.ycombinator.com/item?id=22604617
Maybe it could be hooked up to a microcontroller (Pi Zero with some NFC module or something) that turns on every 24h.
I was hoping of building a similar one using a simple LCD [https://robu.in/product/3-5-touch-screen-lcd-raspberry-pi/] display, with a way to even showcase urgency/priority - and list at least next three events lined up for the day.
Possibly even add a color code / simple snooze button as the LCD is touch responsive. Found https://github.com/monitoror/monitoror and hoped to use it for this purpose.
I use it for reading and annotating academic papers or PDFs of presentations, for which I find it superior to an iPad/Apple Pencil in just about every way except for sometimes syncing and transferring documents (this would be easier on Android platforms, though perhaps not iOS). That's still a little clunky particularly if you use Linux, but there are a variety of open source tools now to facilitate the process. The tablet doesn't natively store annotations as standard PDF annotations, but it's not a proprietary format, and this only matters if you SSH in to directly access files.
If you plan to get one now, consider waiting for or preordering the upcoming generation (July?).
While most of the IP at this point is open-source, if someone is excited about figuring out how to turn this into a kickstarter/actual sellable hardware product, I'd be willing to collaborate.
The code for the site is open source, feel free to borrow/steal.
And thank you, having examples to take inspiration from makes all the difference.