SmallTV Hacking With Surprisingly Little Fuss

We’ve seen the GeekMagic SmallTV line of devices before — these cheap gadgets combine a microcontroller and a display in a little plastic case that can be used to show the time or weather. Powered by either an ESP8266 or an ESP32, the things could easily pass for a hobby build if it wasn’t for their professionally produced enclosures. In fact, we wouldn’t be surprised if GeekMagic lifted the idea from an existing DIY project.

As you might expect we’ve seen several hacks for these devices already, which usually involves replacing the stock firmware. But this latest approach is unique in that you don’t need to mess with the stock software, nor do you need to break out the soldering iron. By leveraging a built-in photo viewer function of the SmallTV [Yongha Kim] shows how you can get the gadget to display pretty much whatever you want.

The trick here is that the image is being generated by a machine on the network, say your desktop or server, and being pushed over to the SmallTV over HTTP. In this example the image is being generated in Python with the Pillow library, and [Yongha] has it showing Claude and Codex usage data, but you could really approach this however you wish.

All you need to do is create a 240×240 image and shoot it over to the device, so you’re free to come up with whatever sort of visuals you’d like. It even supports GIF if you’d like to work animation into it. The content can of course be whatever information you’re interested in showing, and it can be generated by whatever programming language or tool you’re most comfortable with. It’s a fascinating proof of concept, and now that the method has been demonstrated we’re interested to see where the community can take it.

If this all sounds a little too easy for your tastes, don’t worry. There’s a plenty deep rabbit hole you can dive into should you elect to replace the device’s firmware entirely.

Retro Weather Display Acts Like It’s Windows 95

Sometimes you really need to know what the weather is doing, but you don’t want to look at your phone. For times like those, this neat weather display from [Jordan] might come in handy with its throwback retro vibe.

The build is based around the ESP32-2432S028—also known as the CYD, or Cheap Yellow Display, for the integrated 320 x 240 LCD screen. [Jordan] took this all-in-one device and wrapped it in an attractive 3D-printed housing in the shape of an old-school CRT monitor, just… teenier. A special lever mechanism was built in to the enclosure to allow front panel controls to activate the tactile buttons on the CYD board. The ESP32 is programmed to check Open-Meteo feeds for forecasts and current weather data, while also querying a webcam feed and satellite and radar JPEGs from available weather services. These are then displayed on screen in a way that largely resembles the Windows 95 UI design language, with pages for current conditions, future forecasts, wind speeds, and the like.

We’ve seen some fun weather displays over the years, from graphing types to the purely beautiful. If you’ve found a fun way to display the weather (or change it) don’t hesitate to notify the tipsline. Particularly in the latter case.

A photo of the cats and the generated image

The Cutest Weather Forecast On E-Ink And ESP32

There’s a famous book that starts: “It is a truth universally acknowledged that a man in possession of a good e-ink display, must be in want of a weather station.” — or something like that, anyway. We’re not English majors. We are, however, major fans of this feline-based e-ink weather display by [Jesse Ward-Bond]. It’s got everything: e-ink, cats, and AI.

The generated image needs a little massaging to look nice on the Spectra6 e-ink display.

AI? Well, it might seem a bit gratuitous for a simple weather display, but [Jesse] wanted something a little more personalized and dynamic than just icons. With that in the design brief, he turned to Google’s Nano Banana API, feeding it the forecast and a description of his cats to automatically generate a cute scene to match the day’s weather.

That turned out to not be enough variety for the old monkey brain, so the superiority of silicon — specifically Gemini–was called upon to write unique daily prompts for Nano Banana using a random style from a list presumably generated by TinyLlama running on a C64. Okay, no, [Jesse] wrote the prompt for Gemini himself. It can’t be LLM’s all the way down, after all. Gemini is also picking the foreground, background, and activity the cats will be doing for maximum neophilia.

Aside from the parts that are obviously on Google servers, this is all integrated in [Jesse]’s Home Assistant server. That server stores the generated image until the ESP32 fetches it. He’s using a reTerminal board from SeedStudio that includes an ESP32-S3 and a Spectra6 colour e-ink display. That display leaves something to be desired in coloration, so on top of dithering the image to match the palette of the display, he’s also got a bit of color-correction in place to make it really pop.

If you’re interested in replicating this feline forecast, [Jesse] has shared the code on GitHub, but it comes with a warning: cuteness isn’t free. That is to say, the tokens for the API calls to generate these images aren’t free; [Jesse] estimates that when the sign-up bonus is used up, it should cost about fourteen cents a pop at current rates. Worth it? That’s a personal choice. Some might prefer saving their pennies and checking the forecast on something more physical, while others might prefer the retro touch only a CRT can provide. 

Build Yourself A Graphing Weather Display

These days, Internet connectivity is ubiquitous, so you can look up live weather data on just about any device around you. Regardless, [Jozerworx] wanted a simple, clean, independent weather display, and came up with this simple design. 

The build is based on the Lilygo T5 EPD devboard, which combines an ESP32-S3 microcontroller with a nice 4.7-inch e-paper display. This display has the benefit that it only uses power when it’s being updated, making it particularly suitable to run off a battery for extended periods of time. Meanwhile, the ESP32 and its inbuilt Wi-Fi connectivity allow it to query the internet for updated weather forecasts. Weather data is sourced via the OpenWeather API, which [Jozerworx] notes comes with the caveat of requiring an API key. It’s a little fussy, but if you want good weather data, there are few easier ways to get it. The display shows a forecast for the next five days, while also showing graphs of ambient temperature and humidity along with useful information like the sunset and sunrise schedule.

Files are on Github for those eager to learn more. [Jozerworx] also notes that getting started with the display is particularly easy with the inclusion of a setup mode. This allows the display to act as a Wi-Fi access point with a web page that you use enter your home Wi-Fi connection details.

We’ve featured a great many charming weather displays over the years, too. If you’re working to plot, chart, or even predict the weather—don’t hesitate to show us your cool projects over on the tipsline!

Continue reading “Build Yourself A Graphing Weather Display” →

ESPTimeCastVFD

ESP32 Invades Old TV Box: Forecast More Than Just Channels

Obsolete hardware is all around us, and some of it has some pretty interesting tech buried within. One such device is an old Belgacom TV Box. Instead of using the ubiquitous LCD screen, it uses a VFD display for its user interface, and [Jean] has taken control of it with the ESPTimeCastVFD project.

Inside this box is a mix of two different 7-segment displays, which he uses to show the time and date, and 12 VFD displays, which are used to show weather data. To get the display working, the box was taken apart, and there were a few different areas [Jean] had to tap into: power for the soon-to-be-embedded ESP32-WROOM-32, as well as tying into the SPI lines to control the VFD. [Jean] also needed a 3.3V to 5V level shifter, and for this he used a 74LS125N dating all the way back to 1978.

The ESPTimeCast project, which we’ve featured here before, handles a lot of the time display and weather forecast shown on the front panel. However, [Jean] did have to add support for the VFD display, as well as adding wind speed to the display—as one of his uses for this is to judge the day’s suitability for flying RC planes. Once powered up, the ESP32 hosts a WiFi access point, allowing you to connect to it and set the configuration of the device, such as location, WiFi credentials, what displays you want to see, and many more. Thank you [Jean] for sending in your hack, saving this device from a landfill by turning it into a personalized display! Be sure to check out some of our other weather displays we’ve featured!

Continue reading “ESP32 Invades Old TV Box: Forecast More Than Just Channels” →

A weather forecast is shown on a blue monochrome cathode ray tube display. It is displaying current conditions, and displays a “The Weather Channel” graphic in the top left corner.

A CRT Display For Retro Weather Forecasting

It would be hard to find any electronics still in production which use CRT displays, but for some inscrutable reason it’s easy to find cheap 4-inch CRTs on AliExpress. Not that we’re complaining, of course. Especially when they get picked up for projects like this Retro CRT Weather Display from [Conrad Farnsworth], which recreates the interface of The Weather Channel’s WeatherStar 4000+ in a suitably 90s-styled format.

The CRT itself takes up most of the space in the enclosure, with the control electronics situated in the base behind the display driver. A Raspberry Pi Zero W provides the necessary processing power, and connects to the CRT through its composite video output.

A custom PCB plugs into the GPIO header on the Raspberry Pi and provides some additional features, such as a rotary encoder for volume and brightness display, a control button, a serial UART interface, and a speaker driver. The design still has one or two caveats: it’s designed to powered by USB, but [Conrad] notes that it draws more current than USB 2.0 can provide, though USB-C should be able to keep up.

On the software side, a Python program displays a cycle of three slides: local weather, regional weather, and a radar display. For the local and regional weather display graphics, [Conrad] created a static background image containing most of the graphics, and the program only generated the dynamic components. For the radar display, the regional map’s outlines come from Natural Earth, and a Python program overlays radar data on them.

We’ve seen other attempts at recreating the unique style of the WeatherStar system, but nothing quite beats the real thing.
Continue reading “A CRT Display For Retro Weather Forecasting” →

Inkycal Makes Short Work Of E-Paper Dashboards

The e-paper “dashboard” is something we’ve seen plenty of times here at Hackaday. Use it to show your daily schedule, the news, weather, maybe the latest posts from your favorite hardware hacking website. Any information source that doesn’t need to be updated more than every hour or so is a perfect candidate. All you’ve got to do is write the necessary code to pull  down said data and turn it into a visually attractive display.

Well, that last part isn’t always so easy. There are plenty of folks who have no problem cobbling together a Raspberry Pi and one of the commercially available e-paper modules, but writing the software to turn it into a useful information center is another story entirely. Luckily, Inkycal is here to help.

This open source project uses Python to pull information from a wide variety of sources and turns it into an e-paper friendly dashboard. It works with Waveshare displays ranging from 4.2 inches all the way up to the massive 12 inch tricolor panels. While it could theoretically be deployed on any operating system running a modern version of Python, it’s primarily developed to be run under Linux and on the Raspberry Pi. All of the versions of the Pi are supported, so no need to spring for the latest and greatest model. In fact, the notoriously pokey Raspberry Pi Zero is their recommended platform thanks to its low power consumption.

With Inkycal on the Pi — they even provide a pre-configured SD card image — and the e-paper display hooked up, all you need to do is pick which sources you want to use from the web-based configuration page. Look ma, no code!

Not feeling like putting the hardware together either? Well, we might wonder how you’ve found yourself on Hackaday if that’s the case. But if you really would rather buy then build, you can get a pre-built Inkcal display right now on Tindie.