Dumb Down Your Xiaomi Smart Lamp With A Custom Firmware

Undoubtedly, the ESP8266’s biggest selling point is its WiFi capability for a ridiculously low price. Paranoid folks probably await the day its closed-source firmware bits will turn against humanity in a giant botnet, but until then, hobbyists and commercial vendors alike will proceed putting them in their IoT projects and devices. One of those devices is the Yeelight desk lamp that lets you set its color temperature and brightness via mobile app.

[fvollmer] acquired such a lamp, and while he appreciated its design and general concept, he wasn’t happy that it communicates with external servers. So he did the only reasonable thing and wrote his own firmware that resembles the original functionality, but leaves out the WiFi part. After all, the ESP8266 has still a lot to offer in its core essence: a full-blown 32-bit microcontroller with support for the most common, hobbyist-friendly SDKs.

The lamp’s color temperature and brightness are set with a rotary encoder / push button combo switch, and the LEDs themselves are controlled via PWM. All things considered, it’s a rather straightforward endeavour, for which [fvollmer] chose the standalone C SDK. And in the end, it’s not like he’s unreasonably cautious to keep some control over his household items.

LED Illusion Makes Colorful Water Drops Defy Gravity

The 60s and 70s were a great time for kitschy lighting accessories. Lava lamps, strobes, color organs, black light posters — we had it all. One particularly groovy device was an artificial rain display, where a small pump dripped mineral oil over vertical monofilament lines surrounding a small statue, with the whole thing lighted from above in dramatic fashion. If it sounds appalling, it was, and only got worse as the oil got gummy by accumulating dust and debris.

While this levitating water drops display looks somewhat similar, it has nothing to do with that greasy lamp of yore. [isaac879]’s “RGB time fountain” is actually a lot more sophisticated and pretty entrancing to watch. The time fountain idea is simple — drip water from a pump nozzle to a lower receptacle along a path that can be illuminated with flashing LEDs. Synchronizing the flashes to the PWM controlling pump speed can freeze the drops in place, or even make them appear to drip up. [isaac879] took the time fountain idea a step further by experimenting with RGB illumination, and he found that all sorts of neat effects are possible. The video below shows all the coolness, like alternating drops of different colors that look like falling — or rising — paint drops, and drops that merge together to form a new color. And behold, the mysterious antigravity cup that drips up and yet gets filled!

Allowances must be made for videos of projects that use strobes, of course. The effect of this time fountain and similar ones we’ve featured before is hard to capture, but this one still looks great to us.

Continue reading “LED Illusion Makes Colorful Water Drops Defy Gravity”

Pocket-Sized Multiduino Does It All

How many times have you wished for a pocket-sized multimeter? How about a mini microcontroller-based testing rig? Have you ever dared to dream of a device that does both?

Multiduino turns an Arduino Nano into a Swiss Army knife of portable hacking. It can function as an analog multimeter to measure resistance, voltage drop, and continuity. It can also produce PWM signals, read from sensors, do basic calculator functions, and display the health of its rechargeable battery pack.

Stick a 10kΩ pot in the left-side header and you can play a space shooter game, or make line drawings by twisting the knob like an Etch-A-Sketch. Be sure to check out the detailed walk-through after the break, and a bonus video that shows off Multiduino’s newest functions including temperature sensing, a monophonic music player for sweet chiptunes, and a virtual keyboard for scrolling text on the OLED screen. [Danko] has a few of these for sale in his eBay store. They come assembled, and he ships worldwide. The code for every existing function is available on his site.

More of a maximalist? Then check out this Micro-ATX Arduino.

Continue reading “Pocket-Sized Multiduino Does It All”

Eat Some Pringles, Feed The Cat

You know the saying: “Dogs have people, cats have servants.” This is especially true when your feline overlord loses track of time and insists on being fed at oh-dark-thirty. You’re tempted to stay in bed feigning death, but that’s a tall order with the cat sitting on your chest and staring into your soul.

An automatic cat feeder would be nice at moments like these, but off-the-shelf units are pricey. [Mom Will Be Proud] decided to roll his own cat feeder, and the results are pretty impressive for what amounts to a trash can build. Two old food cans form the body — a Pringles can on top to hold the food and a nut can below for the servo. The metal ends of the cans nest together nicely, and with a large section removed from each, an aperture opens every time the hopper rotates, dropping food down a chute. A BeagleBone Black controls the servo, but anything with PWM outputs should do the trick. We’d lean toward the ESP8266 ecosystem for WiFi support for remotely controlling feedings, and we’d probably beef up the structure with PVC tube to prevent unauthorized access. But it’s a simple concept, and simple is a good place to start.

You shall not want for pet feeder builds around these parts. Take your pick — snazzy Steampunk, super cheap, or with an Archimedean twist.

Continue reading “Eat Some Pringles, Feed The Cat”

Interfacing With A Digital Speedometer

After swapping the engine out in his scooter, [James Stanley] made an unfortunate discovery. The speedometer was digitally controlled, and while the original engine had a sensor which would generate pulses for it to interpret, his new engine didn’t. Learning that the original sensor would pull the signal wire to ground each time it detected a tooth of one of the spinning gears, [James] reasoned he needed to find a way to detect the scooter’s speed and create these pulses manually.

To find the scooter’s speed, he installed a magnet on the front wheel and a hall effect sensor on the fork to detect each time it passed by. Since the wheel is of a known circumference, timing the pulses from the sensor allows calculation of the current speed. A GPS receiver could be used if you wanted fewer wires, but the hall effect sensor on the wheel is simple and reliable. With the speed of the scooter now known, he needed to turn that into a signal the speedometer understands.

Speedometer controller potted with resin.

[James] wrote a program for an ATmega that would take the input from the wheel sensor and use it to create a PWM signal. This PWM signal drives a transistor, which alternates the speedometer sensor wire between low and floating. With a bit of experimentation, he was able to come up with an algorithm which equated wheel speed to the gearbox speed the speedometer wanted with accuracy close enough for his purposes.

While the software side of this project is interesting in its own right, the hardware is an excellent case study in producing robust electronic devices suitable for use on vehicles. [James] 3D printed a shallow case for the circuit board, and potted the entire device with black polyurethane resin. He even had the forethought to make sure he had a debugging LED and programming connector before he encapsulated everything (which ended up saving the project).

While the specific scenario encountered by [James] is unlikely to befall others, his project is an excellent example of not only interfacing with exiting electronics but producing rugged and professional looking hardware without breaking the bank. Even if scooters aren’t your thing, there are lessons to be learned from this write-up.

For all you two wheeled hackers out there, we’ve covered similar projects designed for bicycles, as well as some very slick digital speedometer mods for motorcycles.

Driver Board Makes Nixie Projects Easier Than Ever

We know, we know — yet another Nixie clock. But really, this one has a neat trick: an easy to use, feature packed driver for Nixies that makes good-looking projects a snap.

As cool as Nixies are — we’ll admit that to a certain degree, familiarity breeds contempt — they can be tricky to integrate. [dekuNukem] notes that aside from the high voltages, laying hands on vintage driver chips like the 7441 can be challenging and expensive. The problem was solved with about $3 worth of parts, including an STM32 microcontroller and some high-voltage transistors. The PCBs come in two flavors, one for the IN-12 and one for the IN-14, and connections for the SPI interface and both high- and low-voltage supplies are brought out to header pins. That makes the module easy to plug into a motherboard or riser card. The driver supports overdriving to accommodate poisoned cathodes, 127 brightness levels for smooth dimming, and a fully adjustable RBG backlight under the tube. See the boards in action in the video below, which features a nicely styled, high-accuracy clock.

From Nixie tachs to Nixie IoT clocks, [dekuNukem]’s boards should make creative Nixie projects even easier. But if you’re trying to drive a Nixie Darth Vader, you’re probably on your own.

Roll Your Own Arduino PWM

Most projects are built on abstractions. After all, few of us can create our own wire, our own transistors, or our own integrated circuits. A few months ago, [Julian Ilett] found a problem using the Arduino library for PWM. Recently, he revisited the issue and used his own PWM code to fix the problem. You can watch the video below.

Of course, neither the Arduino library nor [Julian’s] code is actually producing PWM. The Atmel CPU’s hardware is doing the work. The Arduino library gives you a wrapper called analogWrite — especially handy if you are not using an Atmel CPU where the same abstraction will do the same work. The issue arose when [Julian] broke the abstraction to invert the PWM output.

Continue reading “Roll Your Own Arduino PWM”