Let's Make Robots!

Babblebot USB board works, sort of

I purchased one of these voice synthesis chips as kind of a knee-jerk reaction to Maxhirez's bot but I didn't know that they were so finicky and questionably documented. It seems the nature of breadboards cause a lot of problems with this chip as well, some of which I am very familiar with. With the challenges presented it seemed best to design my own PCB and have the pro's through Dorkbot fab the board. I would have considered buying the dev board from the Babblebot guys themselves but it only comes in RS232 flavor! So I went ahead and made mine with USB connectivity in mind. Who uses serial, honestly? In the end the chip seems to work fine (even after reverse voltage!) but the v0.9 boards are a disaster. Battletesting was rough but I have video proof that it works. The v1.0 will involve some important redesigned elements. You can kind of see what I'm going for in the video. Breakout all the pins, blinky lights, etc. I'm considering selling the extras through JAKTEK possibly.

Anyway, in the computer software provided you can make the Babblebot play "Carol of the Bells" via serial commands, so that's what I got for ya :)

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
I got a PICAXE 14M2 talking to the Babblebot successfully. I felt particularly "lazy" so I used an allophone test string I found on the Babblebot/Soundgin Yahoo group. I know at least one person here who will recognize it ;) Here's the code snippet I used:

high b.1 'prepare pin for "idle high" serial comm
pause 50
pause 3000
serout b.1,T2400_4,(221,194,250,248,207,254,202,194,224,250)
goto main

I'll try to remember to post a vid tomorrow. I left my phone at work today. It doubles as my camera so visual documentation will have to wait.





Zero[] = {167,7,128,7,149,164,0};
One[] = {147,14,135,8,141,0};
Two[] = {8,191,162,0};
Three[] = {8,190,148,8,128,0};
Four[] = {186,7,137,153,0};
Five[] = {186,157,166,0};
Six[] = {8,187,129,14,194,7,187,0};
Seven[] = {8,187,7,131,166,131,141,0};
Eight[] = {154,198,191,0};
Nine[] = {141,14,157,141,0};
Ten[] = {191,131,131,141,0};

i Don't know if the phonims from my speak jet are going to work, but what the hell i have about 50 and some bad language and a few names , something like that, if they work ill put the rest up :)

As a comparison, zero in Babblebot allophones is...

zero - _Z , _EE , _R , _OE (248,207,235,228)

Poking around the software last night it looked like it had a method to insert Speakjet codes. Maybe it was to export to speakjet, I can't say. I'll give it a look when I get home.

I'm not quit up on Picaxe, but the interesting line is serout b.1, T2400_4,(221, 194.....) Which I' m reading as setting one of the serial modems to 2400 baud and then sending the string of serial commands to it. Am I close? What is the _4 after the 2400? Is the b.1 one of several modems available on Picaxe? I never got past line numbered MS Basic before the world forced me to learn C, so the syntax is baffling some times.

Yes, T2400 means "idle high at 2400 baud." The "_4" indicates 4MHz operation. The numbers following are the string of allophones to play. The "b.1" is pin one on port b, one of the outputs capable of serial communication.


Thanks for translating, Jax!  I'm going to play with the breadboard version this weekend.

Have you tried any allophone stuff yet? It's so weird that these don't like breadboards. Electrical connections should be absolute, but we all know the fickle nature of the god Electronicus.

I was pushing buttons and entering random sayings into the software's speech module and things worked fine. Still haven't hooked it up to a microcontroller though.

So, you have designed your own customer USB board for this chip? Since Babblebot's dev board is only in serial, could there be a little market for the boards? Instead of selling the rejects, why not offer the final version for sale?

Yup, one of my own creations. Oh, I didn't mean I wanted to pawn these busted boards to other people lol talk about bad grammar on my part. I meant I'm thinking about selling the extra v1.0 boards, not these fouled v0.9 ones. They are pretty much a pair of $7 copper-clad incense holders IMO They have just enough mistakes that I think it's worth sending off another PCB order to seeedstudio in the name of superior functionality. Since they come in batches of 10 I'll have a few to share. I'll probably kit them since I use some oddball compnents that might be hard for others to source.

Upon second examinination of the babblebot board offered through JT Technology I see it is a TTL level board only. I thought they used a RS232/MAX232 setup in there. I guess not. They mention that they have a USB dev board but I see no signs of it. I think my USB board will be comparably priced to their board, sans Babblebot chip, of course.