Over the past two decades, e-paper has evolved from an exotic and expensive display technology to something cheap enough to be used for supermarket price tags. While such electronic shelf labels are now easy to find, actually re-using them is often tricky due to a lack of documentation. Luckily, [Aaron Christophel] has managed to reverse engineer many types of shelf labels, and he’s demonstrated the results by turning one into an ultra-low-power clock called Triink. It’s based on a 128×296 pixel e-ink display paired with an nRF52832 BlueTooth Low-Energy SoC and uses just 65 micro-amperes on average: low enough to keep it running for more than a year on a single battery charge.
The clock is housed in an enclosure that’s simple but effective: a 3D-printed triangular prism with a slot for the screen and space for the 18650 lithium battery. One side can be opened to access the internal components, although that’s really only needed to charge the battery. You can see how cleverly everything snaps together in the video embedded below. Continue reading “Low Power Challenge: E-Paper Shelf Label Becomes Ultra-Frugal Clock”→
It’s easy to become jaded by modern microcontrollers: for just a few bucks you can get a MCU that’s powerful enough to give a desktop computer from the early 90s a run for its money while packing in contemporary technology like WiFi and Bluetooth. For many projects we don’t even have to consider optimizing our code, because we aren’t even scratching the surface of what the hardware is capable of.
But sometimes you don’t have the luxury of using the latest-and-greatest chip, and have to play the hand you’re dealt. That’s when folks like [Larry Bank] really shine. In a recent write-up, he goes over his experiments with driving e-paper displays (specifically, salvaged electronic shelf labels) with 8-bit MCUs that on paper shouldn’t have the resources to run them.
The problem is that these displays generally expect to be handed a fully-formed image, which can easily exceed the free RAM on a low-end chip. For example, a 1-bit 128 x 128 image would consume 2 KB of RAM — more than four times the available memory on an ATtiny85.
How expensive is it to make a panel that uses e-ink technology? That might depend on how flexible you are. [RBarron] read about reverse engineering point-of-sale shelf labels and found them on eBay for just over a buck apiece. Next thing you know, 20 of them were working together in a single panel.
The panels use RF or NFC programming, normally, but have the capability to use BLE. Naturally you could just address each one in turn, but that isn’t very efficient. The approach here is to use one label as a BLE controller and it then drives the other displays in a serial daisy chain, where each label’s receive pin is set to the previous label’s transmit pin.
That allows a simple piece of code to read incoming messages and process the ones addressed to that label. Anything else just gets sent out the serial port. Only the BLE node has special firmware. At first, we thought each label would need an address and we wondered how it would be set other than having unique firmware for each one since there doesn’t appear to be a handy way to do a hardware-based configuration.
The actual solution is clever. Each message has a hop counter that each node decrements before passing the message along the chain. When the hop count is zero, the message is at its destination. Simple and very easy to configure. In theory, you could replace any of the labels after the first one with any other label and the system would still work correctly.
Even the wiring is clever, with a jig to bend the wire to ensure even spacing of each element on the panel. A laser-cut box finishes the project off nicely. The code is all available on GitHub. We’ve seen these kinds of tags used for things like weather stations. Not to mention conference badges.
While they’re probably rare as hen’s teeth in the US, there have been a few major stores around the world that have started rolling out electronic shelf labels for every item in the store. These labels ensure every item on a shelf has the same price as what’s in the store’s computer, and they’re all controlled by an infrared transceiver hanging on the store’s ceiling. After studying one of these base stations, [furrtek] realized they’re wide open if you have the right equipment. The right equipment, it turns out, is a Game Boy Color.
The shelf labels in question are controlled by a base station with a decidedly non-standard carrier frequency and a proprietary protocol. IR driver chips found in phones are too slow to communicate with these labels, and old PDAs like Palm Pilots, Zauruses, and Pocket PCs only have an IrDA chip. There is one device that has an active development scene and an IR LED connected directly to a CPU pin, though, so [furrtek] started tinkering around with the hardware.
The Game Boy needed to be overclocked to get the right carrier frequency of 1.25 MHz. With a proof of concept already developed on a FPGA board, [furrtek] started coding for the Game Boy, developing an interface that allows him to change the ‘pages’ of these electronic labels, or display customized data on a particular label.
There’s also a much, much more facepalming implication of this build: these electronic labels’ firmware is able to be updated through IR. All [furrtek] needs is the development tools for the uC inside one of these labels.
There’s a great video [furrtek] put together going over this one. Check that out below.