Trevor Beaton Shows Off the Flexibility of Adafruit's itsaSNAP with a Phone-Driven Weather Display
Linked to an Adafruit Matrix Portal S3 and its RGB LED matrix via Adafruit IO, this project showcases the iOS itsaSNAP app's potential.
Maker Trevor Beaton has written a guide to building your own LED matrix weather display — a project that handily acts as an introduction to Adafruit's itsaSNAP Apple iOS app, too.
"You can build a wonderful weather display using an Adafruit Matrix Portal S3 and a 64×32 RGB LED matrix," Beaton explains of the project. "Using CircuitPython, you can create a display that shows the current temperature and weather conditions using custom BMP [bitmap] graphics. The weather displayed is the same as your iPhone's weather so you don't need a separate (paid/subscription) weather service and no matter where you live, it will have the exact weather for your location."
Weather displays aren't a novel concept — we've covered plenty over the years, from hacks for IKEA OBEGRÄNSAD lamps and colour-shifting grids to a "smart girder" and a Raspberry Pi-powered touch-capable version — but Beaton's take on the concept leverages Adafruit's itsaSNAP mobile app. That's no small thing: where most weather displays rely on pulling data from a third-party application programming interface (API) over a direct connection, itsaSNAP can feed weather information from the smartphone directly to the display — using the same information sources as the phone itself.
Designed for use with the Adafruit IO cloud platform, itsaSNAP — compatible with Apple's iOS devices only — offers a code-free interface for pulling data from and pushing data to Adafruit IO. In the case of Beaton's weather display, it's used to pull weather data and send it to an Adafruit Matrix Portal S3 driver board, powered by the Espressif ESP32-S3 microcontroller running CircuitPython, for formatting and display on a connected 64×32 RGB LED matrix.
"itsaSNAP includes several actions for the Apple Shortcuts App, allowing you to integrate Adafruit IO functionality," Beaton explains. "This project focuses on sending current location weather data from your iPhone to an Adafruit IO feed. The Matrix Portal will attempt to fetch weather data every thirty minutes. There are multiple graphics that represent the conditions that might occur. There is a graphic for cloudy, sunny, rainy, or snowy days and a graphic for thunderstorms."
The full guide is available on the Adafruit Learn portal.