It is about time! (SpeakJet visited)

Arduino-SpeakJet.PNG (5245Bytes)

Hey, I can hear it now! You've been here for HOW LONG and you haven't POSTED A BLOG????

Hey, I'm I just not a very "daily blog" kind of person. It takes me FOREVER just to design and build something. Course then it is often "over-engineered" - so of course it takes me a long time, and I just don't take the time to blog. :-(

Anyway, the time has come that I at least try a little bit to break this bad habit...

For awhile, I'll need to catch everyone up with what I've been doing - maybe I can do that over the next few weeks (or months). :-()

For this entry, I chose to write about some stuff I've been doing with the SpeakJet. I was quite inspired by Ant's Tip on the SpeakJet. My recent "microcontroller of choice" has been the Arduino, so it was my "natural" choice.:-)

Using Ant's schematic as a starting point (which BTW appears to be straight out of the SpeakJet user manual) I started hooking wires up to the SpeakJet.

1st I did as Ant suggested, and wired the SpeakJet for "self-test" mode and added an LM386N audio amplifier that I had laying around in my junk box. This worked out just great and I had sound - a bunch of grunts, vowels, consonants, beeps, boops, and squeaks *success* (sorry, no video - I started this project back in January and I didn't take a video of the initial test then - will have to make up for it later I guess - at least I have video of the thing speaking).

Then I wired it for the Arduino. Back in January, I had just built a "Freeduino" (Arduino-clone) from SeeedStudio - so it was my victim test subject.

Below is my "hastily copied only the relevant stuff" from my hand-drawn schematic into Eagle as my original drawing has hand-written notes all over it and is pretty much unreadable to anyone but me anyway :-)

The resulting wired prototype looked like this:

SpkJetProto0_1.jpg

Next I needed to write some code for the Arduino. This was a pretty straightforward conversion from Ants example as well. After a few minutes of tweaking I got the Arduino to speak! Too cool! With the help of the PhraseALator software that I got from Speakjet.com I the got the codes I needed to re-write it to say "Let's Make Robots" of course. :-)


// letsmakerobots demo
// a short sketch written by droidbuilder for demonstration at letsmakerobots.com

// set up a new software serial port
//rxPin: the pin on which to receive serial data
//txPin: the pin on which to transmit serial data
#include <SoftwareSerial.h>
#define txPin 2
#define rxPin 3
// set up the SoftwareSerial port to connect to the SpeakJet
SoftwareSerial SpeakJetSerial = SoftwareSerial(rxPin, txPin);

void setup()
{
// define pin modes for tx, rx pins:
//pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
SpeakJetSerial.begin(9600);

// char array holding the 'lets make robots' string we want to speak
char SayIt[] = {20, 96, 21, 114, 22, 88, 23, 5, 145, 131, 193, 6, 140, 154, 196, 6, 148, 7, 137, 7, 164, 18, 171, 136, 193};
SpeakJetSerial.println(SayIt); // send it to the SpeakJet
}

void loop()
{
// infinite do-nothing loop
}


Watch the video attached to listen to the result!

It was all pretty easy to get going. I have much more to show about the SpeakJet at a later date. Stay tuned!

 

Update 2009-11-6

Since the schematic I had posted here was SO SMALL I uploaded a new schematic image... Hopefully this one will be more readable!

 

https://www.youtube.com/watch?v=302BvTyBPg0

AWESOME! I have had a
AWESOME! I have had a speakjet for months now and not hooked it up. My goal is to get it working with a PICAXE within the next few weeks. I just need to spend an hour to play with it and hook it up. So many fun projects that can benefit from a voice chip.