STEP 1 / 6ARDUINO

Simple Arduino Audio Player and Amplifier with LM386

Adding music or sounds will always make our project look a lot cooler and more appealing. The best way to add sound effects to your project is by investing in an extra SD card module and…

Simple Arduino Audio Player and Amplifier with LM386 - source illustration from page 740
PROJECT#361
TRACKArduino
PARTS03
STAGES06
STEP 1 / 6 · Overview

Know the mission before touching a wire.

Understand what you are making, prepare the right tools, and make the workbench safe.

01

Project details

Simple Arduino Audio Player and Amplifier with LM386 is a arduino project. Adding music or sounds will always make our project look a lot cooler and more appealing. The best way to add sound effects to your project is by investing in an extra SD card module and…

Source pages
739-745
Named parts
3
Build goal
Working, tested prototype
02

Tools you need

  • Digital multimeter
  • Wire stripper and side cutters
  • Soldering iron with a fine tip
  • Current-limited bench supply
  • Computer with a data-capable USB cable

Use eye protection, good lighting, and a clean insulated surface throughout the build.

03

Safety precautions

  • Disconnect every power source before changing a connection.
  • Check component polarity, pinout, and supply voltage twice.
  • Use a current limit for the first power-up.
  • Keep liquids, loose metal, and uninsulated wires away from the bench.
Ready to continue?
STEP 2 / 6 · Parts library

Gather, identify, and understand every part.

Use the standardized inventory, then open What's this? to learn each part's role, advantages, limitations, handling, and specifications.

NAMED PROJECT INVENTORY3 PART LINES
PARTTYPEQTYREADY
MArduino UnoMODULE1
What's this?Image, role, pros, cons, handling & specifications
Simple Arduino Audio Player and Amplifier with LM386 - source illustration from page 740MODULE LEARNING VIEW

Arduino Uno

A programmable controller that reads inputs, makes decisions, and drives the project's outputs.

What it does here

It is the control centre and must use the documented board, pin map, supply, and logic level.

Buy / compare this part

Advantages

  • Reprogrammable and reusable
  • Large learning ecosystem
  • Complex behaviour remains changeable

Limitations

  • GPIO voltage and current are limited
  • Some pins affect boot or communication
  • Loads normally need a driver

Handling

  • Disconnect power before rewiring
  • Avoid static discharge
  • Never power motors, relays, or pumps directly from GPIO

Specifications to verify

  • Use the exact model, value, package, and rating listed for Arduino Uno; similar-looking parts are not always interchangeable.
  • Confirm operating voltage, logic level, pinout, memory, USB interface, and maximum GPIO current.
PSpeakerPART1
What's this?Image, role, pros, cons, handling & specifications
Simple Arduino Audio Player and Amplifier with LM386 - source illustration from page 740PART LEARNING VIEW

Speaker

An output component turns an electrical control signal into light, sound, motion, switching, or displayed information.

What it does here

It presents the circuit result or acts on the physical world.

Buy / compare this part

Advantages

  • Makes system state visible
  • Can be tested separately
  • Supports clear troubleshooting

Limitations

  • Loads may exceed controller current
  • Polarity or driver direction can matter
  • Inductive loads create voltage spikes

Handling

  • Use the documented driver stage
  • Check polarity and load current
  • Add flyback protection for inductive loads

Specifications to verify

  • Use the exact model, value, package, and rating listed for Speaker; similar-looking parts are not always interchangeable.
  • Confirm voltage, current, polarity, interface, driver requirements, and duty cycle.
SLM386SEMICONDUCTOR1
What's this?Image, role, pros, cons, handling & specifications
LM386 low-voltage audio amplifierSEMICONDUCTOR LEARNING VIEW

LM386

A semiconductor stage performs switching, amplification, regulation, rectification, or logic.

What it does here

It controls current or signal flow at a defined point in the circuit.

Buy / compare this part

Advantages

  • Fast and efficient
  • Compact
  • Can control larger loads from smaller signals

Limitations

  • Pin order varies
  • Sensitive to overvoltage and reverse polarity
  • May need cooling or bias components

Handling

  • Verify the datasheet pinout
  • Avoid static and soldering heat
  • Check notch, stripe, or flat-face orientation

Specifications to verify

  • Use the exact model, value, package, and rating listed for LM386; similar-looking parts are not always interchangeable.
  • Confirm pinout, maximum voltage/current, dissipation, gain or forward voltage, and package.
Ready to continue?
STEP 4 / 6 · Source code

Confirm the hardware-only control path.

This project does not include firmware in the source. The circuit itself provides the required behaviour.

01

How to connect

  1. Match every controller label to the circuit view and source pin map.
  2. Join grounds before signal wires when separate low-voltage supplies are used.
  3. Keep motors, relays, pumps, and other loads on a suitable driver and external supply.

Common mistakes

Reversed VCC/GND, board-label versus GPIO-number confusion, missing common ground, and charge-only USB cables.

Troubleshoot

Disconnect loads, continuity-test one path at a time, then test with a current limit.

02

Software preparation

No IDE, board package, library, or firmware upload is required for this project.

If you add a programmable controller as an extension, document its pin map separately.

03

How to upload code

The original design is implemented entirely in hardware, so proceed after verifying the circuit and supply.

Ready to continue?
STEP 5 / 6 · Build

Assemble, deploy, test, and troubleshoot.

Use the complete source notes in build order, then pass the final checks before calling the project finished.

ASSEMBLY

Build in functional stages

  • Power and regulation
  • Controller or processing stage
  • Inputs and sensors
  • Outputs and loads
  • Enclosure and strain relief
TEST

Power up safely

  • Inspect unpowered continuity first
  • Apply the lowest safe current limit
  • Measure supply rails before signals
  • Add one load at a time
  • Record expected and actual results
TROUBLESHOOT

Work from simple to complex

  • Confirm power, ground, polarity, and orientation
  • Compare each pin with the source
  • Test inputs separately from outputs
  • Replace only one variable at a time
  • Power off before every correction
PROJECT-SPECIFIC BUILD NOTES

Follow the documented instructions.

These notes come from this project's source and remain in their original order.

01

Project overview

Project build note

Adding music or sounds will always make our project look a lot cooler and more appealing. The best way to add sound effects to your project is by investing in an extra SD card module and a normal speaker, especially if you are using an Arduino and you have lots of open pins. Using your Arduino Board, I have created a simple Music Player/Sound Maker. Thank you to the Arduino community for developing some libraries for you to build this quickly and easily. The IC LM386 was also used here to increase the volume and cancel out the noise.

02

Hardware Required

Project build note

Arduino UNO SD Card Reader module SD card LM386 Audio Amplifier 10uf Capacitor (2 Nos) 100uf Capacitor (2 Nos) 1K, 10K Resistor Push buttons (2 Nos)

Breadboard Connecting Wires

03

Circuit Diagram

Project build note

The goal of this project is to play the .wav music files stored on the SD card. Through the LM386 Audio amplifier, we will play these .wav files on a speaker using an Arduino programmed to read them. This project cannot technically be called an Arduino Mp3 Player since this code can only read .wav files, but you still get to hear the music. Alternatively, consider an Arduino music player without SD card if you are looking for a simple alternative

04

Prepare your audio files with your WAV files

Project build note

Audio files in .wav format are necessary for playing sounds from SD cards using Arduino. Due to the inherent limitations of the Arduino Board, only wav format audio can be played. An Arduino mp3 player can be made using

many different mp3 shields which are available for Arduino. Alternatively, many websites provide instruments for the conversion of audio files into WAV files on your computer. Following the steps below will help you convert any audio file to wav

05

format

Project build note

Step 1: Go to “ https://audio.online-convert.com/convert-to-wav ” website. Step 2: The following format is supported by Arduino. You can experiment with different settings later, however, the following settings were experimentally the best in quality. Bit Resolution8 Bit Sampling Rate 16000 Hz Audio ChannelMono PCM format PCM unsigned 8-bit

06

Step 3

Project build note

In the website, check the "choose file" box and select the file you will be converting. Then feed the settings into the field. Once done, your conversion should look like the image below.

Step 4: Afterwards, click on “Convert File” and your Audio will be converted into .WAV format. Once the conversion is completed, the .WAV file will be downloaded.

07

Step 5

Project build note

Once you've formatted your SD card, save the audio .wav file onto it. Before adding this file, make sure it is formatted correctly. Keep in mind the name of your audio file as well. You can do the same with your four audio files, selecting any one of them and saving them as 1, 2, 3, and 4. As shown

below, I have converted four songs created by a particular digital music converter to wav, mp3, mp4, and mp3 audio formats. We interface the Arduino with a SD card reader module since we haven't been able to interface our Arduino directly with some of our audio files. With the SD card and Arduino, communication is accomplished using SPI. Thus, the Module is connected to the Arduino's SPI pins as shown above in the diagram. The following table provides further details. ArduinoSD card module +5V Vcc Gnd Gnd Pin 12 MISO (Master in Slave out) Pin 11 MOSI (Master Out Slave In) Pin 13 SCK (Synchronous Clock)

Pin 4 CS (Chip Select) After the SD card is read, the Arduino will be capable of playing the music on pin number 9. On pin 9, the audio signals generated by the Arduino are not loud enough to be audible much. Therefore, LM386 Low voltage Audio amplifier IC is used to amplify it. Amplifiers like the one shown above have Gains as high as 200 and the 5V pin of the Arduino is powering the Vdd pin. If you want to adjust the volume, the voltage applied to this pin can be increased/decreased. There are 200 watts of gain amplification in this device, which is ideal for use in low power circuits for LM386. Additional buttons are also connected to pins 2 and 3 on the Arduino. The switches can play/pause the music and play/skip the next track of a song respectively. The buttons below were used only to demonstrate the song's capabilities; you can play the song whenever desired.

Ready to continue?
PROJECT ACHIEVED

You built Simple Arduino Audio Player and Amplifier with LM386.

You followed the full workflow from understanding the mission to testing the finished project. That is a real engineering achievement - well done.

Arduino based Bluetooth Biped Bob (Walking & Dancing Robot) project thumbnail featuring Arduino Nano, Servo SG90 – 4Nos, Male berg sticks
NEXT ARDUINO ADVENTURE

Arduino based Bluetooth Biped Bob (Walking & Dancing Robot)

Ready to reuse what you learned in another project from the same track?

Start this project
Browse all 500 projects