Digispark Spoofs IR To Get Speakers Under Control

The Microlab 6C are a pretty nice pair of speakers, but [Michał Słomkowski] wasn’t too thrilled with the 8 watts they consume when on standby. The easy fix is to just unplug them when they aren’t in use, but unfortunately the digital controls on the front panel mean he’s got to turn them on, select the correct input, and turn the volume up to the appropriate level every time they’re plugged back in. Surely there must be a better way.

His solution was to use a Digispark to fire off the appropriate IR remote codes so they’d automatically be put back into a usable configuration. But rather than putting an IR LED on one of the GPIO pins, he simply spliced it into the wire leading back from the speaker’s IR receiver. All his code needs to do is generate the appropriate pulses on the line, and the speaker’s electronics think its a signal coming in from the remote.

Distinctive patterns on the IR sensor wires.

Power for the Digispark is pulled from the speaker itself, so it turns on once [Michał] plugs them back in. The code waits five seconds to make sure the hardware has had time to start up, then proceeds with the “Power On”, “Change Input”, and “Volume Up” commands with a few seconds in between each for good measure.

Not only was it easier to skip the IR and inject the signals directly, but it also made for a cleaner installation. Since the microcontroller doesn’t need line of sight to the IR receiver, [Michał] was able to hide it inside the speaker’s enclosure. From the outside, the modification is completely invisible.

We’ve seen similar code injection tricks used before, and it’s definitely one of those techniques you should file away mentally for future reference. Even though more and more modern devices are embracing WiFi and Bluetooth control, the old school IR remote doesn’t seem like it’s going away anytime soon.

Door Mutes Microphone To Prevent Remote Learning Humiliation

In a kind of reverse twist on the doorbell, [TheStaticTurtle] whipped up a system to mute his computer’s microphone whenever someone opens the door to his room. He lives in France, where the government announced a strict lockdown last Friday. Like many university students around the world these days, he is now forced to take online classes. Even though he has his own room, occasionally someone will barge in and announce something, often to [TheStaticTurtle]’s embarrassment.  When his classmates suddenly heard “Do you want some pie?” the other day, it was the last straw.

His first decision was to sense the door opening with a magnet and sensor, which he stuck to the door and frame with hot glue. He then ran a long cable to his desk, where it connected to an ATTiny 85 with a DigiSpark boot-loader. He wrote firmware to simulate special key combinations, which were then registered with his audio routing software Voicemeeter Potato. We presume he isn’t using an external mic, in which case muting might have been easier to accomplish with a hardware switch. All in all, this is a pretty clever and timely hack. Should you be in a similar predicament and want to try this out, he’s published the source code on GitHub.

Continue reading “Door Mutes Microphone To Prevent Remote Learning Humiliation”

This 3D Printed “Bladeless” Fan Gets It Done Cheap

Not long after Dyson unveiled their “bladeless” fan, a fairly steady stream of ever cheaper clones have been hitting the market. But this 3D printed version created by [Elite Worm] must surely be one of the most budget-friendly takes on the concept. If you’ve got a 3D printer, we’d wager you’ve already got most of the parts required to build your own.

See, there’s a blade.

To be clear, of course there’s a blade. They aren’t magic, obviously. The fan is just small, and hidden inside the base. Air is pulled from the sides and bottom, and into the ring mounted to the top of the unit. When the air eventually exits the thin slit in the ring, it “sticks” to the sides due to the Coandă effect and produces a low pressure zone in the center. That’s all a fancy way of saying that the air flow you get from one of these gadgets is several times greater than what the little dinky fan would be capable of under normal circumstances. That’s the theory, anyway.

We can’t promise that all the physics are working as they should in this 3D printed version, but in the video after the break it certainly appears to be moving a considerable amount of air. It’s also quite loud, but that’s to be expected given it’s using a brushless hobby motor. To get it spinning, [Elite Worm] is using a Digispark ATtiny85 connected to a standard RC electronic speed control (ESC). The MCU reads a potentiometer mounted to the side of the fan and converts that to a PWM signal required by the ESC.

Beyond the electronics, essentially every piece of this project has been printed on a standard desktop 3D printer. An impressive accomplishment, though we probably would have gone with a commercially available propeller for safety’s sake. On the other hand, the base of the fan should nicely contain the shrapnel created should it explode at several thousand RPM. Probably.

Continue reading “This 3D Printed “Bladeless” Fan Gets It Done Cheap”

Bolt-On Clog Detection For Your 3D Printer

Desktop 3D printing technology has improved by leaps and bounds over the last few years, but they can still be finicky beasts. Part of this is because the consumer-level machines generally don’t offer much in the way of instrumentation. If the filament runs out or the hotend clogs up and stops extruding, the vast majority of printers will keep humming along with nothing to show for it.

Looking to prevent the heartache of a half-finished print, [Elite Worm] has been working on a very clever filament detector that can be retrofitted to your 3D printer with a minimum of fuss. The design, at least in its current form, doesn’t actually interface with the printer beyond latching onto the part cooling fan as a convenient source of DC power. Filament simply passes through it on the way to the extruder, and should it stop moving while the fan is still running (indicating that the machine should be printing), it will sound the alarm.

Inside the handy device is a Digispark ATtiny85 microcontroller, a 128 x 32  I2C OLED display, a buzzer, an LED, and a photoresistor. An ingenious 3D printed mechanism grabs the filament on its way through to the extruder, and uses this movement to alternately block and unblock the path between the LED and photoresistor. If the microcontroller doesn’t see the telltale pulse after a few minutes, it knows that something has gone wrong.

In the video after the break, [Elite Worm] fits the device to his Prusa i3 MK2, but it should work on essentially any 3D printer if you can find a convenient place to mount it. Keep a close eye out during the video for our favorite part of the whole build, using the neck of a latex party balloon to add a little traction to the wheels of the filament sensor. Brilliant.

Incidentally, Prusa tried to tackle jam detection optically on the i3 MK3 but ended up deleting the feature on the subsequent MK3S since the system proved unreliable with some filaments. The official line is that jams are so infrequent with high-quality filament that the printer doesn’t need it, but it does seem like an odd omission when even the cheapest paper printer on the market still beeps at you when things have run afoul.

Continue reading “Bolt-On Clog Detection For Your 3D Printer”

Aladdin Lamp Shoots Flames With A Snap Of Your Fingers

Despite their dangers, even Marie Kondo would not convince us to abandon flamethrower projects because they literally spark joy in us. To make this flame shooting Aladdin lamp [YeleLabs] just used a 3D printer and some basic electronics.

The lamp body consists of two 3D-printed halves held together by neodymium magnets. They house a 400 kV spark generator, a fuel pump plus tank, and a 18650 Li-ion battery. The fuel pump is actually a 3 V air pump but it can also pump liquids at low pressure. As fuel [YeleLabs] used rubbing alcohol that they mixed with boric acid to give the flame a greenish tint. The blue base at the bottom of the lamp houses the triggering mechanism which magically lights up the lamp when you snap your fingers. This is achieved by a KY-038 microphone module and KY-019 relay module connected to a Digispark ATTiny85 microcontroller. When the microphone signal is above a certain threshold the relay module will simultaneously switch on the spark generator and fuel pump for 150 ms.

Although they proclaim that the device is a hand sanitizer it is probably safer to stick to using soap. The project still goes on the list of cool flamethrower props right next to the flame shooting Jack-o-Lantern.

Video after the break.

Continue reading “Aladdin Lamp Shoots Flames With A Snap Of Your Fingers”

DIY Rubber Ducky Is As Cheap As Its Namesake

The “Rubber Ducky” by Hak5 is a very powerful tool that lets the user perform rapid keystroke injection attacks, which is basically a fancy way of saying the device can type fast. Capable of entering text at over 1000 WPM, Mavis Beacon’s got nothing on this $45 gadget. Within just a few seconds of plugging it in, a properly programmed script can do all sorts of damage. Just think of all the havoc that can be caused by an attacker typing in commands on the local machine, and now image they are also the Flash.

But unless you’re a professional pentester, $45 might be a bit more than you’re looking to spend. Luckily for the budget conscious hackers out there, [Tomas C] has posted a guide on using open source software to create a DIY version of Hak5’s tool for $3 a pop. At that cost, you don’t even have to bother recovering the things when you deploy them; just hold on tight to your balaclava and make a run for it.

The hardware side of this hack is the Attiny85-based Digispark, clones of which can be had for as low as $1.50 USD depending on how long your willing to wait on the shipping from China. Even the official ones are only $8, though as of the time of this writing are not currently available. Encapsulating the thing in black shrink tubing prevents it from shorting out, and as an added bonus, gives it that legit hacker look. Of course, it wouldn’t be much of a hack if you could just buy one of these little guys and install the Rubber Ducky firmware on it.

In an effort to make it easier to use, the official Rubber Ducky runs scripts written in a BASIC-like scripting language. [Tomas C] used a tool called duck2spark by [Marcus Mengs], which lets you take a Rubber Ducky script (which have been released by Hak5 as open source) and compile it into a binary for flashing to the Digispark.

Not quite as convenient as just copying the script to the original Ducky’s microSD card, but what do you want for less than 1/10th the original’s price? Like we’ve seen in previous DIY builds inspired by Hak5 products, the trade-off is often cost for ease of use.

[Thanks to Javier for the tip.]

Simple RC To USB Interface

With the radio control hobby arguably larger now than it ever has been in the past, there’s a growing demand for high-fidelity PC simulators. Whether you want to be able to “fly” when it’s raining out or you just want to practice your moves before taking that expensive quadcopter up for real, a good simulator on your computer is the next best thing. But the simulator won’t do you much good if it doesn’t feel the same; you really need to hook your normal RC transmitter up to the computer for the best experience.

[Patricio] writes in to share with us his simple hack for interfacing his RC hardware to his computer over USB. Rather than plugging the transmitter into the computer, his approach allows the receiver to mimic a USB joystick. Not only is this more convenient since you can use the simulator without wires, but it will make sure that the minutiae of your radio hardware (such as response lag) is represented in the simulation.

The setup is actually very simple. [Patricio] used the ATtiny85 based Digispark development board because it’s what he had on hand, but the principle would be the same on other microcontrollers. Simply connect the various channels from the RC receiver to the digital input pins. RC receivers are 5 VDC and draw very little current, so it’s even possible to power the whole arrangement from the USB port.

On the software side, the Arduino sketch does about what you expect. It loops through listening for PWM signals on the input pins, and maps that to USB joystick position information. The current code only supports three channels for a simple airplane setup (X and Y for joystick, plus throttle), but it should be easy enough to follow along and add more channels if you needed them for more complex aircraft.

For more information on the intricacies of RC transmitter and receiver interaction, check out this fascinating research on receiver latency.