Over the last decade or so, e-ink price tags have become more and more ubiquitous, and they’ve now reached the point where surplus devices can be found inexpensively on various websites. [Dmitry Grinberg] found a few of these at bargain-basement prices and decided to reverse engineer and hack them into monochrome digital picture frames.
Often, the most difficult thing about repurposing surplus hardware is the potential lack of documentation. In the two tags [Dmitry] hacked, not only are the labels not documented at all, one even has an almost-undocumented SoC controlling it. After some poking around and some guesswork, he was able to find connections for both a UART and an SWD debugging interface. Fortunately, the manufacturers left the firmware unprotected, so dumping it was trivial.
Even with the firmware dumped, code for controlling peripherals (especially wireless devices) is often inscrutable. [Dmitry] overcomes this with a technique he calls “Librarification” in which he turns the manufacturer’s firmware into libraries for his custom code. Once he was able to implement his custom firmware, [Dmitry] developed his own code to wirelessly download and display both gray-scale and two-color images.
Even if you’re not interested in hacking e-ink tags, this is an incredible walk-through of how to approach reverse-engineering an embedded or IoT device. By hacking two different tags with completely different designs, [Dmitry] shows how to get into these systems with intuition, guesswork, and some sheer persistence.
If you’d like to see some more of [Dmitry]’s excellent reverse-engineering work, take a look at his reverse-engineering and ROM dump of the PokeWalker. If you’re interested in seeing what else e-ink tags can be made to do, take a look at this weather station made from the same 7.4″ e-ink tag.
One of the biggest advantages of electronic paper is that it doesn’t require a constant power source to display a static image. Depending on the application, this can lead to a massive energy savings compared to more traditional display technologies. Of course, the electronics that actually drive the display are another story entirely. You need to reduce the energy requirements of the whole system if you really want to stretch your battery life.
So when [Giacomo Miceli] wanted to put together this solar powered e-paper photo frame, he had to come up with some creative ways to curb the energy consumption of the Raspberry Pi Zero that runs the show. While the 10.3 inch 1872 × 1404 panel would only require the occasional burst of power to flick over to a new image, the Pi would be a constant drain on the internal battery pack. Considering he wanted the frame to recharge from ambient light with an array of small solar panels, that simply wouldn’t do.
The solution came in the form of a PiJuice HAT and some scripts that decide how often the Pi is to be powered on based on the current battery level. If there’s enough power, it might be every hour or so. But the lower the charge, the longer the delay. When the energy situation is particularly dire, the Pi might only be turned on every couple of days. With the Pi off and the e-paper not drawing any power, all of the energy produced by the solar panels can be devoted to recharging the frame’s 1,000 mAh battery.
When the Pi does get booted up, it quickly connects to a server to download a new image and update the display. After that, it ascertains the current battery level and determines how long the PiJuice should wait before turning it back on. After these tasks are complete, it will turn itself off until the next scheduled event. All told, [Giacomo] says the Pi is only up and running for about a minute each time the image is refreshed on the e-paper. He says the system has been running for six weeks now, with the battery level occasionally dipping down to 40% or so before it climbs back up.
Admittedly the energy consumption of the frame could be cut drastically by replacing the Raspberry Pi with a simple microcontroller, but we appreciate the creativity. Besides, the power and flexibility afforded by the Pi means this frame could be taught quite a few new tricks with some updated software.
Over the last few years, the price of a good digital picture frame has dropped to the point that we don’t often see DIY versions anymore. As much as we might hate to admit it, it’s hard to justify building something yourself when the economies of scale have made it so you can buy the final product for less than the cost of the parts themselves. But of course, there are always fringe cases where building it might be the only way to get what you need.
Granted we’re not sure that [Tony Liu] actually needs a 1.8-inch digital picture frame, but we’re sure somebody out there does. The ST7735R display used in this project is a real TFT, so the color and refresh rate is pretty good; but with a resolution of just 128×160, we’d recommend keeping your expectations low in regards to visual fidelity.
What’s really interesting about this project is how low the part count is. All you need is the ST7735R display and the ESP8266 itself (or the development board of your choice, naturally). Even the 3D printed frame is technically optional. The display is driven by SPI, so with the power added in, that’s only eight wires that need to be soldered between the two devices. If you’re looking for an easy way to add a photo slideshow to a small device, say a conference badge, this is about as easy as it gets.
But where are the images coming from? You might think SPIFFS, but in this case [Tony] has converted the images to bitmaps and is loading them into the Arduino Sketch as a header file with PROGMEM. Helpfully, he provides the link for the tool he uses to convert the images into an array the graphics library can understand. This makes adding new images slightly time consuming, but we imagine if you have the need for something like this, it’s probably only showing a pretty specific set of images anyway.
If you’re looking for something bigger, or maybe just an excuse to put that dusty Raspberry Pi to use, you might be interested in one of the more substantial builds we’ve seen over the years.
Continue reading “A Minimal ESP8266 Digital Picture Frame”
For Hackaday readers which might not be so well versed in the world of home video gaming before the 1983 crash, the Vectrex was an interesting attempt at bringing vector graphics into player’s living rooms. Priced around $500 in today’s dollars, the machine was unique in that it included its own black and white CRT display rather than requiring the owner to plug it into their television. To spice things up a little bit, games would include a thin plastic overlay you could put over the screen to give the game faux colors. What can we say? It was the 1980’s.
Like many vintage gaming systems, the Vectrex still commands a devoted following of fans, some of which continue to find ways to hack and mod the system nearly 40 years after its release. One such fan is [Arcade Jason], who’s recently been fiddling with the idea of creating a modern take on the overlay concept using a hacked LCD display. While it’s still a bit rough around the edges, it does hold promise. He hopes somebody might even run with the idea and turn it into a marketable product for the Vectrex community.
[Jason] started by getting an old digital picture frame and tearing it down until he liberated the LCD panel. By carefully disassembling it, he was able to remove the backlight and was left with a transparent display. He then installed the panel over the display of the Vectrex, leaving the picture frame’s PCB and controls dangling off to the side. Extending the display’s ribbon cable should be easy enough for a more robust installation.
He then loaded the frame with random psychedelic pictures he found online, as well as some custom overlays which he quickly whipped up using colored blocks in an art program. In the video after the break, [Jason] shuffles through images on the frame using the buttons on the PCB while loading different demos to show the kind of visual effects that are possible.
While a neat concept, there are a couple of issues that need to be resolved before this could really be put into practice. For one, the LCD panel isn’t the proper size or aspect ratio to match the Vectrex display, so it doesn’t cover the whole CRT. It’s also rather difficult to select images to show on the LCD panel; an improved version might use something like the Raspberry Pi to load images on the panel while exposing a control interface on a secondary screen of some type.
This isn’t the first time [Jason] has experimented with the Vectrex, or even the first time he’s tried to add color to the classic system. We’re interested to see what he comes up with next.
Continue reading “Digital Picture Frame Turned Vectrex Overlay”
Digital photo frames these days require you to manage the photos stored on it or the cloud-based service tied to the frame’s manufacturer. [Henric Andersson] realized that he and his wife take a lot of photos but find little time to go through them — like photo albums of days past — and add them to any photo frame-like appliance or service. Since Google photos can do a lot of the sorting for them, he decided to incorporate that into a digital photo frame.
Using his wife’s old Viewsonic 24” 1080p monitor, he cracked it open and incorporated the screen into a 24×16 distressed wood frame — reinforcing it to account for the bulky, built-in power supply with pieces of HDF and a lot of glue. The brains behind this digital photo frame is a Raspberry Pi 3 he received from a friend. To turn the whole on/off, he built a small circuit but it turned out it wasn’t strictly necessary since everything started just fine without it.
While functionally complete, it needed one more addition. A little thing called ‘color temperature calibration’ — aka white balance.
Finding the TCS34725 RGB color sensor by Adafruit — and readily available code for easy integration — [Andersson] puzzled over how to add it to the frame. To disguise it while retaining its effectiveness, he had to glue it to the rear of the frame after drilling a hole in the top piece and sticking a plastic stick through the hole to let light through to the sensor.
To get the photos to display, [Henric Andersson] says all he did was add a few queries to Google Photos and it will display all your relevant photos that have been synced to the service. For a breakdown of that side of this hack, check out his other post with the details.
While Google Photos deftly displays photos of various orientations, sizes, and aspect ratios, we’ve featured a digital photo frame that handles the task a little differently.
[Tim] was tired of compromising his portrait-oriented digital photos by shoehorning them into landscape-only frames. Unable to find a commercial solution, he built his own rotating digital photo frame from a 27″ LCD TV.
It uses a Raspi 3 to find [Tim]’s pictures on a giant SD card. He originally wanted to have the Pi pull pictures from Google Photos and display them randomly, but the API doesn’t work in that direction. Instead, a Python script looks at the pictures on the SD card and determines whether each is landscape or portrait-oriented. If a picture was taken in portrait-mode, the display will rotate 90 degrees. Rotation is handled with an Arduino, a stepper motor, and some 3D-printed herringbone gears. The first version was a bit noisy, so [Tim] re-printed the motor mount and the pinion gear out of flexible filament.
[Tim] designed the mount and frame himself and laser-cut the pieces out of birch plywood. We like that he accounted for the front-heaviness and that he covered the high voltage circuitry with acrylic to mitigate the risk of shock. All the code and design files are available on his project page. Make the jump to see a brief demonstration followed by a walk-through and stay for the six-minute slide show.
Continue reading “Rotating Frame Will Change Your View Of Vertical Images”
HaD reader [Greg] just finished an LCD picture frame project he’s been working on for a while. This is no ordinary photo display. His brother came up with the idea of having a device to display photos that could be changed remotely. [Greg] gave it some thought and came up with a plan; use a Raspi as the brains, connect to the internet via WiFi and display photos stored in a specific Google Drive folder. Any authorized user can upload photos remotely to the frame so the frame-owner has a constant stream of new photos to view.
Of course, using an off-the-shelf picture frame may have been too easy. Instead [Greg] decided to start with an old computer monitor and wrap it in a wooden frame so it looks good. Mounted to the back of the LCD is a Raspberry Pi with a USB WiFi dongle. The monitor runs at 14 VDC and luckily has an external power supply. Since the Pi runs at 5 V, a buck converter taps into the LCD’s input power and outputs a Pi-happy 5 volts.
This project doesn’t stop with displaying photos! The user can also switch to a weather view. The weather image displayed is generated from weather data pulled from the internet in the exact same manor used by folks who make stand-alone weather displays out of old Kindles. Oh yeah, switching between photos and weather is done by wireless remote! On the frame unit itself there is only one button, but it has 3 functions: A quick press turns the screen off, a short hold syncs with Google Drive and a long hold powers off the RaspPi.
If you’d like to make your own frame, [Greg] has graciously made all his scripts available for download…. not to mention his very detailed build log.