Test run of my Universal Resonator prototype
Here's a quick demo of one of my current projects, what I'm calling an "Universal Resonator". This was my final project for this semester's experimental physics class at my university, but it's an old idea I had in mind for quite some time.
The idea is to have a device that, when put over surfaces, detects their resonant frequencies and then generates vibrations at that frequency. This way, we can see how everyday objects resonate.
This is merely a prototype. I'm already working on a better and more portable version.
This device makes use of my Lazy Discrete Fourier Transform (LDFT) algorithm, which is what's used to detect and isolate the low resonant frequencies that most objects have. Pitch detection algorithms like zero-crossings, auto-correlation or FFT/FHT are not good enough for this use, so I had to come up with my own thing.
I also had to write my own code to handle the OLED, because I can't afford 1024 bytes on a 128x64 bitmap buffer, like most libraries do. My code only uses 6 bytes of memory, and it simplifies things because I'm really just writing text and vertical columns, so I can specialize the code for my needs. It's also good because I had to make my own bitmap font, so I created the characters that are more useful to me.