# \[Extension\] SAM - Text to Speech

**URL:** https://forum.makecode.com/t/extension-sam-text-to-speech/39885
**Category:** Show & Tell
**Tags:** extension, game, demo
**Created:** [October 20, 2025, 5:50pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885 "2025-10-20T17:50:14Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![WoodysWorkshop](https://avatars.discourse-cdn.com/v4/letter/w/ea666f/32.png) [@WoodysWorkshop](https://forum.makecode.com/u/WoodysWorkshop)
#### Post date: [October 20, 2025, 5:50pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/1 "2025-10-20T17:50:14Z")

</div>

# SAM Text-To-Speech (TTS) V1.0

A speech synthesizer bringing the classic **SAM (Software Automatic Mouth)** algorithm to MakeCode Arcade! Make your games talk with that iconic retro robot voice.

## Features ✨

- **Authentic SAM Algorithm** - Formant synthesis with glottal pulse generation for natural-sounding speech

- **6 Voice Presets** - SAM, Elf, Little Robot, Stuffy Guy, Little Old Lady, Extra Terrestrial

- **300+ Word Dictionary** - Common English words pre-programmed with proper pronunciations

- **Smooth Phoneme Transitions** - Advanced interpolation for natural-sounding speech flow

- **Fully Customizable** - Adjust pitch, speed, throat, and mouth parameters with sliders

## Adding it to your project ⚒

1. In the Makecode Arcade editor, press **Extensions**

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/8/1/8147087a68bfd925736a353185864992a06f40ee.png)

1. Copy and paste the [URL](https://github.com/Monk070/makecode-sam-speech) into the Extensions: [https://github.com/Monk070/makecode-sam-speech](https://github.com/Monk070/makecode-sam-speech)

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/0/5/05fad6e2b242bbacffc2784da6d6fe9d095a0188.png)

1. Press **Enter** , and **Click** on **sam-tts:**

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/5/e/5e42045737504bf4b76f39ad93b14d3f98d3f8fc.png)

1. SAM has now been added to your project!

 ![image](https://us1.discourse-cdn.com/flex020/uploads/makecode/original/3X/3/8/3824e33876e2ffa72357b90c623be5c82401ab5b.png)

## Demo Project ⚒

I made a project showcasing it in action here:

> **[SAM: Text To Speech (TTS)](https://arcade.makecode.com/85126-05184-91315-40595)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

### Author: ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)
#### Post date: [October 20, 2025, 6:13pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/2 "2025-10-20T18:13:52Z")

</div>

I’m being honest this looks like a reskin improv of the official one : SAMMY: Text-To-Speech / Speech Synthesizer Extension!

---

<div class="post-metadata">

### Author: ![Not-a-creepy-doll](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not-a-creepy-doll/32/28255_2.png) [@Not-a-creepy-doll](https://forum.makecode.com/u/Not-a-creepy-doll)
#### Post date: [October 20, 2025, 6:14pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/3 "2025-10-20T18:14:20Z")

</div>

Wait a minute [Sammy](https://forum.makecode.com/t/sammy-text-to-speech-speech-synthesizer-extension/39499) 2.0? We gotta spider-man situation on our hands. I wonder what @randomuser thinks of this. The extension is really cool and looks fairly easy to use as well, nice job ⭐

---

<div class="post-metadata">

### Author: ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)
#### Post date: [October 20, 2025, 6:27pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/4 "2025-10-20T18:27:22Z")

</div>

Made demo to demonstrate all blocks of this extension.

> **[SAM demo](https://arcade.makecode.com/S11249-06560-88409-12853)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

\*And you’re right, @Not-a-creepy-doll,_there is a spiderman situation here…_  
Oh and the mods posted this very fast…

---

<div class="post-metadata">

### Author: ![Ima.notarobot](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/ima.notarobot/32/26551_2.png) [@Ima.notarobot](https://forum.makecode.com/u/Ima.notarobot)
#### Post date: [October 20, 2025, 6:54pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/5 "2025-10-20T18:54:52Z")

</div>

I am a bit confused. Is this a re-post of @randomuser s text to speech extension?

---

<div class="post-metadata">

### Author: ![WoofWoof](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/woofwoof/32/32523_2.png) [@WoofWoof](https://forum.makecode.com/u/WoofWoof)
#### Post date: [October 20, 2025, 8:40pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/6 "2025-10-20T20:40:52Z")

</div>

This is not a reskin of Random’s extension! It is actually completely different under the hood.

---

<div class="post-metadata">

### Author: ![Not-a-creepy-doll](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not-a-creepy-doll/32/28255_2.png) [@Not-a-creepy-doll](https://forum.makecode.com/u/Not-a-creepy-doll)
#### Post date: [October 20, 2025, 8:41pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/7 "2025-10-20T20:41:21Z")

</div>

It seems different, it has multiple voices and none sound like SAMMY. So I guess it’s like an alternate reality Sammy. SAMMY INTO THE SAMVERSE

---

<div class="post-metadata">

### Author: ![WoodysWorkshop](https://avatars.discourse-cdn.com/v4/letter/w/ea666f/32.png) [@WoodysWorkshop](https://forum.makecode.com/u/WoodysWorkshop)
#### Post date: [October 20, 2025, 8:46pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/8 "2025-10-20T20:46:05Z")

</div>

Hi, all!

Thanks for checking out the extension.

I made this myself from the [original](https://github.com/s-macke/SAM), like @randomuser[had](https://forum.makecode.com/t/sammy-text-to-speech-speech-synthesizer-extension/39499).

I wanted more clarity and accessibility.

I noticed there was an `import speech` module for Mu (micropython), and that’s what took me onto this.

I’ve also made another project to make it simpler to type your own messages and show the words on screen. I recommend the “Little Old Lady” voice for the best clarity.

> **[SamTest](https://arcade.makecode.com/47566-79354-75033-18116)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

### Author: ![Ima.notarobot](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/ima.notarobot/32/26551_2.png) [@Ima.notarobot](https://forum.makecode.com/u/Ima.notarobot)
#### Post date: [October 21, 2025, 3:39pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/10 "2025-10-21T15:39:01Z")

</div>

Oh, thanks for clarifying everyone. 😅 I probably should have paid more attention.

---

<div class="post-metadata">

### Author: ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)
#### Post date: [October 21, 2025, 6:25pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/11 "2025-10-21T18:25:01Z")

</div>

@WoodysWorkshop you should also add a function where you can use the splash block to show what SAM is saying.

---

<div class="post-metadata">

### Author: ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)
#### Post date: [October 21, 2025, 6:25pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/12 "2025-10-21T18:25:14Z")

</div>

> [@WoodysWorkshop](#):
>
> **300+ Word Dictionary** - Common English words pre-programmed with proper pronunciations

The original SAM uses random sounds to create an auditory illusion (or something like it) that make weird sounds sound like words. If you follow that rule, then there no need to go through the hassle of programming words.

---

<div class="post-metadata">

### Author: ![WoodysWorkshop](https://avatars.discourse-cdn.com/v4/letter/w/ea666f/32.png) [@WoodysWorkshop](https://forum.makecode.com/u/WoodysWorkshop)
#### Post date: [October 21, 2025, 8:30pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/13 "2025-10-21T20:30:04Z")

</div>

Have a look at the last ‘SAM test’ example. I use the text sprite extension for this. I believe the splash prompt pauses things.

---

<div class="post-metadata">

### Author: ![WoodysWorkshop](https://avatars.discourse-cdn.com/v4/letter/w/ea666f/32.png) [@WoodysWorkshop](https://forum.makecode.com/u/WoodysWorkshop)
#### Post date: [October 21, 2025, 8:30pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/14 "2025-10-21T20:30:15Z")

</div>

You’re almost right. Yes it uses phoneme sounds but in our lovely English language that isn’t always enough for clarity.

Take ‘ough’. Like in enough, bought, dough, for example.

A map of phonemes together with a dictionary works better.

---

<div class="post-metadata">

### Author: ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)
#### Post date: [October 22, 2025, 5:35pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/15 "2025-10-22T17:35:35Z")

</div>

More like an improv

---

<div class="post-metadata">

### Author: ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)
#### Post date: [October 22, 2025, 5:40pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/16 "2025-10-22T17:40:46Z")

</div>

The code seems a little complicated. Sure, it works, but there could be another way to show what SAM is saying. Something easier.

---

<div class="post-metadata">

### Author: ![VoxelMaster64](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/voxelmaster64/32/32075_2.png) [@VoxelMaster64](https://forum.makecode.com/u/VoxelMaster64)
#### Post date: [October 23, 2025, 4:40pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/17 "2025-10-23T16:40:35Z")

</div>

mySprite.say()?

---

<div class="post-metadata">

### Author: ![WoodysWorkshop](https://avatars.discourse-cdn.com/v4/letter/w/ea666f/32.png) [@WoodysWorkshop](https://forum.makecode.com/u/WoodysWorkshop)
#### Post date: [October 23, 2025, 5:38pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/18 "2025-10-23T17:38:34Z")

</div>

Think of this like LEGO bricks. I’m giving you the speech brick - you snap it together with the display bricks you already have. Simple.

Want text on screen? Use `game.splash()` + `SAM.speak()`. And for added flair, use the timer function to have these happen at the same time.

Example:

> **[RobotVac](https://arcade.makecode.com/64300-77471-42555-30702)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

---

<div class="post-metadata">

### Author: ![RoboVacDev](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/robovacdev/32/29619_2.png) [@RoboVacDev](https://forum.makecode.com/u/RoboVacDev)
#### Post date: [October 23, 2025, 6:24pm UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/19 "2025-10-23T18:24:26Z")

</div>

Thanks for the help.

---

<div class="post-metadata">

### Author: ![BlueYoshi507](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/blueyoshi507/32/32630_2.png) [@BlueYoshi507](https://forum.makecode.com/u/BlueYoshi507)
#### Post date: [October 24, 2025, 4:14am UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/20 "2025-10-24T04:14:32Z")

</div>

LOOK WHAT I DID!  
Scouter from DBZ in Makecode Arcade!  
Available in English and JAPANESE!

> **[SFX](https://arcade.makecode.com/S29989-10317-15979-70737)**
>
> Made with ❤️ in Microsoft MakeCode Arcade.

Can u get over 9000?!

---

<div class="post-metadata">

### Author: ![not\_a\_lemon](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/not_a_lemon/32/35289_2.png) [@not\_a\_lemon](https://forum.makecode.com/u/not_a_lemon)
#### Post date: [October 27, 2025, 4:47am UTC](https://forum.makecode.com/t/extension-sam-text-to-speech/39885/21 "2025-10-27T04:47:10Z")

</div>

Wow this synthesis stuff is getting better all the time, huh?

[Next page](https://forum.makecode.com/t/extension-sam-text-to-speech/39885.md?page=2)
