I'm working on triggering solenoids and motors from the arduino via a mix of different code approaches. I've gotten pretty comfortable with it, but now I'm looking to create something a bit more dynamic. I'm wondering if you have any tips or starting points in getting input from an audio source to output in different ways by motors - I know the arduino doesn't like to input and output at the same time, so I'm wondering
- If I should be looking at using two arduinos - one to input audio and the second to process it and output to the pins?
- If there are any tutorials or starting points for this type of thing : That process' real time audio and causes a variety of triggers of algorhythms or even mimics or modifies patterns?
Thanks - any tips would be greatly appreciated.
I know the arduino doesn't like to input and output at the same time,
Define "same time". If you define "same time" as "within a few microseconds", then yes, the Arduino input and output at the same time.
- If I should be looking at using two arduinos
Depends on CPU and RAM consumption. If you're not doing complicated audio waveform analysis, one Arduino is probably sufficient.
If one Arduino is not sufficient, then two probably won't help, as it takes time for the two to communicate with each other. So you don't really gain much if anything by tacking another Arduino on.
process' real time audio
Define "process". Do you want something simple like just looking at the overall amplitude, or a bit more complex like looking at the amplitude of a certain frequency, or do you want to do something complicated like speech recognition?
Thanks again for your help - I think for starters I'd be looking at overall amplitude or for amplitude spikes / frequency of attacks (I.E rhythm) - but let's say for start as 'overall' amplitude.
This may be a good place to start:
If your audio input is speech, than you can use BitVoicer (http://www.bitsophia.com) for the speech recognition and process the returned commands to move the motors.