Skip to content

Audio·

speak (Piper TTS on the CM4), play a sound, set the speaker volume — “silent” means 0tools/reachy_audio.py, 3 tools.

From the module docstring

TINY audio tools — play a sound file + speak text (TTS) with head-wobble sync.

tool does
reachy_play_sound Play a local/daemon sound file through TINY's speaker.
reachy_say Make TINY SPEAK text aloud via TTS, with synced head-wobble.
reachy_volume Read or set TINY's SPEAKER volume via the daemon (0-100).

reachy_play_sound·

reachy_play_sound(sound_file: str, wobble: bool = True) -> dict

Play a local/daemon sound file through TINY's speaker.

argument meaning
sound_file path to a WAV/audio file the daemon can read, or a builtin name like 'wake_up.wav' / 'go_sleep.wav'.
wobble enable head-wobble-on-audio during playback.

source: tools/reachy_audio.py:26

reachy_say·

reachy_say(text: str, lang: str = 'en', wobble: bool = True) -> dict

Make TINY SPEAK text aloud via TTS, with synced head-wobble. USE to talk.

This is TINY's voice for the shell/telegram/thinker/dashboard personas (the always-on voice persona uses the realtime bidi model instead). Synthesizes speech — local Piper service first (offline, TINY_TTS_URL), HF Space as a fallback — plays it on the speaker through the daemon, wobbles the head.

argument meaning
text what to say (<=300 chars per request works best).
lang ISO 639-1 code (en, fr, es, de, it, ja, zh, ...). Local voice is English.
wobble bob the head while speaking.

Examples

reachy_say("Hi, I'm TINY!")
reachy_say("Bonjour tout le monde", lang="fr")

source: tools/reachy_audio.py:76

reachy_volume·

reachy_volume(level: str = '') -> dict

Read or set TINY's SPEAKER volume via the daemon (0-100). Call with no level to read.

level: a number 0-100, or a word: "silent"/"mute"/"shush"/"quiet" -> 0, "quieter" -> half of current, "low" -> 25, "normal" -> 60, "louder" -> +20, "max" -> 100. "silent" is IMMEDIATE — call it BEFORE replying so the confirmation is not shouted. Volume 0 mutes the speaker only: TINY still hears, so "speak up" can restore it.

source: tools/reachy_audio.py:122