Cat Diner Now Under New Management

Most of these stories start with a cat standing on someone’s chest, begging for food at some obscene hour of the morning. But not this one. Chaz the cat is diabetic, and he needs to get his insulin with breakfast. The problem is that Chaz likes to eat overnight, which ruins his breakfast appetite and his chances at properly metabolizing the insulin. [Becky] tried putting the bowl away before bed, but let’s face it — it’s more fun to solve a problem once than to solve the same problem every night.

[Becky]’s solution was to design and print a bowl holder with a lid, and to cover the bowl when the cat diner is closed using a small servo and a NodeMCU. It looks good, and it gets the job done with few components. Chaz gets his insulin, [Becky] gets peace of mind, and everybody’s happy. This isn’t going to work for all cats, because security is pretty lax. But Chaz is a senior kitty and therefore disinterested in pawing at the lid to see what happens. Claw your way past the break to see [Becky]’s build/demo video featuring plenty of cat tax coverage.

We’ve seen a lot of cat feeding apparatus around here, but few that solve a specific problem like this one. If it’s overengineering and cat metrics you want, come and get it.

Continue reading “Cat Diner Now Under New Management”

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”