2 or 4 channel audio mixer with XLR for powered PA speaker

jvphotog

Active member
Hi all. I built a light weight powered PA speaker for my mom a few years back, she signs and plays guitar. It uses a Dayton Audio KABD amp with built in DSP to take care of crossover, time alignment, and EQ. I would have loved to include a mixer for her, but at the time it proved to be too difficult.) I actually had a mic pre amp bread boarded and hooked up to a Raspberry pi with some audio software running on it, but it was a bit flakey and took a while to boot up.) Right now she uses a Behringer FLOW 8.

I feel like a Teensy could work in it's place and I could build it into the speaker. Users @vvasilop and @palmerr look like they both have successful mic preamps built. Is there anything that I could piece together to make a live sound mixer? I would need a mic preamp and a hi-z input, some sort of compressor, EQ, level, and reverb. Ideally Id be able to use the Teensy to do time alignment so I could get rid of the KABD amp and switch over to something like a ICEPower amp. Thank you!
 
Well, I spent the last week giving myself a headache/crying playing with a Teensy 4.1 and audio shield. This is a big learning curve! I got audio pass through working and played around with a lot of the demos. I have two issues so far. I can't figure out how to get rid of the digital noise when using the freeverb1. I tried a few different methods used in other peoples projects but it still persists. HOWEVER I did get the "Stereo Plate Reverb for Teensy4.x" working and that sounds very good - but I don't need stereo and that project is very confusing to me, compared to the others. So far Im only using an acoustic guitar plugged into the the audio shield ( I tested it on my scope and it only output 560mV pp so I assumed it was safe). This is my work flow and code.
Screenshot 2023-10-11 at 5.13.48 PM.png
Code:
#include <Audio.h>
#include <Wire.h>
#include <SPI.h>
#include <SerialFlash.h>

// GUItool: begin automatically generated code
AudioInputI2S            i2s1;           //xy=131,843
AudioFilterBiquad        biquad1;        //xy=269,832
AudioMixer4              mixer1;         //xy=435,871
AudioEffectFreeverb      freeverb1;      //xy=590,997
AudioMixer4              mixer2;         //xy=693,760
AudioOutputI2S           i2s2;           //xy=874,857
AudioConnection          patchCord1(i2s1, 0, biquad1, 0);
AudioConnection          patchCord2(biquad1, 0, mixer1, 1);
AudioConnection          patchCord3(biquad1, 0, mixer2, 3);
AudioConnection          patchCord4(mixer1, freeverb1);
AudioConnection          patchCord5(freeverb1, 0, mixer2, 1);
AudioConnection          patchCord6(mixer2, 0, i2s2, 0);
AudioConnection          patchCord7(mixer2, 0, i2s2, 1);
AudioControlSGTL5000     sgtl5000_1;     //xy=134,692
// GUItool: end automatically generated code

#define pot1            A14  
#define pot2            A15


void setup() {
  Serial.begin(9600);

  AudioMemory(12);
  sgtl5000_1.enable();
  sgtl5000_1.volume(0.8);


  biquad1.setHighpass(0, 80, 0.7071);

 
}

void loop() {
  float knob1 = (float)analogRead(pot1) / 1023.0;  
  float knob2 = (float)analogRead(pot2) / 1023.0;

  mixer1.gain(0, 0);            
  mixer1.gain(1, 0.25);        
  mixer1.gain(2, 0);       
  mixer1.gain(3, 0);

  mixer2.gain(0, 0);            
  mixer2.gain(1, knob1);        
  mixer2.gain(2, 0);       
  mixer2.gain(3, 0.5);

  freeverb1.roomsize(knob2);
  freeverb1.damping(.7);

  Serial.print("Room Size: ");
  Serial.print(knob1 * 100.0);
  Serial.print("%, Damping: ");
  Serial.print(knob2 * 100.0);
  Serial.print("% / ");

  // determine how much actual memory is needed for the audio processes
  Serial.print("Max audio blocks used: ");
  Serial.println(AudioMemoryUsageMax());
  Serial.println();
  delay(100);
}

My other issue so far is Im only using the headphone out to listen to the signal and there is noise when no signal is present. It's weird, it's like an anti noise gate. If I barely pluck a string on the guitar the background noise will disappear, only to reappear as the guitar decays. This is in addition to the weird reverb digital noise.
Any help is appreciated, thanks!
 
Adding
Code:
audioShield.adcHighPassFilterDisable();
solved the headphone jack noise issue...


Well, not completely. There is still a whine, but it's much better than it was.
 
Back
Top