← Back to Articles
Tech Ethics

Making Sound Effects with Arduino

How to add triggered sound effects to an Arduino project using the WT588D audio module — wiring, loading sound files, and triggering playback with a PIR motion sensor or photocell.

Making Sound Effects with Arduino

speaker

Sound and Voice Effects

Sound plays an important role in the user experience by adding another layer of depth; making for a more realistic experience. http://www.robotoid.com/sound/soundingoff-sounds.html

The WT588D is a small audio playback module that stores and plays sound files from a microSD card. You pre-load the sounds you want, wire it to your Arduino, and trigger playback by sending it a simple signal. It handles the digital-to-audio conversion and amplification internally — your Arduino just tells it which track to play.

SoundFX Lightshow

Using an Arduino Nano on an expansion board with push-buttons, one to play a sound and the other to select a sound effect from a WT588D through a speaker.

For this project, I’ve selected a low-cost option, internal memory, and reasonable sound quality – WT588D-U, this model includes a built-in mini USB port for power and direct programming. Sound output is amplified by the module and produced by a standard 0.5w 8-ohm speaker or can be connected to an amplified speaker system. The down-side with this module is that it can be difficult to get the programming software and drivers installed and configured.

Using the WT588D voice module connected to a basic speaker, the project can deliver cellular phone quality sound.

More information and tutorials specific to the WT588D:

There are several options for triggering a sound clip to play. Examining the documentation for this module including the schematic…The sound module has a few modes to select from when working with it. If there are only a few sounds that need to be triggered then the direct button mode would work without a microcontroller. However, if there are several sound clips, it takes just as many wires to connect to a microcontroller using the following 3-wire configuration:

WT588D-3-line-serial

In plain terms: connect the WT588D’s BUSY pin to Arduino ground, the DATA pin to a digital output pin (pin 8 in the examples), and the CLK pin to a second digital output pin (pin 9). Power the WT588D from the Arduino’s 5V pin.

I’ve taken the time to download sound clips, modify, and organize a few themes.

WT588D Software 2

WT588D Software

Other themes online:

Parts:

Steps:

Prepare the following for wiring and connect to the expansion board:

Connect the push-buttons to the expansion board and upload test code.

Nano with buttons

Connect strips of 10 RGB 12mm LEDs to the expansion board and upload test code.

Connect the 8×7 segment display module to the expansion board and upload test code.

Any sensor can be used to trigger specific or random sounds and going even further, a basic neural network could make decisions using multiple sensor inputs.

Connect the photocell (a light-dependent resistor whose resistance changes based on ambient light — lower in bright light, higher in darkness) to the expansion board and upload the test code.

Connect the Microphone to the expansion board and upload test code.

Connect the PIR sensor (a motion sensor that detects infrared heat from moving people or animals) to the expansion board and upload the test code.

SoundEffects

Insert Arduino Nano into Expansion Board and plan to provide power using USB to mini USB cord. Optionally, AC/DC Outlet Power Adapter

https://youtu.be/kD2SiK95vtk

Enclosing the project

Drill 7/16” – 1/2” holes into the project box:

promini sound

💬
Continue the conversation in the forum
Town Square · Community Tool Shed · The Tech Collective · Sustainable Communities · and more
Join the Forum →