Connect Arduino to 30 W Amplifier

Hello,

I am building a starting gun for running/swimming races.
I wish to generate the starting tone from the PCM audio libray GitHub - damellis/PCM: Arduino library for simple playback of audio samples using pulse-code modulation. alternatively I can simply use the tone() function.

My Arduino is a Nano.
My Amplifier is a 30W Eagle Amplifier.
I have an 8ohm 30 speaker connected. Details as follows:
DC Input (V): 12V
Frequency Response (Hz): Mic:-3dB(100Hz-20 KHz) Line:-3dB(30Hz-20 KHz)
Microphone Input: Mic:-50dB(2.45mV)/2 k ohms,balanced
Aux input: 85mV @ 10k Ohms.

I first connected the amp to my PC to hear what it should sound like and heard the tone great and extremely loud which is what I heard.
I then tried connecting the amplifier to the Arduino by simply plugging in pin 11 - tip and ground to ring 2.
This worked great however it was not as loud as the PC and on the amplifier despite which input plugged if I tried to increase the volume knob past 15% it would not get louder.

After asking some frienda they told me I needed to put a capicotr in series to eliminate DC bias. I tried with 100 pF 1uF 100uF none of these changes the volume experience for the 100pF which made it softer.
This is how it was connected
Imgur

I then tried to use a voltage divider to pull the 5v signal down to the signal expected by the input which was 85mV circuit as follows Imgur: The magic of the Internet R1 was 11k and R2 was 2.2k. after trying that I just heard the audio far softer.

Please let me know if these is anything else I can try, thanks for your help in advance.

Please read this:-
How to use this forum
Also
Image guide
image guide
For posting images. We don't appreciate going off site and being greeted by spam, and demands we accept cookies.

As to your problem, the things you have tried will not even theoretically begin to address your problem.

tried to use a voltage divider to pull the 5v signal down to the signal expected by the input which was 85mV circuit

That is just silly, sorry.

You might want to try a restoration filter. Pin to a 1K resistor to a 10nF capacitor from this to ground. Then from resistor / capacitor junction wire this to the input of your amplifier.

Alternatively, use a tone libiary that uses two output signals in anti phase, this doubles the output voltage to 10V peak to peak.

Re-test an amplifier, see if its working as it use to be. 5V signal from arduino is 20x times above line level

The spec's for the amp don't say what the input sensitivity is for the aux input, I suspect
its probably round about 0dBu (770 mV rms), not 80mV...

You must always have a dc blocking capacitor to remove DC bias (although many
amps already do this anyway, just always do it to avoid risk of expensive damage).

So blocking cap then RC filter, and you can combine the latter with a voltage divider too, so
blocking cap, resistor-divider and filter cap.

Try 10uF blocker into 10k : (2k2 || 10nF) divider/filter. The DC blocker is negative side to output,
positive side to pin.

What frequency are you using for tone() and did you generate the square wave tone from the computer?

The human ear is most-sensitive around 2kHz. At low frequencies your ear is less sensitive and speakers are less efficient. There are lots of harmonics (higher frequencies) in the square wave generated by tone() so you should be able to go lower than 2kHz, but that would be a good test.

I then tried connecting the amplifier to the Arduino by simply plugging in pin 11 - tip and ground to ring 2.

And you're generating the tone out of pin 11? Are you sure the cable is good? When you touch the wire do you get a buzz out of the amplifier?

Grumpy_Mike:
Please read this:-
How to use this forum
Also
Image guide
image guide
For posting images. We don't appreciate going off site and being greeted by spam, and demands we accept cookies.

As to your problem, the things you have tried will not even theoretically begin to address your problem.
That is just silly, sorry.

You might want to try a restoration filter. Pin to a 1K resistor to a 10nF capacitor from this to ground. Then from resistor / capacitor junction wire this to the input of your amplifier.

Alternatively, use a tone libiary that uses two output signals in anti phase, this doubles the output voltage to 10V peak to peak.

Sorry for not reading the rules and for linking offsite, I posted on mobile so I had a few difficulties.
In regards to your first suggestion, how would that make it louder than it currently is?
In regards to your second suggestion, can you please suggestion some tone library i can try?

FantomT:
Re-test an amplifier, see if its working as it use to be. 5V signal from arduino is 20x times above line level

I have retested it and connected the output to my Phone and my PC. Both output the sound I want about 25% louder than my arduino is outputting it at when connecting to amplifer.

MarkT:
The spec's for the amp don't say what the input sensitivity is for the aux input, I suspect
its probably round about 0dBu (770 mV rms), not 80mV...

You must always have a dc blocking capacitor to remove DC bias (although many
amps already do this anyway, just always do it to avoid risk of expensive damage).

So blocking cap then RC filter, and you can combine the latter with a voltage divider too, so
blocking cap, resistor-divider and filter cap.

Try 10uF blocker into 10k : (2k2 || 10nF) divider/filter. The DC blocker is negative side to output,
positive side to pin.

On my manual for the amplifer this is what it says:
Auxilarry Input.................... 85mV (+/- 1dB ) @ 10k Ohms Microphone Input.................. 2.5mV (+/- 1dB) @ 20-50k Ohms.

Is this how I should connected the dc blocking capacitor?


Plus adding in a resistor before the cap? Can you explain how that would help me get the audio volume I want?

DVDdoug:
What frequency are you using for tone() and did you generate the square wave tone from the computer?

The human ear is most-sensitive around 2kHz. At low frequencies your ear is less sensitive and speakers are less efficient. There are lots of harmonics (higher frequencies) in the square wave generated by tone() so you should be able to go lower than 2kHz, but that would be a good test.
And you're generating the tone out of pin 11? Are you sure the cable is good? When you touch the wire do you get a buzz out of the amplifier?

I mentioned tone() is an alternative to what Im currently using if PCM using PWM is not an option for some reason. Yes I can generate a tone out of Pin 11 and it is relatively loud. My Phone decibel app registered it at 70dB but its not as loud as the 30W speaker should go as evident by connecting it to the audio out of my PC

Your connections are fine. That's assuming your really connected to the tip, the tip is the correct connection, your ground is connected, and your cable is good, etc.

What's the frequency and what's the capacitor value?

The Arduino puts-out 5V peak-to-peak. If that were a sine wave it would be 1.75V RMS.* Your phone & computer probably don't put-out that much. Your amplifier only needs 0.085V RMS.

The bottom line is - Any of those should be able to drive the amplifier to full-power, and even "beyond" into distortion.

I mentioned tone() is an alternative to what Im currently using if PCM using PWM is not an option for some reason.

I'm not sure what you're talking about... There is no analog output. PCM and PWM are not analog, but you can "approximate analog" using TMRpcm. PCM doesn't make any sense at all without a DAC. You can't put PCM into an analog amplifier!

TMRpcm uses PCM data from a WAV file and it writes fast PWM. Without proper filtering that can sometimes screw-up an amplifier because it's always writing 5V peak-to-peak high-frequency "data".

  • Since it's a square wave it's actually 2.5V RMS.

I think the poster doesn't know the difference between PCM and PWM/PDM, and it using them
interchangably.

DVDdoug:

  • Since it's a square wave it's actually 2.5V RMS.

But not if you are modulate the PWM with an analog sine wave and low-pass filter afterwards.

DVDdoug:
Your connections are fine. That's assuming your really connected to the tip, the tip is the correct connection, your ground is connected, and your cable is good, etc.

What's the frequency and what's the capacitor value?

The Arduino puts-out 5V peak-to-peak. If that were a sine wave it would be 1.75V RMS.* Your phone & computer probably don't put-out that much. Your amplifier only needs 0.085V RMS.

The bottom line is - Any of those should be able to drive the amplifier to full-power, and even "beyond" into distortion.
I'm not sure what you're talking about... There is no analog output. PCM and PWM are not analog, but you can "approximate analog" using TMRpcm. PCM doesn't make any sense at all without a DAC. You can't put PCM into an analog amplifier!

TMRpcm uses PCM data from a WAV file and it writes fast PWM. Without proper filtering that can sometimes screw-up an amplifier because it's always writing 5V peak-to-peak high-frequency "data".

  • Since it's a square wave it's actually 2.5V RMS.

Thanks for the reply.
I can confirm (as tested by multimeter) pin is connected to tip. Ground is connected to ring2/sleeve.

The audio cable works as I can plug it into PC and hear the sound far louder.

I have it setup exactly as the schematic in my previous post shows with a 1uF capacitor.

When testing I've used a 605hz tone value and like before once I increase my amp past 15% the volume stops increasing.

I'm using that library I liked to play very short snippets of audio through PWM. The sound I want is: Rio Olympics Swimming Starting Buzzer - YouTube

As yoy mentioned my setup should be able to drive my Amplifier into a very loud volume I'm quite confused and frustrated why it isn't working. Any help would be greatly appreciated!