Minimal MQTT With Micropython

I have been meaning to play around with MQTT for some time now, and finally decided to take the plunge one evening last week. I had three cheap home temperature and humidity sensors, and was bothered that they often didn’t agree. Surprisingly, while the analog one had a calibration adjustment in the back, I have no idea how to calibrate the two digital ones. I took this as a sign that it was time to learn MQTT and be able to install my own, accurate sensors. Of course, I began by ordering the cheapest sensors I could find, but I can always upgrade later on.

Three Cheap Sensors

While we have written quite a bit about MQTT in Hackaday, I had to go all the way back to 2016 to find this introductory four-part series by Elliot Williams. Five years is a long time in the tech world, but I decided to give it a try anyway. Continue reading “Minimal MQTT With Micropython”

IKEA Shelf Becomes Kid Friendly MP3 Player

IKEA’s flatpack furniture has long been popular among makers for its modular nature and low cost, making it ideal for whacky experiments and custom builds. [Claus] is one such person, and built a fun MP3 player for his kids out of a basic LACK shelf.

The music is handled by an NodeMCU ESP8266, working in concert with a VS1053 audio board. The VS1053 is a highly capable chip, capable of decoding a variety of raw and compressed audio formats as well as MIDI, but here it’s used to read SD cards and play MP3s. An RC522 is used to read RFID cards to trigger various tracks, allowing kids to choose a song by simply placing a tag on the shelf. A cheap PAM8302 amplifier and speaker are used to output the music. All the hardware is installed neatly inside the LACK shelf, an easy job thanks to the primarily cardboard construction.

RFID cards are more fun than we normally give them credit for, and we’ve seen a few builds along similar lines to this one. Video of [Claus’s] child rocking out after the break.

Continue reading “IKEA Shelf Becomes Kid Friendly MP3 Player”

Serving The Feline Masters: A Chair To Follow The Sunny Spot

Terry Pratchett once wrote, “In ancient times cats were worshipped as gods; they have not forgotten this”. [Jonathan]’s cat has clearly not forgotten, and makes it loudly known whenever her favorite chair needs to be moved to stay in the spot of sunlight. He was looking for a fun hack anyway, so he decided to give in to her majesty’s demands, and automated the task.

[Jonathan] first considered adding motorizing the chair itself, but decided to keep it simple and just drag the chair across the room with a spool attached to a motor. The rope spool was attached to a small geared DC motor, mounted on a salad bowl base, and connected to an ESP8266 via a motor driver. The ‘8266 is running  NodeMCU with a web server that accepts simple motor commands through a RESTful API. This setup can’t reset the chair to it’s starting position at the end of the day, but this is a small price to pay for simplicity. The motor was a bit underpowered, but it only needed to move the chair in small distances at a time, so [Jonathan] removed the chair’s back to reduce the weight, and upped the motor voltage.

Determining when and how far to move the chair is the second part of the challenge. [Jonathan] considered a simple lookup table for the time of day, but the motor’s movement wasn’t consistent enough. The final solution was a set of three BH1750 digital ambient light sensors to give feedback. A pair of sensors on the chair determines its position relative to the sunny spot, by comparing light levels to a reference sensor mounted in the window. These light sensors are also attached to NodeMCUs, and send movement commands to the winding unit as necessary.

Continue reading “Serving The Feline Masters: A Chair To Follow The Sunny Spot”

Weather Display Is Cloudy With A Chance Of ESP8266

[Mukesh Sankhla] writes in to share this unique weather display that looks to be equal parts art and science. Rather than show the current conditions with something as pedestrian as numbers, this device communicates various weather conditions to the user with 25 WS2812B LEDs embedded into the 3D printed structure. It also doubles as a functional planter for your desk.

So how does this potted plant tell you if it’s time to get your umbrella? Using a NodeMCU ESP8266 development board, it connects to openweathermap.org and gets the current conditions for your location. Relative temperature is conveyed by changing the color of the pot itself; going from blue to red as things heat up. If there’s rain, the cloud over the plant will change color and flash to indicate thunder.

[Mukesh] has made all of the STL files for the printed components available, as well as the source code for the ESP8266. You’ll need to provide your own soil and plant though, there’s only so much you can send over the Internet. Incidentally, if the clever way he soldered these WS2812B modules together in the video catches your eye, you’ll really love his “RGB Goggles” project that we covered earlier.

Continue reading “Weather Display Is Cloudy With A Chance Of ESP8266”

Clear Some Space And Build A Cosmo Clock

Like many of us, [Artistikk] is inspired by astronauts and space travel in general. To keep the inspiration coming, he made the Cosmo Clock — a sleek little clock that changes color whenever an astronaut is launched into space.

As awesome as space is, we’re inspired by the amount of Earth-saving reuse going on in this project. The actual time-telling is coming from a recycled wristwatch movement. [Artistikk] cut a bigger set of hands for it out of a plastic container, and used the lid from another container for the clock’s body.

The launch inquiries are handled by an ESP8266, which uses a Blynk app and some IFTTT magic to get notified whenever NASA yeets an astronaut into space. Then the ESP generates random RGB values and sends them to a single RGB LED. The clock body is small enough that a single LED is bright enough to light up all the parts that aren’t blacked out with thick paper. In case you’re wondering, the pattern around the edge isn’t random, it’s Morse code for ‘sky’, but you probably already knew that, right? Make a dash past the break to take the tour.

Clocks that wind up in space are much more complicated. Check out this tear-down of the clock from a late-90s Soyuz spacecraft.

Continue reading “Clear Some Space And Build A Cosmo Clock”

Viewing Countrywide Weather At A Glance

For his latest project, weather display aficionado [Richard] has put together a handsome little device that shows the temperatures recorded at nine different airports located all over the British Isles. Of course the concept could be adapted to wherever it is that you call home, assuming there are enough Internet-connected weather stations in the area to fill out the map.

The electronics are fairly minimal, consisting of a NodeMCU ESP8266 development board, a few seven segment LED display modules, and a simple power supply knocked together on a scrap of perfboard. As you might expect, the code is rather straightforward as well. It just needs to pull down the temperatures from an online API and light up the displays. What makes this project special is the presentation.

As [Richard] shows in the video after the break, the key is a sheet of acrylic that’s been sanded so it diffuses the light of 42 LEDs that have been painstakingly installed in holes drilled around the edge of the sheet. Combined with a printed overlay sheet, this illuminates the map and its legend in low-light conditions. It’s a simple technique that not only looks fantastic, but makes the display easy to read day or night. Definitely a tip worth mentally filing away, as it has plenty of possible applications outside of this particular build.

With his projects, [Richard] has shown himself to be a master of unique and data-rich weather displays, and a great lover of the iconic seven segment LED display. While his particular brand of climate data overload might not be for everyone, you’ve got to admire his knack for visualizing data.

Continue reading “Viewing Countrywide Weather At A Glance”

Table Tennis Ball Lamp Serves Up Style

Although RGB LEDs diffused by ping pong balls will probably never stop being cool, [thomasj152] feels that flat panels of balls have become a bit of a tired concept. After a lot of effort and two complete builds, he has spun up an 80-ball spherical lamp. The results are positively glowing!

All the balls are connected together with some clever 3D printed pieces that were inspired by the classic soccer ball layout of hexagons and pentagons. [thomasj152] chose this shape because it’s fairly easy to code animation sequences for it.

The design also breaks down nicely into two halves, which makes it easier to wire. All 80 of the balls are controlled with a single NodeMCU ESP8266 development board.

This stranded version is the second lamp [thomasj152] built. The first one used the same soccer ball style, but had RGB LED strips instead, and the balls were wrangled with laser-cut support pieces. Strips lay much flatter than strands do, leaving the inside tidy and spacious. Unfortunately, the LED strips got fried accidentally, which is extra sad because the strips version looks like way more work.

The bright spot here is that [thomasj152] can now provide instructions for both versions. He even has code that cycles through each pentagon and hexagon section, lighting them up one at a time for testing and sanity checks. Roll past the break for a walk-through video that shows both versions and explains the differences.

Got a bunch of wall space begging for blinkenlights? Apparently it’s possible to throw together a working 300-ball video wall in less than 24 hours. Who knew?

Continue reading “Table Tennis Ball Lamp Serves Up Style”