vendredi 31 décembre 2010

EDIT 30/08/2011: This is not working .. cannot put negative voltage on the output 

Thinnking of  get ride of theses Transitors.
Will replace them with 2 TTL 74126 QUAD 3 STATE BUFFER
See the connections diagram below :

I didn't test it yet .. (don't have theses quad buffer at home)

It will be easier and much more "clean" because when Arduino pin is set on High there will be a High on the S&S bus, and when the Arduino pin will be Low, the outut on S&S bus will be High-Z. Has the S&S speech synth is PMOS, the PMOS pulldown resistors bring the line to logic 0.
With this method we don't need the -12V of the S&S.

jeudi 30 décembre 2010

Still working on this project..

My work is (almost) based on the "Talk can be cheap by Larry Dighera, published in Computers & Electronics, Februari 1983" where can be found at : http://sites.google.com/site/analogvocoderinfo/speak-spell

I'm trying to do the same as the ASM code for the Z-80 with my arduino.
See below a more readable version of the asm code.
------------------------------------------------
Z-80 PIO init  (not neeed)

Get bus state
wait until data is present (especially CNTL8 because by pressing ON, ON, GO. This leaves only the cursor on, which causes CNTL 8 to periodically go high)

Get bus state
wait until bus is clear ( CNTL8 goes Low )

Get chip select Up (CS) and reset word (0)
Clock (PDC)


Load address command (2)
Clock (PDC)


Nibble 1
Clock (PDC)


Nibble 2
Clock (PDC)


Nibble 3
Clock (PDC)


Nibble 4
Clock (PDC)


Nibble 5
Clock (PDC)


Read Rom Command (8)
Clock (PDC)


Speak Command (10)
Clock (PDC)


Busy Command (14)
Clock (PDC)


Reset Command
Clock (PDC)


Get Bus Status
Check Bit 0
if bit 0 not equal 0 then wait (bit 0 should be CNTL1 )


Reset command
Clock (PDC)

Turn Off  PIO(set Bus to 0 or High-Z)

the Rest of ASM code is not needed.

vendredi 17 décembre 2010

How to connect Arduino to Speak and Spell

See picture below on how to connect Arduino to Speak and Spell

Updated (31-12-2010) i forgot the Input on D4 for CNTL8) :
Crappy Schematics :

Not sure if the -12V is needed has the PMOS should have Pulldown Resistor inside.
The Switch is here to launch the Speech command, because the Midi is not implemented yet.
Explanation on the command bus (with the Transistors) :
When Arduino Pin is on 0, the Transistors will conduct and there will be a 1 on the Bus Pin,when Arduino Pin is on 1, Transistor will stop conducting and there will be a -12 on S&S bus
On CNTL1, there is a Diode connected to input pin 4, i've put this here because when the S&S is on Speech the CNTL1 is high and you need to wait until speech is done.
By pressing ON, ON, GO. This leaves only the cursor on, which causes CNTL 8 to periodically go high

see below the connections inside S&S :

Resources

Some ressources used for YASSP

Talk can be cheap  : http://sites.google.com/site/analogvocoderinfo/speak-spell
Wordmaker : http://sites.google.com/site/analogvocoderinfo/ic-speech/i

Picture of my mess.

Just few picture of my desk .. or my mess. . :)
This Project will be called YASSP  : Yet Another Speak Spell Project :)

Open arduino Speak Status

One part is to do a interface to let Arduino and Speak and spell discuss together ( S&S is old PMOS technology)......... DONE (beta)

the most difficult part .. let Arduino speak the good language to the SPeak and Spell..
Theory is quite easy, See below the simplified version :
the S&S contain a Speech synth and to control it it is a 6 wire bus, 1 clock,1 chip select and 4 bus (address and data).
To get some sound out of it you need to send some command to the speech chip with the rom address of the speech data .

1. reset Speech synth
2. Load address command (2)
3. Send 5 nibble of 4 bits
4. Read Rom Command (8)
5. Speech Command (10)
6. Test Busy command (14) (to check when it finish to speak)

Currently i get some difficulties, i get it to speech each time i want, but it is not always the same sound .. (but the rom data address is always the same).. investigating this issue..


Currently Midi is not implemented into Arduino (quite easy).

working on it..

I'm working on a open Midi kit for Speak and spell (speak and read or math too).
Unfortunately i'm on the first stage of this project. 
Project details :
- Will be open source. (or maybe creative common)
- Will use Arduino 
- wanted to create custom notes table with desired glitches 
- wanted to add a Midi pitch function. 
- why not adding audio effect in it ?

The question is .. Why i'm trying to do a already existing project ?
 - it already exist but it is not open source and you need to buy it.
 - It cannot be modified, feature cannot be added .. 
 - because it is interesting.


hoo a new Blog ..

Why opening a Blog ?... Just to keep track of my differents projects and share them with the DIY community.