florianlink
Member
First of all, thanks for the great Audio Library and the Teensyduino experience! I upgraded my project from an Arduino Nano in a day...
I'm working on a DIY Laser Projector (driving commercial laser galvos from ebay with the Teensy + DAC + some opamps for bipolar ILDA signals).
Drawing text and effects works fine already and I started to add sound via a WTV20 module that plays AD4
files from SD card.
The WTV20 has a DAC output which provides a 0v - 3.3v audio signal.
I am using that signal as AudioInputAnalog source and added a live spectrum analyzer drawn with the laser.
I have two questions regarding this:
1. The AudioInputAnalog sets the analog reference to INTERNAL, which matches the RCA biasing circuit's range. So I got my signal clamped to 1.2V... I patched the AudioInputAnalog to use DEFAULT and got my full signal. So my question is, would it be possible to make this configurable in AudioInputAnalog? Because I don't really want to require patching the Audio library. Or would you suggest scaling the signal down to the 1.2v range because the INTERNAL reference has better precision?
2. What would be the simplest thing to convert the 3.3V down to 1.2V? I was not sure if a voltage divider with two resistors would be sufficient, because it will draw some current (too much?) from the Teensy? I am more a software guy, so I am unsure about this.
3. I had some problems with the interrupts that fetch the audio data, because that takes so much time that is appears as a lighter laser dot because the laser will hold while the interrupt is working. My workaround for this is to only enable interrupts when the laser is not drawing and to wait some time between the laser drawings so that the audio data can be read and FFT can be done. Is there a more elegant way to do this?
I am working on a video to share with you, the spectrum analyzer looks nice already.
Best regards,
Florian Link
I'm working on a DIY Laser Projector (driving commercial laser galvos from ebay with the Teensy + DAC + some opamps for bipolar ILDA signals).
Drawing text and effects works fine already and I started to add sound via a WTV20 module that plays AD4
files from SD card.
The WTV20 has a DAC output which provides a 0v - 3.3v audio signal.
I am using that signal as AudioInputAnalog source and added a live spectrum analyzer drawn with the laser.
I have two questions regarding this:
1. The AudioInputAnalog sets the analog reference to INTERNAL, which matches the RCA biasing circuit's range. So I got my signal clamped to 1.2V... I patched the AudioInputAnalog to use DEFAULT and got my full signal. So my question is, would it be possible to make this configurable in AudioInputAnalog? Because I don't really want to require patching the Audio library. Or would you suggest scaling the signal down to the 1.2v range because the INTERNAL reference has better precision?
2. What would be the simplest thing to convert the 3.3V down to 1.2V? I was not sure if a voltage divider with two resistors would be sufficient, because it will draw some current (too much?) from the Teensy? I am more a software guy, so I am unsure about this.
3. I had some problems with the interrupts that fetch the audio data, because that takes so much time that is appears as a lighter laser dot because the laser will hold while the interrupt is working. My workaround for this is to only enable interrupts when the laser is not drawing and to wait some time between the laser drawings so that the audio data can be read and FFT can be done. Is there a more elegant way to do this?
I am working on a video to share with you, the spectrum analyzer looks nice already.
Best regards,
Florian Link
Last edited: