FM Radio From Scratch Using An Arduino

Building radio receivers from scratch is still a popular project since it can be done largely with off-the-shelf discrete components and a wire long enough for the bands that the radio will receive. That’s good enough for AM radio, anyway, but you’ll need to try this DIY FM receiver if you want to listen to something more culturally relevant.

Receiving frequency-modulated radio waves is typically more difficult than their amplitude-modulated cousins because the circuitry necessary to demodulate an FM signal needs a frequency-to-voltage conversion that isn’t necessary with AM. For this build, [hesam.moshiri] uses a TEA5767 FM chip because of its ability to communicate over I2C. He also integrated a 3W amplifier into this build, and everything is controlled by an Arduino including a small LCD screen which displays the current tuned frequency. With the addition of a small 5V power supply, it’s a tidy and compact build as well.

While the FM receiver in this project wasn’t built from scratch like some AM receivers we’ve seen, it’s still an interesting build because of the small size, I2C capability, and also because all of the circuit schematics are available for all of the components in the build. For those reasons, it could be a great gateway project into more complex FM builds.

Continue reading “FM Radio From Scratch Using An Arduino”

Transforming Work Light Is More Than Meets The Eye

While it does use the same M12 batteries, this impeccably engineered work light isn’t an official Milwaukee product. It’s the latest creation from [Chris Chimienti], who’s spent enough time in the garage and under the hood to know a thing or two about what makes a good work light. The modular design not only allows you to add or subtract LED panels as needed, but each section is able to rotate independently so it points exactly where you need it.

Magnets embedded in the 3D printed parts mean the light modules not only firmly attach to one another, but can be stuck to whatever you’re working on. Or you could just stack all the lights up vertically and use the rocket-inspired “landing legs” of the base module keep it vertical. Even if the light gets knocked around, the tension provided by rubber bands attached to each fold-out leg means it will resist falling over. In the video after the break [Chris] says the little nosecone on top is just for fun and you don’t have to print it, but we don’t see how you can possibly resist.

The same PCB is used on both ends of the light modules.

Of course, 3D printed parts and magnets don’t self-illuminate. The LED panels and switches are salvaged from cheap lights that [Chris] found locally for a few bucks, and a common voltage regulator board is used to step the 12 volts coming from the Milwaukee battery down to something the LEDs can use. He’s designed a very slick reversible PCB that’s used on either end of each light module to transfer power between them courtesy of semi-circular traces on one side and and matching pogo pins on the other.

As we saw in his recent Dremel 3D20 rebuild, [Chris] isn’t afraid to go all in during the design phase. The amount of CAD work that went into this project is astounding, and serves as fantastic example of the benefits to be had by designing the whole assembly at once rather than doing it piecemeal. It might take longer early on, but the final results really speak for themselves.

Continue reading “Transforming Work Light Is More Than Meets The Eye”

Remoticon Video: How To Use Machine Learning With Microcontrollers

Going from a microcontroller blinking an LED, to one that blinks the LED using voice commands based on a data set that you trained on a neural net work is a “now draw the rest of the owl” problem. Lucky for us, Shawn Hymel walks us through the entire process during his Tiny ML workshop from the 2020 Hackaday Remoticon. The video has just now been published and can be viewed below.

This is truly an end-to-end Hello World for getting machine learning up and running on a microcontroller. Shawn covers the process of collecting and preparing the audio samples, training the data set, and getting it all onto the microcontroller. At the end of two hours, he’s able to show the STM32 recognizing and responding to two different spoken words. Along the way he pauses to discuss the context of what’s happening in every step, which will help you go back and expand in those areas later to suit your own project needs.

Continue reading “Remoticon Video: How To Use Machine Learning With Microcontrollers”

Circuit VR: Squaring With Schmitt Triggers

In the fantasy world of schematic diagrams, wires have no resistance and square waves have infinitely sharp rise times. The real world, of course, is much crueler. There are many things you can use to help tame the wild analog world into the digital realm. Switches need debouncing, signals need limiting, and you might even need a filter. One of the basic elements you might use is a Schmitt trigger. In

In this installment of Circuit VR, I’m looking inside practical circuits by building Schmitt triggers in the Falstad circuit simulator. You can click the links and get to a live simulation of the circuit so you can do your own experiments and virtual measurements.

Why Schmitt Triggers?

You usually use a Schmitt trigger to convert a noisy signal into a clean square digital logic level. Any sort of logic gate has a threshold. For a 5V part, the threshold might be that anything under 2.5V is a zero and at 2.5V or above, the signal counts as a one. Some logic families define other thresholds and may have areas where the signal is undefined, possibly causing unpredictable outputs.

There are myriad problems with the threshold, of course. Two parts might not have exactly the same threshold. The threshold might vary a bit for temperature or other factors. For parts with no forbidden zone, what happens if the voltage is right at the edge of the threshold?

Continue reading “Circuit VR: Squaring With Schmitt Triggers”

Hackaday Podcast 096: Diaphragm Engine, DIY Dish Washer, Forgotten Soviet Computers, And A Starlink Teardown

Hackaday editors Elliot Williams and Mike Szczys discuss the latest and greatest in geeky goodness. This week we saw a Soviet time capsule come to light with the discovery of a computer lab from a building abandoned in the 1990’s. A two-cycle compressed air engine shatters our expectations of what is involved in RC aircraft design. There’s a new toolkit for wireless hacking on the scene in the form of a revitalized HackRF PortaPack firmware fork. And what goes into dishwasher design? Find out in this exciting episode.

Take a look at the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Direct download (55 MB)

Places to follow Hackaday podcasts:

Continue reading “Hackaday Podcast 096: Diaphragm Engine, DIY Dish Washer, Forgotten Soviet Computers, And A Starlink Teardown”

Flipbook Automation Saves Your Thumb

You’ve probably seen a flipbook. That’s a book with pictures on each page. Each picture is slightly different than the last one so if you flip rapidly through the book you get a little animation. We like the German word, Daumenkino, which translates as “thumb cinema” and that seems appropriate. [Barqunics] put a decidedly new twist on this old technology. His flipbook senses a viewer and automatically flips the pages using a motor. You can see the Arduino-controlled device in the video below.

The presence detection is a ubiquitous sonar sensor. The frame is easy to make since it uses cardboard and hot glue. A DC motor like you find on many toy cars or robots provides the rotation. No 3D printing needed, but we did think it would be easy to 3D-print or laser-cut the pieces.

Continue reading “Flipbook Automation Saves Your Thumb”

This Week In Security: IOS Wifi Incantations, Ghosts, And Bad Regex

I hope everyone had a wonderful Thanksgiving last week. My household celebrated by welcoming a 4th member to the family. My daughter was born on Wednesday morning, November 25th. And thus explains what I did last week instead of writing the normal Hackaday column. Never fear, we shall catch up today, and cover the news that’s fit to be noticed.

iOS Zero-click Wifi Attack

[Ian Beer] of Google’s Project Zero brings us the fruit of his lockdown-induced labors, a spectacular iOS attack. The target of this attack is the kernel code that handles AWDL, an Apple WiFi protocol for adhoc mesh networks between devices. The most notable feature that makes use of AWDL is AirDrop, Apple’s device-to-device file sharing system. Because AWDL is a proprietary protocol, the WiFi hardware can’t do any accelerated processing of packets. A few years back, there was an attack against Broadcom firmware that required a second vulnerability to jump from the WiFi chip to the device CPU. Here, because the protocol is all implemented in Apple’s code, no such pivot is necessary.

And as you’ve likely deduced, there was a vulnerability found. AWDL uses Type-Length-Value (TLV) messages for sending management data. For a security researcher, TLVs are particularly interesting because each data type represents a different code path to attack. One of those data types is a list of MAC addresses, with a maximum of 10. The code that handles it allocates a 60 byte buffer, based on that maximum. The problem is that there isn’t a code path to drop incoming TLVs of that type when they exceed 60 bytes. The remainder is written right past the end of the allocated buffer.

There is more fun to be had, getting to a full exploit, but the details are a bit too much to fully dive in to here. It interesting to note that [Ian] ran into a particular problem: His poking at the target code was triggering unexpected kernel panics. He discovered two separate vulnerabilities, both distinct from the vuln he was trying to exploit.

Finally, this exploit requires the target device to have AWDL enabled, and many won’t. But you can use Bluetooth Low Energy advertisements to trick the target device into believing an Airdrop is coming in from a trusted contact. Once the device enables AWDL to verify the request, the attack can proceed. [Ian] reported his findings to Apple way back in 2019, and this vulnerability was patched in March of 2020.

Via Ars Technica.
Continue reading “This Week In Security: IOS Wifi Incantations, Ghosts, And Bad Regex”