We love it when someone takes inspiration from one of our posts and comes up with their own twist on it. [Matthew] liked one builds he saw on Hackaday so much, he built his own LED desktop Xmas tree!
[Matthew] was inspired by [designer2k2]’s DIY desktop Xmas tree that was posted in October. To get started, he found a set of concentric WS2812 rings over on Ali Express. The five rings total 93 LEDs, plus a single WS2812 for the top of the tree. He also got a laser cut tree model from Thingiverse and had it cut, combining the LED rings with the tree in the final product
The whole thing running on a Digispark USB Development Board from DigiStump, the same as the original project. There aren’t many details in the video, but [Matthew] has put links to where he got the rings and the tree, the laser cutting service, a link to the DigiStump website as well as a link to [designer2k2]’s original tree project. There’s no source code yet, but [Matthew] says a link to it is coming along with some more pictures.
The vintage aesthetic is more popular than ever, and while things like rotary phones aren’t particularly useful anymore, there’s a lot of fun to be had using them in new and inventive ways. For this project, [Sander] built an attractive table lamp out of a Siemens rotary phone.
Switched off, the lamp appears to be nothing more than a phone with its handset floating in midair. However turn the dial, and LEDs mounted in the receiver begin to glow. Taking things a step further as good hackers do, [Sander] used a motorised potentiometer to control the LED brightness with a NodeMCU board featuring the ESP8266. This allows the LEDs to be dimmed either by hand, or by a smartphone connected over WiFi, without the dial getting out of sync.
By using a dual H-bridge setup, the NodeMCU is able to both control the motorized pot as well as generate an AC signal to activate the original bell in the phone, which adds a whole lot of nostalgia points. Fitting the motorized pot into the phone did lend some challenges but that didn’t slow [Sander] down – they simply used a cheap universal joint to allow the motor to connect to the rotary dial off-axis. A great trick to keep in your back pocket.
For the haunting floating effect, [Sander] used a meter of 4 mm brass rod, bending it into shape to hold up the handset. This was used as a ground, and along with a couple of extra wires for power, was covered in a black textile sheath recovered from another electrical cable. [Sander] tells us it wasn’t the easiest thing to pull off, but we definitely agree that the effect is totally worth it.
The WS2812 is an amazing piece of technology. 30 years ago, high brightness LEDs didn’t even exist yet. Now, you can score RGB LEDs that even take all the hard work out of controlling and addressing them! But as ever, we can do better.
Riffing on the ever popular Adafruit NeoPixel library, [Harm] created the WS2812FX library. The library has a whole laundry list of effects to run on your blinkenlights – from the exciting Hyper Sparkle to the calming Breathe inspired by Apple devices. The fantastic thing about this library is that it can greatly shorten development time of your garden-variety blinkables – hook up your WS2812s, pick your effect, and you’re done.
[Harm]’s gone and done the hard yards, porting this to a bevy of platforms – testing it on the Arduino Nano, Uno, Micro and ESP8266. As a proof of concept, they’ve also put together a great demonstration of the software – building some cute and stylish Christmas decorations from wood, aluminium, and hacked up Christmas light housings. Combining it with an ESP8266 & an app, the effects can be controlled from a smartphone over WiFi. The assembly video on YouTube shows the build process, using screws and nails to create an attractive frame using aluminium sheet.
This project is a great example of how libraries and modern hardware allow us to stand on the shoulders of giants. It’s quicker than ever to build amazingly capable projects with more LEDs than ever. Over the years we’ve seen plenty great WS2812 projects, like this sunrise alarm clock or this portable rave staff.
As always, blink hard, or go home. Video after the break.
[Tim]’s Dice10 is an exercise in minimalism. Building an electronic dice using an ATtiny10 with code that fits within 1kB is not too difficult. Charlieplexing the LED’s would have used three of the four available GPIO pins. [Tim] upped the game by using just two GPIO pins to drive the seven LED’s for the dice. A third GPIO is used as a touch button input. Besides the ATtiny and the LED’s, the only other component used is a capacitor across the supply inputs.
The LED’s are grouped in three pairs of two LED’s and a single centre LED. Usually, Charlieplexed LED’s are connected across pairs of GPIO pins. But his scheme includes connections to the 5V and GND terminals, besides the two GPIO pins. Building a truth table makes it easy to figure out what’s going on.
STATE PB2 PB0 LED's
1 Z Z --
2 L Z LED 1/2
3 H Z LED 3/4
4 Z L LED 5/6
5 Z H --
6 H L LED9
7 L H --
8 H H --
9 L L --
Only the logic states used are listed in the table. It’s possible to add two more LED’s between PB0 and GND and one more anti-parallel with LED9, making a total of 10 LED’s driven by two pins. That’s quite a hack. The important thing here is to have two LED’s in series in the arms that connect to either 5V or GND.
[Tim] has posted the code and hardware source files on his Github repo, and his blog post has some additional details on how he solved the problem.
If you’re looking for more inspirations on minimal dice designs, check this “PIC powered pair of electronic dice” which uses a PIC 12F629 with five outputs driving a pair of 7 pips to make a dual dice.
If you have a cool project in mind, there is still plenty of time to enter the 1 kB Challenge! Deadline is January 5, so check it out and fire up your assemblers!
It’s that time of the year again when you gotta start worrying if you’ve been naughty enough to not receive any gifts. Hopefully, Blinky Lights will appease St. Nick. Grab a strip of RGB LEDs, hook them up to an Arduino and a Power supply, slap on some code, and Bob’s your Uncle. But if you want to retain your hacker cred, you best do it the hard way. Which is what [roddersblog] did while building his Christmas Starburst LED Stars this year — and bonus points for being early to the party.
For starters, he got panels (as in PCB panels) of WS2812 boards from eBay. The advantage is it lets you choose your own pitch and strand length. The flip side is, you need to de-panel each board, mount it in a jig, and then solder three lengths of hook up wire to each LED. He planned for an eight sided star with ten LED’s each. And he built three of them. So the wiring was, substantial, to say the least. And he had to deal with silicone sealant that refused to cure and harden. But nothing that some grit and determination couldn’t fix.
For control, he choose the PIC16F1509 microcontroller. This family has a feature that PIC calls the “Configurable Logic Cell” and this Application Note describes how to use CLC to interface the PIC to a WS2811. He noticed processing delays due to C code overheads that caused him some grief. After some experimentation, he re-wrote the entire program in assembly which produced satisfactory results. You can check out his code on the GitHub repository.
Also well worth a look, he’s got a few tricks up his sleeve to improve the quality of his home-brew PCB’s. He’s built his own UV exposure unit with timer, which is an interesting project in itself. The layout is designed in Eagle, with a flood fill to minimize the amount of copper required to be etched away. He takes a laser print of the layout, applies vegetable oil to the paper to make it more translucent to UV, and doubles up the prints to get a nice contrast.
Once the sensitized board has been exposed in the UV unit, he uses a weak but fresh and warm solution of Sodium Hydroxide as a developer to remove the unexposed UV photo-resist. To etch the board, he uses standard Feric Chloride solution, which is kept warm using an aquarium heater, while an aquarium air-pump is used to agitate the solution. He also describes how he fabricates double sided boards using the same technique. The end result is quite satisfying – check out the video after the break.
A proper battlestation — or more colloquially, computer desk — setup can sometimes use a bit of technical flair to show off your skills. [fightforlife2] has shared their DIY ambilight monitor backlighting that flows through different colours which mimic what is displayed on the screen.
[fightforlife2]’s setup uses fifty RGB LEDs with individual controllers that support the FastLED library, regulated by an Arduino Nano clone — although any will suffice. The power requirement for the display was a bit trickier, ultimately requiring 3 amperes at 5V; an external power brick can do the trick, but [fightforlife2] also suggests the cavalier solution of using your computer power supply’s 5V line — adding the convenience of shutting off the ambilight display when you shut down your PC!
There’s something about clocks — sooner or later, every hacker wants to build one. And we end up seeing all kinds of display techniques being used to show time. For the simplest of builds, 7-segment display modules usually get dug up from the parts bin. If you have a bunch of “smart” LED’s (WS2812’s, APA102’s), then building your own custom 7-segment modules isn’t too difficult either. [rhoalt] had neither, but he did have several 8 LED Neopixel rings lying around. So he thought of experimenting with those, and built a ‘Binoctular’ LED clock which uses the Neopixel rings as 7 segment displays.
Each digit is made using one pair of Neopixel rings, stacked to form a figure of eight. All the digits are composed of arcs, so readability isn’t the best but it’s not hard either. [rhoalt] does mention that the display is easier to read via blurred camera images rather than visually, which isn’t surprising. We’re long used to seeing numbers composed of straight line segments, so arc segmented digits do look weird. But we wouldn’t have known this if [rhoalt] hadn’t shown us, right ? Maybe a thicker diffuser with separator baffles may improve the readability.
The rest of the build is pretty plain vanilla — an Arduino Nano clone, a DS3231 RTC, a Lithium battery, and some buttons, all housed together in a laser cut enclosure which follows the figure of eight design brief. And as usual, once you’ve built one, it’s time to improve and make a better version.