Difference between revisions of "Speakjet Phonetic Guide"
| Line 35: | Line 35: | ||
* '''Ending a word/syllable:''' Use ending consonants like <code>\EB</code>, <code>\ED</code>, <code>\EG</code>, or <code>\TT</code>. | * '''Ending a word/syllable:''' Use ending consonants like <code>\EB</code>, <code>\ED</code>, <code>\EG</code>, or <code>\TT</code>. | ||
| − | === 4. | + | === 4. Take care when Doubling Up Sounds Between Words === |
| − | + | A few basic vowel sounds have a consistent sound from beginning to end and can be chained, but most other sounds can't be chained. | |
* If you say ''"Night Time"'', your mouth drops the "T" at the end of "Night" and blends directly into "Time" (saying ''"Ni-Time"''). | * If you say ''"Night Time"'', your mouth drops the "T" at the end of "Night" and blends directly into "Time" (saying ''"Ni-Time"''). | ||
* If you program both "T" sounds back-to-back, the chip will stutter unnaturally. | * If you program both "T" sounds back-to-back, the chip will stutter unnaturally. | ||
Latest revision as of 10:03, 4 October 2026
Contents
- 1 Speakjet Phonetic Guide
- 1.1 How Speech Works on the SpeakJet
- 1.2 Five Golden Rules for Clear Speech
- 1.3 The Vowel Map
- 1.4 Master MSA Command Guide
- 1.4.1 Single-Byte vs. Two-Byte Commands
- 1.4.2 Pauses and Silence Mechanics
- 1.4.3 Shaping Speed, Rhythm, and Timing
- 1.4.4 Vocal Muscle Tone: Stress and Relax
- 1.4.5 Pitch and Emotion Modulation
- 1.4.6 Bend: Changing the Character of the Voice
- 1.4.7 Flow Control, EEPROM Calling, and Port Pins
- 1.4.8 Master Control Codes Summary Table
- 1.5 Allophone Speech Sound List (Codes 128–199)
- 1.6 Sound Effects & Tone List (Codes 200–254)
- 1.7 Practical Code Examples
- 1.8 Glossary of Terms
Speakjet Phonetic Guide
The SpeakJet chip produces human speech and sound effects using its built-in **Mathematical Sound Architecture (MSA)**. Instead of playing back recorded audio files (like .WAV files), it uses math models to copy how human vocal cords, tongues, teeth, and lips move to make sound.
By sending single-byte numbers to the SpeakJet over a serial connection, you can string basic speech sounds together to form any word, sentence, or sound effect in real time.
How Speech Works on the SpeakJet
Human speech is made up of small sound building blocks:
- Phoneme: The general family of a sound (for example, the letter sound "T").
- Allophone: The exact version of that sound you actually hear, depending on where it sits in a word and what sounds come right before or after it.
- The "T" sound at the start of tea has a sharp blast of air.
- The "T" sound at the end of cat is shorter and softer.
- The "T" sound in the middle of water sounds almost like a soft "D".
The SpeakJet has **72 built-in speech elements (allophones)**. As you send these sound codes to the chip, it smoothly glides the sound from one mouth shape to the next, just like a person talking.
Five Golden Rules for Clear Speech
Follow these five rules to make words sound clear and natural rather than muddy or robotic:
1. Spell by Sound, Not by Letters
English spelling does not match how words actually sound. For example, the letters "c-a-t" sound like "K-A-T", and "ph" sounds like "F". Always spell words using the sound codes that match what your ears hear, not how the word is written on paper.
2. Match Consonants to the Right Vowel
Consonant sounds (like B, D, G, K, S) change depending on whether the vowel that follows them is made in the **front** or the **back** of the mouth:
- Use
\BEbefore front vowels (like Bear), but use\BObefore back vowels (like Bone). - Use
\KEbefore front vowels (like Key), but use\KObefore back vowels (like Comb). - Use
\SEbefore front vowels (like See), but use\SObefore back vowels (like So).
3. Use the Right Start or End Sound
Some sounds need special versions depending on where they sit in a syllable:
- Starting a word/syllable: Use initial consonants like
\BE,\DE,\GE, or\TU. - Ending a word/syllable: Use ending consonants like
\EB,\ED,\EG, or\TT.
4. Take care when Doubling Up Sounds Between Words
A few basic vowel sounds have a consistent sound from beginning to end and can be chained, but most other sounds can't be chained.
- If you say "Night Time", your mouth drops the "T" at the end of "Night" and blends directly into "Time" (saying "Ni-Time").
- If you program both "T" sounds back-to-back, the chip will stutter unnaturally.
5. Change the Pitch, Speed, and Bend
A voice that stays at the exact same pitch sounds flat and robotic.
- Questions: Raise the pitch code on the last word to make it sound like a question.
- Statements: Drop the pitch slightly at the very end of a sentence.
- Important Words: Slow down and raise the pitch slightly on the most important word in a sentence to add natural emphasis.
The Vowel Map
Vowels are made by holding your mouth open and changing where your tongue sits (High, Mid, or Low) and whether it is in the Front, Middle, or Back of your mouth. All back vowels are made with rounded lips.
| Tongue Height | Tongue Position in Mouth | ||
|---|---|---|---|
| Front (Flat Lips) | Middle | Back (Round Lips) | |
| High | \IY (128)See, Feed |
— | \UW (139)Food, June |
| High-Mid | \IH (129)Sit, Pin |
— | \UH (138)Book, Could |
| Mid | \EY (130)Gate, Beige |
\AX (133)Cotton |
\OW (137)Comb, Over |
| Low-Mid | \EH (131)Met, Red |
\UX (134)Luck, Up |
\OH (135)Hot, Fox |
| Low | \AY (132)Hat, Fast |
— | \AW (136)Father, Fall |
Long Vowels vs. Sliding Vowels (Diphthongs)
- Making Pure Vowels Longer: To make a simple vowel sound longer, either send the same code twice in a row (for example:
\IY \IY) or place theSLOWcode (8) right in front of it. - Sliding Vowels (Diphthongs): Sounds like
\EYIY(the "A" in gate) or\AYWW(the "ow" in cow) are sliding sounds that move from one vowel to another. **Do not repeat these codes back-to-back**, or the chip will repeat the whole slide and sound like it is hiccuping.
Adding Brief Silences Before Pop Sounds
Sounds like P, B, T, D, K, and G need a tiny moment of silence before their release burst so the mouth can "build up air pressure."
- The chip adds a tiny gap automatically, but if a word sounds muddy, insert a short silence like
Pause 4(30 ms) orPause 5(60 ms) right before the starting pop sound.
Master MSA Command Guide
The MSA engine does not just play sounds—it has an entire programming language of control codes (decimal codes 0 to 31, and 255). These codes sit in the exact same 64-byte input buffer as your speech sounds and execute in the order they were sent.
Mastering these commands is what turns robotic, unintelligible babble into clear, expressive speech.
Single-Byte vs. Two-Byte Commands
- Single-Byte Commands: Codes like
Fast(7),Slow(8), orPause 2(2) act on their own and only take up one byte in the buffer. - Two-Byte Commands: Settings like
Volume(20),Speed(21),Pitch(22), andBend(23) **must be followed by an extra value byte (X)**. For example, setting the pitch to 90 requires sending two bytes in sequence:22, 90.
Pauses and Silence Mechanics
The SpeakJet provides seven distinct pause commands (0 through 6). Picking the right pause is essential for clean sound transitions:
- Pause 0 (0 ms): Immediately tells the synthesizer to ramp its volume down to zero. Always put this at the very end of your speech data so the speaker doesn't hiss or pop when finished.
- Pauses 1, 2, and 3 (Soft Word Breaks):
-
Pause 1= 100 ms -
Pause 2= 200 ms -
Pause 3= 700 ms - How they work: These pauses lower the volume while continuing to calculate the moving mouth shapes. Use these between words (Pause 1 or 2) and between whole sentences (Pause 3) for natural breathing pauses.
-
- Pauses 4, 5, and 6 (Hard Pop Silences):
-
Pause 4= 30 ms -
Pause 5= 60 ms -
Pause 6= 90 ms - How they work: These pauses force the synthesizer to reach total, complete silence before changing the mouth shapes. Use these right before unvoiced pop sounds (like P, T, K) to clear out sound energy and make the consonant pop crisply.
-
Shaping Speed, Rhythm, and Timing
Real people do not pronounce every syllable at the same speed:
- Master Speed (Code 21, X): Sets the overall speaking rate. Default is
114(range 0 to 127). Higher numbers make the voice talk faster. - Fast (Code 7): Cuts the duration of the very next sound in half (0.5× length). Use this on small, unimportant syllables and helper words (like "the", "a", "of", "in").
- Slow (Code 8): Stretches the very next sound to 1.5× its normal length. Use this on stressed syllables or to draw out a vowel sound.
- Delay (Code 30, X): Freezes sound execution for
X × 10 milliseconds(up to 2,550 ms or 2.55 seconds). Useful for timing gaps between phrases.
Vocal Muscle Tone: Stress and Relax
Human vocal cords and mouth muscles tighten when expressing emotion or emphasizing a syllable:
- Stress (Code 14): Simulates slightly tightening the mouth muscles on the next sound. This subtly shifts the vowel frequency upward. For example, playing
Stressbefore\IHmakes it sound closer to a sharp\IY. - Relax (Code 15): Simulates loosening the mouth muscles on the next sound. For example, playing
Relaxbefore\IYsoftens it toward\IH. - Rule for Doubled Sounds: Because
StressandRelaxonly apply to the single sound immediately following them, if you double a vowel (e.g.,\EH \EH), you must send the command before both sounds:14, 131, 14, 131.
Pitch and Emotion Modulation
Pitch represents the fundamental frequency (F0) of vocal cord vibrations:
- Pitch (Code 22, X): Accepts a value from 0 to 255 (default
88). The range covers 3 full musical octaves (32 Hz to 240 Hz).- Values below 30 vibrate so slowly that they sound like individual clicks instead of a tone.
- Pitch code
0completely turns off the vocal cord buzz (0 Hz). - Pitch changes only affect voiced sounds (vowels, nasals, voiced stops). They have no effect on whispered or unvoiced hissing sounds (like S, F, SH).
- Pitch Recipes:
- Asking a Question: Keep your baseline pitch around 80–88, and on the very last syllable, step the pitch up:
22, 110. - Stating a Fact: Start at 90, and step down to
22, 75on the final word to signal you are done talking.
- Asking a Question: Keep your baseline pitch around 80–88, and on the very last syllable, step the pitch up:
Bend: Changing the Character of the Voice
- Bend (Code 23, X): Accepts values from 0 to 15 (default
5). - Bend adjusts the frequency curves of the chip's internal oscillators, changing the perceived size and material of the vocal tract:
- Low Bend (0 to 3): Makes the voice sound deep, hollow, and large.
- Default Bend (5): Natural human voice balance.
- High Bend (8 to 15): Shifts the resonance higher, making the voice sound small.
Flow Control, EEPROM Calling, and Port Pins
- Wait (Code 16): Pauses the chip's speech output until a Start command is received over the serial port or an input pin changes state.
- Repeat (Code 26, X): Repeats the very next code
Xtimes (0 to 255). Great for repeating sound effects or alarm pings without wasting buffer memory. - Call Phrase (Code 28, X) and Goto Phrase (Code 29, X): Allows your code to trigger one of the 16 pre-recorded phrases stored inside the SpeakJet's EEPROM (phrases 0 to 15).
-
Call Phraseacts like a function call—it plays the phrase, and when it hits an End of Phrase code (255), it returns back to where it left off. You can nest calls up to 3 levels deep! -
Goto Phrasejumps to the phrase and does not return.
-
- Port Control (Code 24, X) and Port Output (Code 25, X): Allows the SpeakJet's sound stream to directly flip external output pins (D0, D1, D2).
- Send
24, 0to take manual control of all three pins. - Send
25, Valueto set them HIGH or LOW. You can use this to flash an LED on an exact syllable or ignite a model rocket after a countdown!
- Send
- Reset Defaults (Code 31): Instantly restores Volume (96), Speed (114), Pitch (88), and Bend (5) to factory default values.
Master Control Codes Summary Table
| Dec | Hex | Name | Extra Value? | Default | Description & Practical Usage |
|---|---|---|---|---|---|
000 |
0x00 |
Pause 0 | None | — | 0 ms pause. Fast volume ramp to zero. Put at the end of every phrase. |
001 |
0x01 |
Pause 1 | None | — | 100 ms pause. Smooth volume dip. Ideal between words. |
002 |
0x02 |
Pause 2 | None | — | 200 ms pause. Standard pause between major sentence clauses. |
003 |
0x03 |
Pause 3 | None | — | 700 ms pause. Long pause for paragraph/sentence breaks. |
004 |
0x04 |
Pause 4 | None | — | 30 ms silence. Clears sound energy before starting pop consonants. |
005 |
0x05 |
Pause 5 | None | — | 60 ms silence. Clears sound energy before unvoiced stops. |
006 |
0x06 |
Pause 6 | None | — | 90 ms silence. Extended silence before harsh sounds. |
007 |
0x07 |
Fast | None | — | Plays the very next sound at half (0.5×) length. |
008 |
0x08 |
Slow | None | — | Plays the very next sound at 1.5× length. |
014 |
0x0E |
Stress | None | — | Tightens vocal tract for the very next sound. |
015 |
0x0F |
Relax | None | — | Loosens vocal tract for the very next sound. |
016 |
0x10 |
Wait | None | — | Halts execution until a Start event occurs. |
020 |
0x14 |
Volume | 0–127 | 96 | Sets master loudness level. |
021 |
0x15 |
Speed | 0–127 | 114 | Sets overall speaking speed / phoneme duration. |
022 |
0x16 |
Pitch | 0–255 | 88 | Sets voice pitch (32 Hz to 240 Hz). 0 = unvoiced. |
023 |
0x17 |
Bend | 0–15 | 5 | Sets formant frequency spread (0 = deep, 15 = tinny). |
024 |
0x18 |
PortCtr | 0–7 | 7 | Sets pin control modes for D0–D2 (1 = chip, 0 = user). |
025 |
0x19 |
Port | 0–7 | 0 | Sets HIGH/LOW logic output states for pins D0–D2. |
026 |
0x1A |
Repeat | 0–255 | — | Repeats the very next command or sound code X times. |
028 |
0x1C |
Call Phrase | 0–15 | — | Calls an EEPROM phrase as a subroutine (max 3 deep). |
029 |
0x1D |
Goto Phrase | 0–15 | — | Jumps directly to an EEPROM phrase. |
030 |
0x1E |
Delay | 0–255 | — | Pauses execution for X × 10 ms (up to 2550 ms). |
031 |
0x1F |
Reset Defaults | None | — | Restores Volume (96), Speed (114), Pitch (88), and Bend (5). |
032–127 |
0x20–0x7F |
Reserved | — | — | System reserved memory block. |
255 |
0xFF |
End of Phrase | None | — | Delimits phrase termination in EEPROM. |
Allophone Speech Sound List (Codes 128–199)
This table lists all 72 basic speech building blocks built into the SpeakJet. Note that all lengths are approximate, and the actual measured lengths will vary based on the phoneme context in speech. (due to blending, volume fading, unvoiced phoneme stops, etc.)
| Dec | Hex | Name | Sound Type | Length (ms) | Helpful Usage Tips | Example Words |
|---|---|---|---|---|---|---|
128 |
0x80 |
\IY |
Long Vowel | 70 | High front vowel. | See, Even, Feed |
129 |
0x81 |
\IH |
Short Vowel | 70 | Short front vowel. | Sit, Fix, Pin |
130 |
0x82 |
\EY |
Long Vowel | 70 | Mid front vowel. Stressed. | Hair, Gate, Beige |
131 |
0x83 |
\EH |
Short Vowel | 70 | Standard "e" sound. | Met, Check, Red |
132 |
0x84 |
\AY |
Short Vowel | 70 | Flat "a" sound. | Hat, Fast, Fan |
133 |
0x85 |
\AX |
Short Vowel | 70 | Relaxed "uh" sound for unstressed parts. | Cotton, Dust |
134 |
0x86 |
\UX |
Short Vowel | 70 | Short "u" sound. | Luck, Up, Uncle |
135 |
0x87 |
\OH |
Short Vowel | 70 | Short "o" sound. | Hot, Clock, Fox |
136 |
0x88 |
\AW |
Short Vowel | 70 | Deep "ah" sound. | Father, Fall |
137 |
0x89 |
\OW |
Long Vowel | 70 | Long "o" sound. | Comb, Over, Hold |
138 |
0x8A |
\UH |
Short Vowel | 70 | Short "oo" sound. | Book, Could, Should |
139 |
0x8B |
\UW |
Long Vowel | 70 | Long "oo" sound. | Food, June |
140 |
0x8C |
\MM |
Nasal (Nose) | 70 | Lips together humming sound. | Milk, Famous |
141 |
0x8D |
\NE |
Nasal (Nose) | 70 | Use before front vowels. | Nip, Danger, Thin |
142 |
0x8E |
\NO |
Nasal (Nose) | 70 | Use before back vowels. | No, Snow, On |
143 |
0x8F |
\NGE |
Nasal (Nose) | 70 | "Ng" sound before front vowels. | Think, Ping |
144 |
0x90 |
\NGO |
Nasal (Nose) | 70 | "Ng" sound before back vowels. | Hung, Song |
145 |
0x91 |
\LE |
Resonant | 70 | "L" sound before front vowels. | Lake, Alarm, Lapel |
146 |
0x92 |
\LO |
Resonant | 70 | "L" sound before back vowels. | Clock, Plus, Hello |
147 |
0x93 |
\WW |
Resonant | 70 | Smooth "W" sound. | Wool, Sweat |
148 |
0x94 |
\RR |
Resonant | 70 | Standard "R" sound. | Ray, Brain, Over |
149 |
0x95 |
\IYRR |
R-Vowel | 200 | Combined vowel + R sound. | Clear, Hear, Year |
150 |
0x96 |
\EYRR |
R-Vowel | 200 | Combined vowel + R sound. | Hair, Stair, Repair |
151 |
0x97 |
\AXRR |
R-Vowel | 190 | Soft "er" at end of words. | Fir, Bird, Burn, Letter |
152 |
0x98 |
\AWRR |
R-Vowel | 200 | Combined vowel + R sound. | Part, Farm, Yarn |
153 |
0x99 |
\OWRR |
R-Vowel | 185 | Combined vowel + R sound. | Corn, Four, Your |
154 |
0x9A |
\EYIY |
Sliding Vowel | 165 | Long "A" sound sliding to "E". | Gate, Ate, Ray |
155 |
0x9B |
\OHIY |
Sliding Vowel | 200 | Long "I" sound sliding to "E". | Mice, Fight, White |
156 |
0x9C |
\OWIY |
Sliding Vowel | 225 | "Oy" sound. | Boy, Toy, Voice |
157 |
0x9D |
\OHIH |
Sliding Vowel | 185 | Open "I" sound. | Sky, Five, I |
158 |
0x9E |
\IYEH |
Sliding Vowel | 170 | Starting "Y" sound. | Yes, Yarn, Million |
159 |
0x9F |
\EHLL |
Sliding Vowel | 140 | Blended "el" at end of words. | Saddle, Angle, Little |
160 |
0xA0 |
\IYUW |
Sliding Vowel | 180 | "You" sound glide. | Cute, Few, Computer |
161 |
0xA1 |
\AXUW |
Sliding Vowel | 170 | "Ow" sound. | Brown, Clown, Thousand |
162 |
0xA2 |
\IHWW |
Sliding Vowel | 170 | Short "oo" glide. | Two, New, Zoo |
163 |
0xA3 |
\AYWW |
Sliding Vowel | 200 | "Ow" sound. | Our, Ouch, Owl |
164 |
0xA4 |
\OWWW |
Sliding Vowel | 131 | Long gliding "O" sound. | Go, Hello, Snow |
165 |
0xA5 |
\JH |
Blend | 70 | Voiced "J" sound. | Dodge, Jet, Savage |
166 |
0xA6 |
\VV |
Buzzing Sound | 70 | Voiced "V" buzzing sound. | Vest, Even |
167 |
0xA7 |
\ZZ |
Buzzing Sound | 70 | Voiced "Z" buzzing sound. | Zoo, Zap |
168 |
0xA8 |
\ZH |
Buzzing Sound | 70 | Soft buzzing "sh" sound. | Azure, Treasure |
169 |
0xA9 |
\DH |
Buzzing Sound | 70 | Voiced "th" sound. | There, That, This |
170 |
0xAA |
\BE |
Pop Sound | 45 | Start of word; before front vowels. | Bear, Bird, Beed |
171 |
0xAB |
\BO |
Pop Sound | 45 | Start of word; before back vowels. | Bone, Book, Brown |
172 |
0xAC |
\EB |
Pop Sound | 10 | End of word; after front vowels. | Cab, Crib, Web |
173 |
0xAD |
\OB |
Pop Sound | 10 | End of word; after back vowels. | Bob, Sub, Tub |
174 |
0xAE |
\DE |
Pop Sound | 45 | Start of word; before front vowels. | Deep, Date, Divide |
175 |
0xAF |
\DO |
Pop Sound | 45 | Start of word; before back vowels. | Do, Dust, Dog |
176 |
0xB0 |
\ED |
Pop Sound | 10 | End of word; after front vowels. | Could, Bird |
177 |
0xB1 |
\OD |
Pop Sound | 10 | End of word; after back vowels. | Bud, Food |
178 |
0xB2 |
\GE |
Pop Sound | 55 | Start of word; before front vowels. | Get, Gate, Guest |
179 |
0xB3 |
\GO |
Pop Sound | 55 | Start of word; before back vowels. | Got, Glue, Goo |
180 |
0xB4 |
\EG |
Pop Sound | 55 | End of word; after front vowels. | Peg, Wig |
181 |
0xB5 |
\OG |
Pop Sound | 55 | End of word; after back vowels. | Dog, Pug |
182 |
0xB6 |
\CH |
Blend | 70 | Sharp "ch" sound. | Church, Feature, March |
183 |
0xB7 |
\HE |
Hissing Sound | 70 | "H" sound before front vowels. | Help, Hand, Hair |
184 |
0xB8 |
\HO |
Hissing Sound | 70 | "H" sound before back vowels. | Hoe, Hot, Hug |
185 |
0xB9 |
\WH |
Hissing Sound | 70 | "Wh" blowing sound. | Who, Whale, White |
186 |
0xBA |
\FF |
Hissing Sound | 70 | "F" air hissing sound. | Food, Effort, Off |
187 |
0xBB |
\SE |
Hissing Sound | 40 | "S" sound before front vowels. | See, Vest, Plus |
188 |
0xBC |
\SO |
Hissing Sound | 40 | "S" sound before back vowels. | So, Sweat |
189 |
0xBD |
\SH |
Hissing Sound | 50 | "Sh" air sound. | Ship, Fiction, Leash |
190 |
0xBE |
\TH |
Hissing Sound | 40 | Quiet unvoiced "th" sound. | Thin, Month |
191 |
0xBF |
\TT |
Pop Sound | 50 | Middle or end of words. | Part, Little, Sit |
192 |
0xC0 |
\TU |
Pop Sound | 70 | Sharp start of words. | To, Talk, Ten |
193 |
0xC1 |
\TS |
Blend | 170 | "Ts" ending sound. | Parts, Costs, Robots |
194 |
0xC2 |
\KE |
Pop Sound | 55 | Start of word; before front vowels. | Can't, Clown, Key |
195 |
0xC3 |
\KO |
Pop Sound | 55 | Start of word; before back vowels. | Comb, Quick, Fox |
196 |
0xC4 |
\EK |
Pop Sound | 55 | End of word; after front vowels. | Speak, Task |
197 |
0xC5 |
\OK |
Pop Sound | 45 | End of word; after back vowels. | Book, Took, October |
198 |
0xC6 |
\PE |
Pop Sound | 99 | Start of word; before front vowels. | People, Computer |
199 |
0xC7 |
\PO |
Pop Sound | 99 | Start of word; before back vowels. | Pod, Paw, Copy |
Sound Effects & Tone List (Codes 200–254)
The SpeakJet also has 55 built-in sound effects, sirens, creature sounds, and telephone touch-tones.
Robot Chatter Sounds
Short, 80 ms electronic sounds useful for robotic chatter, button clicks, and sci-fi effects.
| Dec | Hex | Name | Time | Sound Type | Best Used For |
|---|---|---|---|---|---|
200–209 |
0xC8–0xD1 |
\R0 to \R9 |
80 ms each | Robot | Quick electronic clicks, sci-fi computer sounds, and robotic chatter. |
Sirens & Warning Alarms
Sustained pitch sweeps for alarms and alerts.
| Dec | Hex | Name | Time | Description |
|---|---|---|---|---|
210 |
0xD2 |
\A0 |
300 ms | Fast mid-pitch chirp siren. |
211 |
0xD3 |
\A1 |
101 ms | High electronic blip. |
212 |
0xD4 |
\A2 |
102 ms | Low alert tone. |
213 |
0xD5 |
\A3 |
540 ms | Rising multi-tone siren sweep. |
214 |
0xD6 |
\A4 |
530 ms | High warbling siren. |
215 |
0xD7 |
\A5 |
500 ms | Loud industrial warning horn. |
216 |
0xD8 |
\A6 |
135 ms | Fast intrusion alarm beep. |
217 |
0xD9 |
\A7 |
600 ms | Rising two-tone siren sweep. |
218 |
0xDA |
\A8 |
300 ms | Continuous ringing bell sound. |
219 |
0xDB |
\A9 |
250 ms | Repeating alert beep. |
Beeps & Button Feedback
| Dec | Hex | Name | Time | Description |
|---|---|---|---|---|
220 |
0xDC |
\B0 |
200 ms | Clean confirmation beep. |
221 |
0xDD |
\B1 |
270 ms | Mid-pitch chime. |
222 |
0xDE |
\B2 |
280 ms | Low error / rejection buzz. |
223 |
0xDF |
\B3 |
260 ms | High-pitch success beep. |
224 |
0xE0 |
\B4 |
300 ms | Resonant dual-tone blip. |
225 |
0xE1 |
\B5 |
100 ms | Very short click. |
226 |
0xE2 |
\B6 |
104 ms | High button tap sound. |
227 |
0xE3 |
\B7 |
100 ms | Low thud tap sound. |
228 |
0xE4 |
\B8 |
270 ms | Rising two-note chime. |
229 |
0xE5 |
\B9 |
262 ms | Falling two-note cancel sound. |
Biological & Animal Sounds
| Dec | Hex | Name | Time | Description |
|---|---|---|---|---|
230 |
0xE6 |
\C0 |
160 ms | Short bird chirp / click. |
231 |
0xE7 |
\C1 |
300 ms | Low frog croak / throat growl. |
232 |
0xE8 |
\C2 |
182 ms | High bird trill. |
233 |
0xE9 |
\C3 |
120 ms | Quick animal squeak. |
234 |
0xEA |
\C4 |
175 ms | Cricket chirp sound. |
235 |
0xEB |
\C5 |
350 ms | Deep creature groan. |
236 |
0xEC |
\C6 |
160 ms | Short throat grunt. |
237 |
0xED |
\C7 |
260 ms | Rising creature screech. |
238 |
0xEE |
\C8 |
95 ms | Wet throat pop. |
239 |
0xEF |
\C9 |
75 ms | High bug chitter / click. |
Telephone Keypad (DTMF) Tones
Standard dual-tone telephone keypad numbers. Each tone plays for 95 milliseconds.
| Dec | Hex | Name | Phone Key | Low Tone | High Tone | Time |
|---|---|---|---|---|---|---|
240 |
0xF0 |
\D0 |
Key 0 | 941 Hz | 1336 Hz | 95 ms |
241 |
0xF1 |
\D1 |
Key 1 | 697 Hz | 1209 Hz | 95 ms |
242 |
0xF2 |
\D2 |
Key 2 | 697 Hz | 1336 Hz | 95 ms |
243 |
0xF3 |
\D3 |
Key 3 | 697 Hz | 1477 Hz | 95 ms |
244 |
0xF4 |
\D4 |
Key 4 | 770 Hz | 1209 Hz | 95 ms |
245 |
0xF5 |
\D5 |
Key 5 | 770 Hz | 1336 Hz | 95 ms |
246 |
0xF6 |
\D6 |
Key 6 | 770 Hz | 1477 Hz | 95 ms |
247 |
0xF7 |
\D7 |
Key 7 | 852 Hz | 1209 Hz | 95 ms |
248 |
0xF8 |
\D8 |
Key 8 | 852 Hz | 1336 Hz | 95 ms |
249 |
0xF9 |
\D9 |
Key 9 | 852 Hz | 1477 Hz | 95 ms |
250 |
0xFA |
\D10 |
Key * | 941 Hz | 1209 Hz | 95 ms |
251 |
0xFB |
\D11 |
Key # | 941 Hz | 1477 Hz | 95 ms |
Miscellaneous Sounds
| Dec | Hex | Name | Time | Sound Type | Description |
|---|---|---|---|---|---|
252 |
0xFC |
\M0 |
125 ms | Sonar Ping | Deep-water submarine ping. (The chip plays this during Baud Rate setup). |
253 |
0xFD |
\M1 |
250 ms | Gunshot | Sharp pistol blast. |
254 |
0xFE |
\M2 |
530 ms | "WOW" Sound | Vocal sweep moving up and down. |
Practical Code Examples
Example 1: Saying "Ready"
Break the word into four basic sounds:
- Starting "R":
\RR(148) - Short "e":
\EH(131) - Front "D":
\DE(174) - Ending "ee":
\IY(128) - Finish with silence:
Pause 0(0)
// C code array to say "Ready"
const uint8_t SPK_READY[] = { 148, 131, 174, 128, 0 };
Example 2: Emphasizing a Word (Pitch + Slow + Stress)
In the sentence "Stop that!", you can make "Stop" urgent and loud by combining MSA commands:
- Set Pitch higher:
22, 105 - Slow down the 'O' vowel:
8, 135 - Add vocal muscle tension:
14
const uint8_t SPK_STOP_THAT[] = {
// Word 1: "STOP" (Emphasized)
22, 105, // Raise pitch to 105 Hz
188, // \SO (S-sound before back vowel)
191, // \TT (T-sound)
8, 14, 135, // Slow + Stress applied to \OH (Short O)
199, // \PO (P-sound)
4, // Pause 4 (30 ms gap between words)
// Word 2: "THAT" (Lower pitch conclusion)
22, 75, // Lower pitch to 75 Hz
169, // \DH (Voiced "TH")
132, // \AY (Short "A")
191, // \TT (Ending "T")
0 // Pause 0 (Clean finish)
};
Example 3: Asking a Question with Rising Pitch
Notice how raising the pitch on the final syllable of "Online?" makes it naturally sound like an inquiry:
const uint8_t SPK_IS_ONLINE[] = {
// Baseline configuration
31, // Reset to standard defaults (Pitch: 88 Hz)
// "ON-" (\OH, \NO)
135, 142,
1, // Pause 1 (100 ms inter-syllable transition)
// "-LINE?" (\LE, \OHIH, \NE) with rising inflection
22, 115, // Step pitch up from 88 Hz to 115 Hz
145, 157, 141,
0 // Pause 0 (Fade to silence)
};
Example 4: "System Alert" with Horn and Tone Changes
Plays an alarm horn, speaks in a firm tone, pauses between words, and accents the final word:
const uint8_t SPK_SYSTEM_ALERT[] = {
// 1. Reset standard sound settings
31, // Reset defaults (Volume: 96, Speed: 114, Pitch: 88, Bend: 5)
20, 110, // Volume up to 110
22, 70, // Pitch down to 70 Hz (Lower, serious tone)
// 2. Play Warning Horn
215, // Alarm A5 (500 ms)
5, // Pause 5 (60 ms silent gap)
// 3. Speak "SYS-" (\SE, \IH, \SE)
187, 129, 187,
// "-TEM" (\TU, \EH, \MM)
192, 131, 140,
2, // Pause 2 (200 ms break between words)
// 4. Raise pitch for "ALERT"
22, 85, // Pitch raised to 85 Hz for emphasis
130, // "A-" (\EY)
145, 14, 151, 191, // "-LERT" (\LE, \Stress, \AXRR, \TT)
// 5. Clean finish
0 // Pause 0 (Fade to silence)
};
Example 5: Dialing a Phone Number
Transmits the touch-tones for "555-1212" with brief pauses:
const uint8_t SPK_DIAL_SEQUENCE[] = {
245, 6, 245, 6, 245, 2, // 5, 5, 5 with small gaps and a 200 ms break
241, 6, 242, 6, 241, 6, 242, // 1, 2, 1, 2
0 // Mute when done
};
Glossary of Terms
- Allophone
- A specific version of a basic speech sound. For example, the "T" sound in top has a strong burst of air, while the "T" sound in stop is softer. Both are allophones of the letter "T".
- Bend
- A setting (0–15) on the SpeakJet that changes the sound filters. Lower values make the voice sound deeper and hollow; higher values make it sound sharp and metallic.
- Diphthong (Sliding Vowel)
- A vowel sound that glides smoothly from one mouth shape to another within a single syllable, such as the "oy" in boy or the "ow" in cow.
- Fricative (Hissing / Buzzing Sound)
- A sound made by squeezing breath through a narrow opening in the teeth, lips, or tongue. Examples include "S", "Z", "F", "V", and "TH".
- Nasal (Nose Sound)
- A sound produced by letting air pass through the nose rather than the mouth, such as "M" and "N".
- Phoneme
- The basic building-block sound family in a language. Changing a phoneme changes the meaning of a word (like changing the "B" in bat to a "C" to make cat).
- Pitch
- How high or low a voice sounds, like musical notes on a keyboard. Pitch is measured in cycles per second (Hertz).
- Pop Sound (Stop Consonant)
- A sound made by completely blocking the airflow in your mouth for a split second and then releasing it with a burst, such as P, B, T, D, K, and G.
- Resonant
- A smooth, singing consonant sound that lets air flow freely through the mouth without hissing or buzzing, such as "L", "R", and "W".
- Voiced Sound
- A speech sound made while your vocal cords are vibrating. If you gently touch your throat while humming an "M", buzzing a "Z", or saying "AH", you can feel the vibration.
- Voiceless (Unvoiced) Sound
- A speech sound made purely with rushing air, without using your vocal cords. Examples include whispering, "S", "F", and "T".