Sketch Pad icon Sketch Pad — Script-driven Sketch Pad for ARC: draw shapes, text, lines and faces via controlCommand() to visualize object locations, paths and robot data. Try it →
 

Audio

Speak, play sounds and notes, set the volume, and wait for the robot to hear a phrase. The sound blocks list the sounds of the audio robot skills in the project.

Where to find it: the Audio category of the toolbox, in any script editor set to Blockly or on Top bar → Workspaces → Blockly


Blocks

The Audio category of the toolbox
The Audio category of the toolbox
Block What it does
Play Audio Plays a sound from any Soundboard skill added to your project.
Play Audio (Wait) Plays a sound from a Soundboard skill and waits for it to finish completely before continuing to the next block.
Stop Audio Immediately stops anything ARCx is playing, wherever it is playing.
Say Speaks the given text out loud with the project's text to speech engine.
Say (Wait) Speaks the text and pauses the script until the speech has finished being heard before moving on.
Set volume to … percent Set the volume of everything ARCx plays, 0 to 200.
Volume percent The volume ARCx plays at, where 100 plays sounds as they are.
Audio output Where speech and sound are heard - the computer or an EZB - as a description.
Play note … for … ms as a … wave Play a musical note out of the EZB speaker.
Listen up to … seconds for one of … Show the phrases on screen and wait for one to be said (with a speech recognition robot skill) or clicked.
Listen up to … seconds for anything said, prompt … Wait for anything to be said and return what was heard, in lower case, or "timeout".
Listen up to … seconds for a number from … to … counting by … Wait for a number in the range to be said or clicked.

Details

Play Audio

The Play Audio block
The Play Audio block

Plays a sound from any Soundboard skill added to your project. The sound starts playing and the script continues immediately without waiting for it to finish.

When to use it: Use this to add sound effects to your robot in the background while it does other things at the same time.

Example: Play Audio "laser.wav" → the laser sound plays while the robot keeps moving.

Tips:

  • You need a Soundboard skill added to your project for sounds to appear in the list.
  • Use Play Audio (wait) if you need to wait for the sound to finish before continuing.
  • Great for background music or non-blocking sound effects.

Play Audio (Wait)

The Play Audio (Wait) block
The Play Audio (Wait) block

Plays a sound from a Soundboard skill and waits for it to finish completely before continuing to the next block.

When to use it: Use this when the timing of the sound matters — like playing a greeting before the robot starts moving.

Example: Play Audio (wait) "greeting.wav" → waits for the full greeting to play, then moves forward.

Tips:

  • The script is paused until the sound ends — other actions won't happen during playback.
  • Great for intro sounds, announcements, or audio that must complete before an action.
  • For background music, use Play Audio (without wait) instead.

Stop Audio

The Stop Audio block
The Stop Audio block

Immediately stops anything ARCx is playing, wherever it is playing.

When to use it: Use this to cut off a sound that is playing — like stopping music before starting speech, or ending a sound effect.

Example: Stop Audio → immediately silences any sound or speech.

Tips:

  • Good to call at the start of a script to ensure no leftover sounds from before.
  • Use before a Say block if you want to be sure nothing overlaps with speech.

In JavaScript: this block runs

Audio.stop();

Say

The Say block
The Say block

Speaks the given text out loud with the project's text to speech engine. The speech starts and the script continues immediately in the background.

When to use it: Use this to give your robot a voice! It can say status messages, greetings, or reactions while continuing to do other things.

Example: Say "I detected an obstacle!" → the robot speaks while it might still be navigating.

Tips:

  • Which speaker it comes out of — your computer or the robot's own — is set once for the whole project, on the EZ-B Connection skill's configuration.
  • Use Say (wait) if you need to pause until the robot finishes speaking.
  • Keep phrases short for clearer speech synthesis.

In JavaScript: this block runs

Audio.say("Hello World");

Say (Wait)

The Say (Wait) block
The Say (Wait) block

Speaks the text and pauses the script until the speech has finished being heard before moving on.

When to use it: Use this when the robot must finish speaking before doing the next action — like announcing something important before moving.

Example: Say (wait) "Preparing to launch!" → waits for the full announcement before any movement begins.

Tips:

  • The script is fully paused during speech — nothing else runs at the same time.
  • It waits for the sound to actually be heard, including the delay of streaming it to a robot.
  • For background chatter while moving, use the non-wait Say block.

In JavaScript: this block runs

Audio.sayWait("Hello World");

Set volume to … percent

The Set volume to … percent block
The Set volume to … percent block

Set the volume of everything ARCx plays, 0 to 200. 100 plays sounds as they are.

In JavaScript: this block runs

Audio.setVolume(100);

Volume percent

The Volume percent block
The Volume percent block

The volume ARCx plays at, where 100 plays sounds as they are.

In JavaScript: this block gives back the value of

Audio.getVolume()

Audio output

The Audio output block
The Audio output block

Where speech and sound are heard - the computer or an EZB - as a description.

In JavaScript: this block gives back the value of

Audio.getOutput()

Play note … for … ms as a … wave

The Play note … for … ms as a … wave block
The Play note … for … ms as a … wave block

Play a musical note out of the EZB speaker. The script carries on while the note plays.

In JavaScript: this block runs

Audio.soundNote("C1", 500, 0);

Listen up to … seconds for one of …

The Listen up to … seconds for one of … block
The Listen up to … seconds for one of … block

Show the phrases on screen and wait for one to be said (with a speech recognition robot skill) or clicked. Returns the phrase in lower case, or "timeout".

In JavaScript: this block gives back the value of

Audio.waitForSpeech(10, ...["yes", "no"])

Listen up to … seconds for anything said, prompt …

The Listen up to … seconds for anything said, prompt … block
The Listen up to … seconds for anything said, prompt … block

Wait for anything to be said and return what was heard, in lower case, or "timeout".

In JavaScript: this block gives back the value of

Audio.waitForAnySpeech(10, 'Say something')

Listen up to … seconds for a number from … to … counting by …

The Listen up to … seconds for a number from … to … counting by … block
The Listen up to … seconds for a number from … to … counting by … block

Wait for a number in the range to be said or clicked. Returns the number as text, or "timeout".

In JavaScript: this block gives back the value of

Audio.waitForSpeechRange(10, 1, 10, 1)