Turning Sounds From A Flute Into Sheet Music

Composing music can be quite difficult – after all, you have to keep in mind all of the elements of musical theory, from time signature and key signature to the correct length for all of the notes. A team of students from Cornell University’s Designing with Microcontrollers class developed a solution for this problem by transcribing sounds from a flute into sheet music.

The project doesn’t simply detect the notes played – it is able to convert the raw audio into a standardized music score complete with accurate note timings and beats per minute. Before transcribing the music, some audio processing was necessary. The team chose to use a Sallen-Key filter to amplify the raw audio input due to its complex conjugate poles. They then used a fast Fourier Transform (FFT) to determine the frequency for the input note, converting the signal from the time domain to the frequency domain.

The algorithm samples the data to generate an input signal, using the ADC on the microcontroller to receive input from the microphone. It takes the real and imaginary components of the sampled signals and outputs a pair of real and imaginary amplitude components corresponding to the sampled frequency, evenly spaced from 0 to the Nyquist rate (half the sampling rate). The spacing of these bins and the bin with the largest amplitude are used to convert the signal back to a real frequency and a MIDI note.

The system uses a PIC32 for the logic. The circuitry for the microphone amplification uses a non-inverting op-amp with a gain of 50 to increase the microphone output signal amplitude from 15 mV to 750 mV to use by the microcontroller’s ADC. The signal is then sent to the anti-aliasing Sallen-Key filter, with a pole at 2.5 kHz and a Q of 1. The frequency was chosen since the FFT samples at 8 kHz and the frequency corresponds to a note out of the range of a flute. As for the filters, only the low pass filter was implemented in hardware.  While a bandpass filter could have been implemented in hardware, the team decided on a cleaner software approach.

The project is well-documented on the team’s project page, and it’s certainly worth checking out for more detailed discussions on the keypad controls and the software side of the audio processing. If you want to learn more about the FFT, check out this 2016 Hackaday Prize entry for an FFT spectrum analyezer.

Continue reading “Turning Sounds From A Flute Into Sheet Music”

Subterranean Uses For LIDAR: Cave Surveys

LIDAR has gained much popularity as a means for self-driving cars to survey the space around them. At their most basic, LIDAR is a surveying method that uses lasers to paints the space around the sensors and assembles the distances measured from reflected light into a digital three-dimensional representation. That’s something that has quite a number of other applications, from surveying ancient ruins and rainforests from a bird’s eye view to developing 3D models of indoor spaces.

One fascinating use of LIDAR technology is to map out the routes inside caves, subterranean spaces that are seldom accessed by humans apart from those with specialized equipment and knowledge of how to safely traverse the underground terrain. [caver.adam] has been working on his Open LIDAR project for a few years using an SF30-B High Speed Rangefinder and laser device for a dual-system atop a gimbal with stepper motors for cave scanning.

Originally an entry in the 2016 Hackaday Prize, [Adam] has continued to work on the project. The result shown in the video below is a cheaper 3D LIDAR setup that works by rotating the laser distance module on 2 axes with a sensor centered at the center of rotation. It works for volumetric calculations, detects change over time, and identifies various water patterns and rocks on a surface map. Compared to notebooks, tape measures, and compasses, it’s certainly a step up in cave surveying technology.

Check out some other past underground surveying projects, such as Iowa City’s beer caves scanning projects and National Geographic’s 2014 expedition of the Titan Chamber in southern Guizhou Province in China.

Continue reading “Subterranean Uses For LIDAR: Cave Surveys”

A Pocket-Sized Terminal For Mobile Python Hacking

Inspired by the good old days when your computer would boot directly into BASIC, [Le Roux Bodenstein] has created a handheld device he calls “DumbDumb” that can drop you into a MicroPython environment at a moment’s notice. If that doesn’t interest you, think of it this way: it’s a (relatively) VT100 compatible serial terminal with a physical keyboard that can fit in your pocket.

Being essentially just a dumb terminal (hence the name), there’s actually not a lot of hardware on the board. Beyond the 320×240 NewHaven 2.4 inch LCD, there’s just an STM32G071R8 microcontroller and a handful of passives. Plus the 57 tactile buttons that make up the keyboard, of course.

The MicroPython part comes in thanks to the spot on the back of the board that accepts an Adafruit Feather Wing. In this case, it’s the HUZZAH32 with an ESP32 on board, but it could work with other variants as well. With the wide array of Feather boards available, this terminal could actually be used for an array of applications.

So even if fiddling around with MicroPython isn’t your idea of a good time, there’s almost certainly some interesting software you could come up with for a tiny network-attached terminal like this. For example, it might be just what you need to start working on that LoRa pager system.

A VFD Wall Thermometer

Want to build something using VFD tubes, but don’t need yet another clock project? In that case, this wall mounted temperature and humidity display created by [commanderkull] might be exactly what you’re looking for. With six IV-11 tubes, this display is a practical way to add some of that gorgeous blue-green glow to your home or office.

The USB powered display uses a XL6009 and an XL7015 to provide the 24 V and 1.8 V needed by the IV-11 tubes, respectively. Both of which can be disconnected with jumpers to shut down the tubes without powering off the entire device, a useful feature when programming and debugging the display’s ATmega328P microcontroller. Each tube is connected to the ATmega with an 74HC595 shift register and a UDN2981 driver. Temperature and humidity data is provided, perhaps unsurprisingly, by the exceptionally common DHT22 sensor.

If you are looking to build another clock with these style tubes, there’s certainly enough prior art out there to get you started. We’ve also seen faux VFDs that you could use for either project, just in case you aren’t looking to deal with the voltage requirements and relative rarity of the real thing.

Breathe Easy With This Online Dust Sensor Box

It’s an unfortunate reality that for many of us, our air isn’t nearly as clean as we’d like. From smog to wildfires, there’s a whole lot of stuff in the air that we’d just as soon like to keep out of our lungs. But in order to combat this enemy, you first need to understand it. That means figuring out just what’s in the air you breathe, and how much of it. That’s where devices like the Dust Box from [The IoT GURU] can come in handy.

Inside the 3D printed enclosure is a Wemos D1 Mini ESP8266 development board, sitting on a custom breakout PCB. This board gives you some easy expandability to add your own sensors and hardware, though in this particular configuration, the Dust Box is using the BME280 sensor for general environmental monitoring and the SDS011 laser particle sensor to determine what’s in the air. Just plug it into a convenient USB power source, make sure it’s connected to the WiFi, and off it goes.

But where does all that lovely data end up? That’s up to you, but in this case, the [The IoT GURU] is pushing everything out to a web interface that allows the user to view yearly, monthly, and weekly historical data for each of the parameters the Dust Box can check. This is probably a bit more granular than most of us need, but it’s a good example of what’s possible should you need that much information.

For a similar project that allows you to take your sensors a bit farther off the beaten path, checkout FieldKit, which was recently crowned winner of the 2019 Hackaday Prize.

Handheld MQTT Remote For Home Automation

If you’re working on a home automation project, you’re probably knee-deep into MQTT by now. If not, you should be. The lightweight messaging protocol is an ideal choice for getting your “Things” on the Internet, and controlling them all can be done easily through a simple web interface or an application on your mobile device. Or if you’re [serverframework], you make yourself a handsome little all-in-one MQTT remote.

The hardware here is pretty simple; inside there’s just a NodeMCU ESP8266 development board, some buttons, an RGB LED to give feedback, and a 3.7v 1200mAh LiPo battery with associated charging module. Everything is held inside a nice little wooden box that looks like it would fit right in with the living room decor. We’d like to see some kind of a cover over the exposed perfboard the circuit is assembled on, but that’s arguably a personal preference kind of thing.

Most of the magic in this project is actually happening on the software side. Not only does the provided source code handle all the MQTT communications with Home Assistant, but it provides a clever user interface that allows [serverframework] to perform 25 functions with just five buttons. No, you aren’t seeing things. There are actually six buttons on the device, but one of them is a dedicated “power” button that wakes the remote out of deep sleep.

If you’d like to learn more about getting this protocol working for you, our resident MQTT guru [Elliot Williams] has plenty of thoughts on the subject. From his talk at the 2017 Hackaday Supercon to his home automation tutorial series, there’s plenty of information to get you started.

Continue reading “Handheld MQTT Remote For Home Automation”

New Part Day: Sonoff USB Smart Adaptor Taps A New WiFi Chip

For decades, we dreamt of a future where all of our electronics used a standardized power connector. Most of us probably didn’t expect that USB would ultimately fill that role, but we’ll take what we can get if it means a future without getting a new wall wart for every piece of tech we buy. From soldering irons to laptops, the number of things you can power with a lowly USB cable these days is pretty incredible.

Which makes it all the more surprising it took so long for somebody to come up with a way to toggle USB devices off and on over the network. The Sonoff “USB Smart Adaptor”, which the company says will start shipping before the end of the year, is the logical evolution of their exceptionally popular mains voltage smart switches. The Smart Adapter is designed to go between the device and its existing power supply, allowing the user to drag any USB powered device kicking and screaming into their existing smart home setup. All for the princely sum of $6.50 USD.

In the video after the break, Sonoff gives a few potential uses of the Smart Adapter: from controlling a string of LEDs to limiting how long a smartphone is allowed to charge for. But really, there’s a nearly limitless number of devices which could be easily and cheaply integrated into your home automation routines thanks to this gadget.

On the other end of the spectrum, those who are looking to keep a tighter control on the ears and eyes that are active in their home could use the Smart Adapter to make sure their Google and Amazon listening devices assistants are only powered up during certain hours of the day.

Unfortunately, there’s a catch. Sonoff smart switches are best known, at least among the type of folks who read Hackaday, for the fact that they’re based on the eminently hackable ESP8266 microcontroller. Given the size of this product and its intended use, it would seem logical enough to assume this device also utilizes the insanely popular chip. But according to a Sonoff representative, the USB Smart Adapter won’t be using an ESP at all; leaving its hackability an open question until people can actually get their hands on them and start poking around.

Continue reading “New Part Day: Sonoff USB Smart Adaptor Taps A New WiFi Chip”