Control Emic2 TTS module
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

#Emic 2 A simple JS API to communicate with the Emic 2. Emic 2 is a module used to perform TTS. This particular version of the API is targeted to Tessel microcontroller.


npm install emic2

Alt text ##Initiating module

var tessel = require('tessel');
var emic2 = require('emic2').use(tessel.port['D']);

emic2.on('ready', function(){
    emic2.speak('Hello, this is Tessel, your new friend');


  • speak(txt) The main function that transform text to speech
emic2.speak('Hello there, today is going to be a great day');
  • setVoice(int) Change between 9 available voices in Emic2
     0: Perfect Paul (Paulo)
     1: Huge Harry (Francisco)
     2: Beautiful Betty
     3: Uppity Ursula
     4: Doctor Dennis (Enrique)
     5: Kit the Kid
     6: Frail Frank
     7: Rough Rita
     8: Whispering Wendy (Beatriz) 
    emic2.setVoice(0); // default voice
  • setLanguage('es', ['lan']) Set the language used in TTS
     en: English
     es: Spanish | [ lan: latino or ca: castilian ] 
    emic2.setLanguage('es', 'lan') //Setting language to espanish
    .speak('Hola amigos y amigas, esperon que todos esten bien')
    .speak('As you can see, I am able to speak two languages, can you?');
  • setVolume(int) Set the volume of the Emic 2
     Volume range [-48 to 18] 
     -48 (softest) to 18 (loudest)
  • setRate(int) Set the speaking rate in words per minute from 75 (slowest) to 600 (fastest).
    //Default value: 200
    .speak('I am speaking kind of fast');
  • stop() Immediately stop the currently playing text-to-speech message. This command is only valid while a message is playing.
    emic2.speak('This is a really long text........');

#License MIT

Free Software, Hell Yeah!