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 through the OS config file. 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 config/os.toml — open it in your IDE, or directly from the terminal:
nano ~/innate-os/config/os.toml
  1. Set the voice ID in the [voice] section:
[voice]
cartesia_voice_id = "your-voice-id-here"
  1. Save the file and restart the robot services (innate service restart) for changes to take effect.
You can also set CARTESIA_VOICE_ID in ~/innate-os/.env; the os.toml value takes precedence.

Method 2: 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:
~/innate-os/ros2_ws/src/brain/brain_client/launch/brain_client.launch.py

2. Change the voice ID

Look for the cartesia_voice_id_arg parameter and update the default_value:
cartesia_voice_id_arg = DeclareLaunchArgument(
    "cartesia_voice_id",
    default_value="9fdaae0b-f885-4813-b589-3c07cf9d5fea",  # Change this ID
    description="Cartesia Alfred voice id",
)
Replace the voice ID with your desired Cartesia voice ID.

3. Build and restart

innate build

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.