Thumbnail

Soundboard (EZB)

Play WAV/MP3 via EZ-B v4, manage tracks, add timed scripts for synced robot actions, control via ControlCommand(), volume and clipping indicators.

Compatible with: Compatible with Microsoft Windows 10 or 11 Windows

How to add the Soundboard (EZB) robot skill

  1. Load the most recent release of ARC (Get ARC).
  2. Press the Project tab from the top menu bar in ARC.
  3. Press Add Robot Skill from the button ribbon bar in ARC.
  4. Choose the Audio category tab.
  5. Press the Soundboard (EZB) icon to add the robot skill to your project.

Don't have a robot yet?

Follow the Getting Started Guide to build a robot and use the Soundboard (EZB) robot skill.


How to use the Soundboard (EZB) robot skill

The Soundboard (EZB) Skill lets your robot play sound files through the EZ-B v4 speaker. You can load WAV or MP3 files into the Soundboard list (track list). When you add a file, ARC automatically converts it into a format the EZ-B v4 can play.

You can play tracks by clicking the play button in the Skill, or by using ControlCommand() in scripts (for example: when a button is pressed, when speech is recognized, or when an animation starts).

Main Window

Soundboard (EZB) main window numbered screenshot

1. Stop Button
Stops audio that is currently playing from this Soundboard.

2. Clean Button
If you delete tracks, the list can show empty (blank) rows. Clean removes those blank rows and re-compacts the list. This is helpful to keep track numbers tidy.

3. Clipping Indicator
Turns red when the audio is too loud and becomes distorted (clipping). If you see clipping, lower the volume slider to improve sound quality.

4. Volume Display
Shows the current Soundboard volume as a percentage. It ranges from 1% (very quiet) up to 200% (very loud).

5. Volume Slider
Adjusts the playback volume for this Soundboard. If you hear distortion, reduce this slider until the clipping indicator stays off.

6. Track Number Column
Shows the track number for each row.

7. Tracklist Column
Shows each track’s filename and format. Left-click in this area to choose an audio file and place it on that row.

8. Track Management Buttons
Buttons for each track let you: Play the audio, Edit the track (add timed scripts), or Delete it from the list.

Settings

Soundboard (EZB) settings numbered screenshot

1. Title Field
This is the name of the Skill as it appears in your ARC project. You can rename it to something like Robot Sounds or Dance Music.

2. Board Index Drop-down
Select which EZ-B v4 this Soundboard should use. If you only have one EZ-B connected, this is usually Board 0. If you have multiple boards, match this to the board number shown in your Connection skill.

3. Get Music! Button
Opens freemusicarchive.org where you can download royalty-free music (internet connection required).

How to Use Soundboard (EZB) (Beginner Steps)

  1. Add the Skill
    In ARC go to: ProjectAdd SkillAudioSoundboard (EZB).
  2. Add an audio file
    Click in the Tracklist column on an empty row, then select a .mp3 or .wav file. The file will be added and converted automatically.
  3. Connect to the EZ-B v4
    Make sure ARC is connected to your EZ-B v4 using the appropriate connection skill. If you are not connected, the Soundboard cannot play through the EZ-B speaker.
  4. Press Play
    Click the track’s Play button and confirm you hear audio from the EZ-B v4 speaker.
  5. (Optional) Adjust volume
    Use the Volume Slider. If the clipping indicator turns red or the sound is harsh, reduce the volume.

Track Editor (Timed Scripts)

Soundboard (EZB) track editor screenshot

The Track Editor lets you synchronize robot actions with audio. You can place scripts at specific timestamps so ARC can do things like: move servos, change LEDs, start an animation, or trigger other skills while the sound plays.

How to access the editor: Click a track’s Edit button (in the Track Management Buttons). Inside the editor, right-click on the waveform to see options.

  • Add Script Here: Adds a script at the selected timestamp.
  • Delete selected script: Removes the script from that timestamp.
  • Play from here: Plays starting from the clicked point (useful for testing timing).
  • Set selection start: Marks the start of a selection range.
  • Set Selection End: Marks the end of a selection range.
  • Clear Range: Clears the selection start/end markers.
  • Delete Selection: Deletes the selected audio portion.
  • Cut Selection: Cuts the selected audio portion (remove and place on clipboard).
  • Copy Selection: Copies the selected audio portion.
  • Paste Selection: Pastes audio from the clipboard into the track.
  • Delete Everything Before Here: Deletes audio from the start up to the clicked point.
  • Delete Everything After Here: Deletes audio from the clicked point to the end.
  • Actions: Automatically inserts “Auto Position” actions to quickly create simple dances/animations.

Control Commands (Playing Sounds from Scripts)

This Skill supports ControlCommand(), so you can trigger sounds from any ARC script (for example, from buttons, events, speech recognition, or an Auto Position action). You can find the exact commands for your project by opening the Cheat Sheet tab in ARC (it lists control commands for all skills).

Resources (Creating and Editing Audio)

To record or edit your audio files, you can use free, open-source audio software like Audacity. Save your final files as .wav or .mp3 before adding them to the Soundboard.


Control Commands for the Soundboard (EZB) robot skill

There are Control Commands available for this robot skill which allows the skill to be controlled programmatically from scripts or other robot skills. These commands enable you to automate actions, respond to sensor inputs, and integrate the robot skill with other systems or custom interfaces. If you're new to the concept of Control Commands, we have a comprehensive manual available here that explains how to use them, provides examples to get you started and make the most of this powerful feature.

Control Command Manual

Stop

Stop the current soundboard audio from playing

  • Returns: Boolean [true or false]

Example:

controlCommand("Soundboard v4", "Stop")

Track_Random

Play a random audio file within this soundboard.

  • Returns: Boolean [true or false]

Example:

controlCommand("Soundboard v4", "Track_Random")

Play

Play an audio file by name.

  • Parameter 3: Name of the audio file as String (required)
  • Parameter 4: Execute scripts as Boolean (required)
  • Returns: Boolean [true or false]

Example:

controlCommand("Soundboard v4", "Play", "audioFile.mp3", true)

Related Tutorials

Related Robots

Related Questions


ARC Pro

Upgrade to ARC Pro

With ARC Pro, your robot is not just a machine; it's your creative partner in the journey of technological exploration.

#17  

I know nothing at this point about writing Java or python scripts.

Author Avatar
PRO
USA
#18   — Edited

EZ script does it all anyway

I am happy there is EZ script, it reminds me where we all came from EZ -Robot -  it was easy :-)

EzAng

Author Avatar
PRO
Synthiam
LinkedIn Thingiverse Twitter YouTube GitHub
#19   — Edited

Arc doesn’t support Java. It does use JavaScript, however. It has a sleep command documented here: https://synthiam.com/Docs/javascript-api/javascript-overview

ezscript is actually very slow in comparison to JavaScript.

A more efficient option is to wait until the sound is completely played by monitoring the audio status variable in a loop. Add a sound (wait) in the Blockly UI and take a look at the JavaScript code.

here’s an example screenshot since I’m on my phone 

User-inserted image

and I created the code example by adding a sound (wait) in blockly 

User-inserted image

Author Avatar
Indonesia
#20  

any chance to get source code to improve it for dynamic load files and play them?