Skip to main content
MARS uses Cartesia for text-to-speech. You can customize the robot’s voice by changing the Cartesia voice ID. The simplest way to change the voice is one line in .env. It sets the default voice for both speech paths — the agent’s chat replies and the realtime voice loop — at once. No rebuild required.

Steps

  1. Connect to your robot — either open it in your IDE over Remote SSH (recommended) or SSH in from a terminal
  2. Edit .env — open it in your IDE, or directly from the terminal:
  1. Set your voice ID:
  1. Save the file and restart the robot services (innate service restart) for changes to take effect.

Method 2: Using config/settings.yaml (per-node)

Prefer the central settings file? The voice is read by two nodes — brain_client_node (chat replies) and input_manager_node (the realtime voice loop) — so set cartesia_voice_id in both blocks to keep the two paths in sync:
Then restart the robot services (innate service restart). A value set here takes precedence over .env.

Method 3: Editing the launch file (advanced)

For more permanent changes, you can modify the launch file directly.

1. Find the launch file

The voice ID is configured in the brain client launch file:

2. Change the voice ID

Look for the cartesia_voice_id_arg parameter and update the default_value:
Replace the voice ID with your desired Cartesia voice ID.

3. Build and restart

Finding Voice IDs

You can either:
  • Use an existing Cartesia voice — Browse their voice library to find a voice ID that suits your needs
  • Create a custom voice — Cartesia allows you to clone a voice with just 10 seconds of audio recording
Check out the Cartesia documentation to learn more about available voices and how to create your own.