21Jun 2013

The whistled: from whistle to sound recognition (and also some reminders for tinkerers out there)

Once again, here is a short video to show off a simple sound recognition algorithm implemented on the whistled:

As the platform could already do whistle recognition, I thought it would be nice to implement this nice feature...

The algorithm

As already mentioned, the algorithm I implemented is fairly simple and I'm sure you'll find many ways to improve it ;-) .
Anyway, one of the (many) advantages of working with the computed sound frequencies rather than the sound itself is that you can recognize a word said in different voice tones.
However, it may only work with the user that taught the word to the 'whistled' (should I rename this project?), as each person has its own way of saying a particular word.

The source code

As I needed additional space, I used the 2kB FlexRAM located on the K10 between 0x14000000 and 0x17FFFFFF (.bss3 section in the source code).
It is therefore used to store the recorded template word and a buffer containing the last computed FFTs.
All the source code is available here, so you can take your SWD programmer out of your dusty drawer ;-) .

Some reminders for the whistled tinkerers

For those who aren't going to use 12V LEDs with the whistled, I'd like to remind you a few things :-) .
- If you are going to connect a motor, don't forget to add a flyback diode:
Flyback diode
- The mosfetN on the board can only handle 25V, so if you want to switch a bigger device (no dimming), you can use a relay:
Relay connection
If you'd like a simple relay board, please drop me a message. In this case maybe I could add a tindie listing for it.
Finally, if you'd like to dim bigger DC loads (with dimming), you can always cascade another mosfet at the whistled output, one that can handle a higher Vds.

Where to get your whistled

Whether you'd like to put your custom sound recognition algorithm or just use the already programmed whistle detection functionality, you can find all my different listings on my tindie page:



1. On Tuesday, June 25 2013, 07:21 by Jay

Very cool. I wonder, could your platform be used for real-time noise cancellation?

2. On Thursday, September 12 2013, 23:51 by boxysean

This is really awesome. We have a chandelier that needs to be turned on and off with this... just purchased!!

One question, though -- can I reprogram this using a bus pirate? And do you have any favourite means of connecting to the pads on the board?

Thanks so much!

3. On Thursday, September 12 2013, 23:55 by limpkin

@boxysean : Thanks for your purchase! Another buyer actually reprogrammed his with a bus pirate, so it can be done. I personally used a solder iron to connect the programming wires, as the pads are big enough :)

This post's comments feed

Add a comment

Comments can be formatted using a simple wiki syntax.

They posted on the same topic

Trackback URL : http://www.limpkin.fr/index.php?trackback/186