Hello,
I am currently working on a project using a Teensy 4.1 that involves creating a polyphonic synth. My idea is to use a Teensy 4.1 to do most of the work (oscillators, envelope generators, LFO, etc.) and then feed the analog output of each voice into analog filter ICs to give it more unique sound capabilities. I am aware that the Teensy Audio Library would be a great resource for doing this sort of thing, however I have also tried a more barebones approach using timers that trigger ISRs to generate samples from waveform lookup tables that are then sent to a SPI DAC. The main issue I have run into with this is when I have multiple timers running at once (since I would need a timer for every oscillator) the interrupts seem to interfere with each other and make the notes play out of tune (I am using the TeensyTimerTool library).
The main reason I haven't looked into using the Audio Library more was because in order to use analog filter ICs I will need a separate analog output for every voice (preferably at least 6). I wasn't sure if there would be a way to do this easier than the more barebones approach since I2S DACs seem less geared towards this sort of thing and there also just seem to be less simple and low cost options than SPI. I might be wrong since I have looked into the Audio Library and I2S DACs less, or maybe there is a good way to use SPI DACs with the Audio Library? Basically, is there a good way generate multiple analog waveforms without the Audio library that I haven't thought of, or is there a good way to do it with the Audio Library, and which path should I take?
Thanks!
I am currently working on a project using a Teensy 4.1 that involves creating a polyphonic synth. My idea is to use a Teensy 4.1 to do most of the work (oscillators, envelope generators, LFO, etc.) and then feed the analog output of each voice into analog filter ICs to give it more unique sound capabilities. I am aware that the Teensy Audio Library would be a great resource for doing this sort of thing, however I have also tried a more barebones approach using timers that trigger ISRs to generate samples from waveform lookup tables that are then sent to a SPI DAC. The main issue I have run into with this is when I have multiple timers running at once (since I would need a timer for every oscillator) the interrupts seem to interfere with each other and make the notes play out of tune (I am using the TeensyTimerTool library).
The main reason I haven't looked into using the Audio Library more was because in order to use analog filter ICs I will need a separate analog output for every voice (preferably at least 6). I wasn't sure if there would be a way to do this easier than the more barebones approach since I2S DACs seem less geared towards this sort of thing and there also just seem to be less simple and low cost options than SPI. I might be wrong since I have looked into the Audio Library and I2S DACs less, or maybe there is a good way to use SPI DACs with the Audio Library? Basically, is there a good way generate multiple analog waveforms without the Audio library that I haven't thought of, or is there a good way to do it with the Audio Library, and which path should I take?
Thanks!