SPE030 Speech Module Problem


New Member
Hi I have a SPE030 and firstly let me say it is great! I am currently working on a project using a PS2 keyboard, a 2x16 line LCD and the SPE030. I am reading keys from the keyboard (ie the users name) and having the speech module interact with the user. I am in the keyboard testing stage and have a code to display on the screen and speak the key pressed, one at a time. The problem I am having is that if you send a "N" to the SPE030 it says "North" it does this for north, south, east and west, it also says "ahh" instead of "A". I was wondering if there is any way around this, I have tried a space after the letter but makes no difference. Any help would be great. Thanks


Senior Member
You should try programming the speech module with strings which exaggerate the phonetic nature of the text you want it to convert to speech. Instead of telling it to say "A" resulting in "ahh", try programming something like "ay" or "aye". No guarantees that these particular suggestions will work, but you should hopefully be able to refine it to eventually get a suitable/satisfactory result.

Similar efforts can be made to avoid the N/E/S/W issues: "N" converts or "en" and "S" converts to "ess", perhaps? to be perfectly honest, I was not aware that the module was so "smart" as to convert these single characters into the compass points! I've never tried it with my module...



New Member
I am using it on the i2c bus and the keyboard is returning the ASCII code for the key pressed from the lookup table in the manual. To convert to "ay" or "aye" would be more code which I cant really afford for the completed project.


I don’t have one of these units so my help may be limited or I may have misunderstood the SPE030 manual and/or the Winbond WTS701EM/T manual.

The problem you have is that the SPE030 is a phonetic text to speech system.
It’s the best system for most applications as it requires the least amount of work for the end user.

What you could do is load the SPE030 with your own pre-defined phrases to speak each of the alphabet letters correctly.

It would then only take minor adjustment to your code to access these phrases.

You could set your phrases to say “ZZA” for “A”, “ZZB” for “B” all the way to “ZZZ” for “Z”.
Once you have the keyboard ASCII value you can check that it’s between A & Z and then add the keyboard value to “ZZ” and then send that to the SPE030.

This should remove the need for a lookup table in the PICAXE.


Technical Support
Staff member
That is probably the 'we think you would rather buy this to replace your broken one than buy something else and make that work' pricing.

The best hardware option to replace an SPE030 is the SPE035 Budget Serial MP3 Player Kit which is included in the AXE171 Audio Kit. Record audio phrases as .WAV files and then play them back in the sequence required.

An alternative is to use a PC or SBC which can do text to speech.

SPE035 - http://www.picaxe.com/Hardware/Add-on-Modules/Budget-Serial-MP3-Player-Kit
AXE171 - http://www.picaxe.com/Hardware/Project-Kits/PICAXE-14-Audio-Kit


Senior Member
I used an EMIC2 TTS module to receive and speak status data from a robo car a couple years ago. Don't remember much about it. Would this work??


Having used the SPE030 and some earlier devices including the votrax SC-01 chip one could suggest that the accuracy of the speech is dependent upon the size of the exceptions library.

Thus to stay with the SPE-030 you need to add exceptions as already suggested such as “N” = “en” and “A” = “ay”


Technical Support
Staff member
The best free standalone text to speech synthesis tools I have found have been MS Agent which I believe may no longer be available or as easy to use as it was back on Windows 98, and picoTTS which Google includes with Android. The problem with the former is needing a Windows PC and, with the later, having the means to control an Android device.

But any good speech synthesis tool can be used to generate the samples which can then be placed on an SD card to be played back later.

There was some interest in using the MDFLY module in the past and chaining together MP3 samples was discussed so that might be something to look at.

I recall there was also some discussion on recreating the text-to-allophone conversion an SPO256 uses using a PICAXE but the quality of that is quite poor compared to other solutions. And I don't think anyone came up with a PICAXE program which could turn allophones into sound.

There may also be other projects which already have pre-recorded samples which could be re-used though there may be copyright and licensing issues with doing that.


Senior Member
Is it possible to buy it yet ?, I can not find it
Danielpbt, you have resurrected an 11-year old thread and it does appear that the part is long gone. In 2012m I posted about a then-new TTS chip at https://picaxeforum.co.uk/threads/new-text-to-speech-ic.21424/ . Speech is definitely fun to experiment with, a pity it is not cheap or easy in the hobby sector. Phones talk, appliances talk, it' s only natural to want our projects to talk. As others have mentioned, an MP3 player with prerecorded messages is a viable alternative. I wrote an article about making one for just a few bucks at http://servo.texterity.com/servo/201710/MobilePagedReplica.action?pm=2&folio=10#pg10

Best to visit that site in incognito mode, as it uses cookies to limit you to viewing a few pages before asking for money! :)


New Member
Hello everyone, first thanks for your prompt and qualified response. I will study all the options that you have left me here. All of them seem interesting to me
Thank you