Fail Of The Week: Epic 312 Weeks Of Fixing A Broken Project

If a hacker guardian angel exists, then we’re sure he or she was definitely AWOL for six long years from [Aaron Eiche]’s life as he worked on perfecting and making his Christmas Countdown clock. [Aaron] started this binary clock project in 2016, and only managed to make it work as expected in 2022 after a string of failures.

In case you’d like to check out his completed project first, then cut the chase and head over to his Github repository for his final, working version. The hardware is pretty straightforward, and not different from many similar projects that we’ve seen before. A microcontroller drives a set of LED’s to show the time remaining until Christmas Day in binary format. The LEDs show the number of days, hours, minutes and seconds until Christmas and it uses two buttons for adjustments and modes. An RTC section wasn’t included in the first version, but it appeared and disappeared along the six year journey, before finding a spot in the final version.

The value of this project doesn’t lie in the final version, but rather in the lessons other hackers, specially those still in the shallow end of the pool, can learn from [Aaron]’s mistakes. Thankfully, the clock ornament is not very expensive to build, so [Aaron] could persevere in improving it despite his annual facepalm moments.

Continue reading “Fail Of The Week: Epic 312 Weeks Of Fixing A Broken Project”

Merry Christmas! Rip And Tear!

If you want a little mayhem on your Christmas tree, you can check out [Sprite_tm]’s tiny PC Christmas ornament. With 3D printing, that isn’t such a tall order, but [Sprite]’s does have a unique ability: it plays DOOM, as you can see in the video below.

The device uses an ESP32, and while [Sprite] had ported the iconic shooter to the microcontroller before, he decided to use a Game Boy port that is more lightweight instead. There were a few reasons for the choice, including the ability to do Bluetooth so you could connect controllers so you can play the game. The only catch was he had to pull off the flash memory and replace it with a larger one (see the second video below).

Granted, the screen is tiny, so it is sort of a novelty. But if you want to have a go, the files are all there. As you might expect, there is a tiny battery and the circuitry required to recharge it, as well. We’d probably make an adapter to let it charge from the Christmas lights, but that can wait for version 2.

The input device handling is a bit strange. Bluetooth BLE devices will automatically grab an input device that is in pairing mode. There is no provision for connecting using the “normal” Bluetooth mechanism. A fun project and you could use the case for some other tiny projects, too. A larger flash on an ESP32 has lots of possibilities, as well.

If you need a primer on the ESP32, we got it. If you want to play DOOM on something truly strange, try seven-segment displays.

Continue reading “Merry Christmas! Rip And Tear!”

Simple Christmas Tree Christmas Tree Ornament

When the only tool you have is a hammer, every problem looks like a nail. An LED ornament for the Christmas tree can be built in any manner of simple, easy implementations. You certainly don’t need an ARM Cortex M4 CPU running at 120MHz having a mouthful of three letter features like FPU, ETM, ETB, ECC, RWW, TCM, EIC, AES, CAN bus and much, much more. But [Martin Held] built a super simple LED Christmas tree ornament using the ATSAME51 series micro-controller, which he regularly works with and had on hand, and lots of bi-color LEDs. He already had schematic symbols and programmers for the device from other projects where he uses it more extensively, so putting it all together in time for the festive season was that much faster for him, despite the fact that the micro-controller was most likely the cheapest part of the BOM, besides the passives.

At this point it might be tempting to argue that it would have been so much simpler to use addressable LED’s, such as the WS2812B or the APA102C. You can drive them using a more basic micro-controller, and not require so many GPIO pins. But using such “smart pixel” LED’s for hand assembled prototypes can sometimes lead to unexpected results. If they are not stored in sealed tape/reel form, then storage conditions can have an adverse effect leading to dead pixels. And, they need a specific baking procedure before being soldered. Doing that for a few LEDs at home can be tricky.

So for the LED’s, he again went a bit off the beaten path, selecting to use three different color styles of bi-color LED’s with easy to hand-solder, 1206 footprints. This allows him to get a fairly random mix of colors in the completed ornament.

The LED array is pseudo-charlieplexed. One terminal of each LED goes to a GPIO pin on the micro-controller and the other terminal of all the LED’s are connected to a single complimentary pair of N-channel/P-channel MOSFETs — connected in totem-pole fashion. Depending on which MOSFET is switched on via a GPIO pin driving the gate pin high or low, the second terminal of each LED gets connected to either supply or ground. In combination with the GPIO pins being driven high/low, this allows the bi-color LED to be biased in either direction. Getting each LED to emit one color is simple enough — setting all LED GPIOs low, and MOSFET gate GPIO high will bias the LEDs in one direction. Reverse the GPIO logic, and the LEDs will be biased in the other direction. If this is done slow enough, the two colors can be differentiated easily. If the driving logic is made fast, changing states every 10us, the two separate colors merge to form a third hue. With some clever bit of code, he also adds some randomness in the GPIO output states, resulting in a more appealing twinkling effect. [Martin] does a detailed walk through in the video embedded below.

If you have the same bunch of parts lying around and wish to replicate the project, be warned that the KiCad source files will need some work to clean up errors — [Martin] was in a hurry and knew what he was doing so there are some intentional mistakes in the schematic such as using the same symbol for the N-channel and P-channel MOSFETs, and uni-directional LED symbol in place of the bi-directional one. And for programming, you will need one of these pricey pogo-pin style cables, unless you decide to edit the PCB before sending off the Gerbers.

[Martin] built just three of these bespoke ornaments, retaining one and giving away the other two to a neighbour and a co-worker. But if you would really like to build a tree ornament with addressable LEDs, then check out the Sierpinski Christmas Tree which can be cascaded to form an array of tree ornaments.

Continue reading “Simple Christmas Tree Christmas Tree Ornament”

Rheoscopic Holiday Ornaments

We had to look it up on Wikipedia – “Rheoscopic fluid means ‘current showing’ fluid. Such fluids are effective in visualizing dynamic currents in fluids, such as convection and laminar flow. They have microscopic crystalline platelets such as mica, metallic flakes, or fish scales, in suspension in a fluid such as water or glycol stearate.” And so it seems [Will Donaldson] has figured out a great way to Animate Christmas Ornaments using Rheoscopic Fluid, just in time for the holiday season.

Making the fluid is pretty simple, and uses just a few readily available materials – distilled water, rheoscopic fluid concentrate and your choice of food colouring. The hardware is dead simple too – clear, spherical baubles with lids and core-less DC motors such as used in mini and nano drones, to agitate the fluid. You can use cell phone vibration motors too, but [Will]’s experimentation suggests that the level of agitation is not a lot.

To make a bauble, you fill it with the fluid, hot glue the motor to the lid, close the lid such that the motor and its agitator are dunked in the fluid, and dab a generous amount of hot melt glue to seal it all shut. Then, hook it up to a suitable power supply and get enchanted by the mesmerising movements of the rheoscopic fluid in the bauble. The agitator is just a plain ol’ drone propeller forced in to a shape that is narrow enough to be pushed through the neck of the bauble. It’s a seasonal ornament, so don’t expect the motors to last long being submerged in the rheoscopic fluid. [Will]’s contraptions have not yet failed after a couple of days, and it may be safe to estimate that the motors may last about a week or two at most. Of course, YMMV depending on if you used distilled water or plain tap water and other factors.

As [Will] suggests, if you prefer slower swirls, or random agitation, then it’s best to hook up a micro-controller and motor driver for fancy effects. At this point, it may be tempting to think of embedding LED’s inside the baubles, but doing so reduces the rheoscopic effect since it relies on reflecting light shining on it from the outside. The video embedded after the break has all the build details.

It’s a great way to teach some science to the kids during the holidays and maybe even get them to help with the project. And don’t assume this is just a cheap Christmas trick. Artist Paul Matisse has invented an art device/technique based on rheoscopic fluids which he calls “Kalliroscope©”. He patented it in 1968, and has sold Kalliroscope artworks throughout the world since then. From his website “A Kalliroscope is a device for viewing fluid currents. Kalliroscopes are both works of art and intuitively educational displays of the scientific principles of fluid dynamics. They are glass and steel constructions containing a current-visualizing fluid.” We’re not sure how priceless those works of art are, but it’s safe to assume you need deep pockets to buy one. So go ahead, turn your Christmas Tree in to a work of Art !

Continue reading “Rheoscopic Holiday Ornaments”

A Relay-Based Pseudorandom Number Generator

There are a great variety of ways to build a random number generator, and similarly many ways to generate numbers that appear random, but in a pure mathematical sense generally aren’t. [Daniel Valuch] built a Christmas decoration that does the latter, displaying the results on an attractive flashing ornament.

The build relies on a 16-bit linear feedback shift register, or LFSR. The LFSR generates a stream of numbers, with each number dependent on the previous state of the register. Thus, the numbers generated are pseudorandom, not truly random, and depend on the initial seed value of the system. [Daniel] built the shift register using relays, which create a lovely clacking sound as the register operates, and LEDs, which glow depending on the values in the register.

The result is a cute Christmas ornament that blinks in a deterministic fashion, and has a great old-school look due to the exposed copper of the PCB and the retro LED colors used. The project also serves as a great way to learn about shift registers and basic relay logic, though the latter is rarely used these days for serious purposes. We’ve covered the topic before, too. Video after the break.

Continue reading “A Relay-Based Pseudorandom Number Generator”

These Ornaments Measure Christmas Cheer

The ornament projects we post around here tend to be simple, stand-alone projects. We are, however, well into the era of the Internet of Things (like it or not) and holiday ornaments need not be single, unconnected blinking objects. For Christmas this year, [Sean Hodgins]  came up with some connected DIY ornaments that respond to Christmas cheer.

[Sean Hodgins] had some beautiful PCBs done up in festive shapes and he hand-pastes and oven-solders the SMD components on both sides. Each one is battery powered and controlled by an ESP8266. LEDs and a button on the front of each ornament comprise the user interface. When the button is pressed, data is sent to a Phant server and a “Christmas Cheer” counter is incremented. Other ornaments, so long as they can connect to the Phant server, will periodically check the counter. If the Christmas Cheer has increased, the ornaments will play a tune and flash some lights.

The ornaments are open-source — [Sean Hodgins] posted the code and PCB designs on GitHub. They look great, and would be a good way to let people know you’re thinking of them over the holidays. Check out this light-up menorah or these lighted acrylic ornaments for more holiday fun!

Continue reading “These Ornaments Measure Christmas Cheer”

Christmas Tweetball

photo

The holidays are long over, but we’re still getting a smattering of holiday themed hacks. For this one, the [Han’s] family decided to make a Christmas bauble that relays their tweets to them!

They call it the Tweetbal which is Dutch for — well — Tweetball! Whenever someone tweets with the hashtag #tweetbal it gets displayed on the 20×4 serial LCD display. They’re using an Arduino Uno with an RN-XV WiFly module to receive and send the tweets to the display. A large white plastic ornament ball houses it all secured very firmly with our favorite adhesion method — duct tape. It’s a pretty simple project, but a great holiday hack if we do say so ourselves — plus it could be easily used for non-holiday purposes — like a desktop trinket twitter feed!

Stick around after the break to see its tweeting capabilities in action.

Continue reading “Christmas Tweetball”