Timeframe: The Little Desk Calendar That Could

Usually, the problem comes before the solution, but for [Stavros], the opposite happened. A 4.7″ E-Ink screen with integrated battery management and ESP32 caught his eye, and he bought it and started thinking about what he wanted to do with it. The Timeframe is a sleek desk calendar based around the integrated e-ink screen.

[Stavros] found the device’s MicroPython support was a little lackluster, and often failed to draw. He found a Platform.io project that used an older but modified library for driving the e-ink display which worked quite well. However, the older library didn’t support portrait orientation or other niceties. Rather than try and create something complex in C, he moved the complexity to a server environment he knew more about. With the help of CoPilot, he got some code that would wake up the ESP32 every half hour, download an image from a server, and then display it. A Python script uses a headless browser to visit Google Calendar, resize the window, take a screenshot, and then upload it.

The hardest part of the exercise was getting authentication with Google working reliably. A white sleek 3D printed case wraps the whole affair in an aesthetically pleasing shell. So far, this has been a great story of someone building something for themselves and using their strengths. Where’s the hack?

The hack comes when [Stavros] tried squeezing his calendar into a case that was too tight and cracked the screen. Suddenly a large portion of the screen wouldn’t draw. He turned what was broken into something new by mapping out the area that didn’t draw and converting the Python to draw weather information with Pillow rather than screenshot a webpage: clever reuse and a way to make good out of a bad accident.

The code is up on GitLab, and the 3D files for the case are available on Printables. You can also find the project on Hackaday.io, as it was an entry into our recently concluded Low-Power Contest. Unfortunately, while the Timeframe is pretty power efficient, it doesn’t last as long as this calendar with a 50-year battery life.

Sit Pretty On Would-Be Garbage With An Upcycled Chair

What’s the coolest thing about doing upholstery work? Aside from the fact that you end up with a new thing to sit on, sometimes the work only involves clever stapling, and no sewing is necessary. Such is the case with [wyldestyle]’s upcycled jeans chair, which started as a bare-wood swivel number from the dump. In fact, this project is almost completely made from recycled materials, except of course for those staples that hold it all together. And really, that heavy-duty stapler is likely the fanciest tool you’d need to make your own.

[wyldestyle] didn’t have any furniture foam, and we think that stuff is too expensive, anyway. So the padding treatment begins with a piece of thick Styrofoam that covers the seat screws and bolts. This is glued in place and trimmed down to match the contours of the chair’s seat and back.

Here’s where things gets tricky: the next step is wrapping over the stiff foam board with a few layers of that foam sheeting stuff that’s often used as packing material. This sheeting needs to be taut, but pull it too tight, and it will rip.

To add some loft to the chair, [wyldestyle] stretched and stapled the stuffing from an old pillow that was headed for the garbage. The final step is strategically scissoring jean scraps to fit, then stretching and stapling those to cover all the layers underneath. We like the way this chair looks, and would probably try to place pockets somewhere useful, like the back of the chair.

It’s a shame that so much denim goes to waste all over the world. There’s often a lot of life left in most of the fabric, which can be repurposed into all kinds of things, including eyeglasses frames using a wicked set of jigs.

New App Note Day: Internet Of Pillows

The Internet of Things is a cancer that consumes all reasonable expectations of technology, opens vast security holes we’ve never had to deal with before, and complicates life in the pursuit of quarterly gains from whatever technology startup is hot right now. We are getting some interesting tech out of it, though. The latest in the current round of ‘I can’t believe someone would build that’ is the Internet of Pillows. No, it’s not a product, it’s just an application note, but it does allow us to laugh at the Internet of Things while simultaneously learning about some really cool chips.

The idea behind this ‘smart’ pillow is to serve as a snoring sensor. When the smart pillow detects the user is snoring, a small vibration motor turns on to wake up the user. There’s no connectivity in this smart pillow, so the design is relatively straightforward. You need a microphone or some sort of audio sensor, you should probably have a force-sensitive resistor so you know the pillow is actually being used, and you need a vibration motor. Throw in a battery for good measure. Aside from that, you’re also going to need a microcontroller, and that’s where things get interesting.

This application note was written as a demonstration of what Dialog’s GreenPAC devices can do. We’ve seen these things before, and the idea behind these devices is something like a ‘modern-day PAL’ or ‘a really, really limited FPGA’. It’s a bit more than that, though, because the GreenPAC devices are mixed-signal, there are some counters and latches in there, and all the programming is done through a graphical IDE. If you need a small, low-power chip that only does one thing, the GreenPAC is right up your alley.

So, how does this device detect snoring? The code pulls data from the sound sensor every 30 ms, with a 5 ms time window. If this sound repeats again within six seconds, it’s assumed the user is snoring. The logic then turns on the vibration motor, greatly annoying whoever is sleeping. All of this is done through a graphical IDE, which I’m sure will draw the ire of some, but there really aren’t that many pins or that many LUTs on GreenPAC devices, so it’s never going to get too out of hand.

The GreenPAC is a very interesting family of parts that we don’t see too much of around here. That’s a shame, because for low-power applications that don’t need a lot of horsepower, the GreenPAC seems like it would be very useful. Slightly more useful than an Internet of Things pillow, at least.

Making Pictures Worth 1000 Words In Python

In a previous post, I showed how you could upload images into a Discord server from Python; leveraging the popular chat platform to simplify things like remote monitoring and push notifications on mobile devices. As an example, I showed an automatically generated image containing the statistics for my Battlefield 1 platoon which gets pushed to member’s devices on a weekly basis.

Automatically generated stats posted to Discord

The generation of that image was outside the scope of the original post, but I think it’s a technique worth discussing on its own. After all, they say that a picture is worth 1000 words. So that means a picture that actually contains words must be worth way more. Like, at least 2000, easy.

Being able to create images from your textual data can lend a bit of flair to your projects without the need to create an entire graphical user interface. By putting a text overlay on a pre-rendered image, you can pull off some very slick visuals with a minimum amount of system resources. So long as you have a way of displaying an image file, you’re good to go.

In this post I’ll quickly demonstrate how to load an image, overlay it with text, and then save the resulting image to a new file. This technique is ideal in situations where a display doesn’t need to be updated in real-time; visuals can be generated at regular intervals and simply displayed as static images. Possible uses include weather displays, “magic” mirrors, public signage, etc. Continue reading “Making Pictures Worth 1000 Words In Python”

The Happillow Project

[youtube=http://www.youtube.com/watch?v=ZPzD1vM7McM]

[Harandi] wrote to us to let us know about a project he’s working on to improve our nightly rest. This is the Happillow. The Happillow is an alarm clock, as well as a snore relief system. We’re not sure that the snoring bothers us so much, but we’re sure our significant others appreciate that part. While pillows exist that are supposed to cut down on snoring, they generally have a specific shape to position your head properly, which should cut down on the snores. [Harandi] points out that this might be embarrassing to the user as it is obvious to anyone looking at the bed that they have a snore reducing pillow. The Happillow detects the noise and agitates you to get you to reposition yourself. We have actually seen a very similar project in the past with the Interactive Pillow project.