Skip to content

Commit

Permalink
Right pins now
Browse files Browse the repository at this point in the history
  • Loading branch information
ArminJo committed Jan 27, 2019
1 parent 116cd8b commit d68088c
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 4 deletions.
32 changes: 28 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

## Speech library for Arduino
The original version can be found [here](https://github.com/going-digital/Talkie)
A good explanation of the TMS5220 operation and the LPC frame format can be found [here](https://github.com/mamedev/mame/blob/master/src/devices/sound/tms5220.txt)

Youtube Demonstration of Talkie Voltmeter example

Expand All @@ -17,15 +18,38 @@ Youtube Demonstration of Talkie Voltmeter example
- Added comments and did refactoring to better understand the functionality.
- Added compatibility to Arduino Tone library by stopping timer1 interrupts at every end of speech.
- Extracted initializeHardware() and terminateHardware() functions for easy adapting to other platforms.
- Currently supporting **ATmega328** as found on the **Uno** and **Nano** bords, **ATmega32U4** as found on the **Leonardo** and **CircuitPlaygound** boards.
- Currently supporting:
- **ATmega328** as found on the **Uno** and **Nano** bords.
- **ATmega32U4** as found on the **Leonardo** and **CircuitPlaygound** boards.
- **ARM0** (but not tested) as found on the **SAMD**, **Teensy** and **Particle** boards.

## Hints
- Connect the speaker to digital pin 9 and 10 of Arduino.
- As speaker I use the speakers from old earphones or headphones, which have around 32 Ohm, directly without a series resistor. The headphone speaker tend to be much louder, especially when they stay in their original housings.
- Connect the speaker to digital pin 3 and 11 of Arduino.
- As speaker I use the speakers from old earphones or headphones, which have ca. 32 Ohm, directly without a series resistor. The headphone speaker tend to be much louder, especially when they stay in their original housings.
- The Library uses Timer 1 and Timer 2, so libraries like Tone, Servo, analogWrite(), and some other libraries cannot be used while speaking.
- After a call to say... you can use tone() again.
- To use Servo write() after a call to say... you must detach() and attach() the servo before in order to initialize the timer again for Servo.
- To use Servo write() after a call to say... you must detach() and attach() the servo before first write() in order to initialize the timer again for Servo.
- Porting to ATtinys is not possible, since they lack the hardware multiplication. ( Believe me, I tried it :-( )

## Own vocabulary
To create LPC data you can use [Qboxpro](http://ftp.whtech.com/pc%20utilities/qboxpro.zip), an unsupported old Windows application running under XP, which can produce Talkie compatible data streams. The missing BWCC.DLL (Borland Windows Custom Control Library) can be found e.g. [here](http://www.download-dll.com/dll-BWCC.dll.html).
The process is described [here](http://furrtek.free.fr/index.php?a=speakandspell&ss=9&i=2) and goes like this:
- Create a new project using the following project parameters : Byte / 8 Khz / 5220 coding table
- Goto Project and add the audio file
- Choose process using : medium bit rate and pressing OK
- Edit concatenation : insert concatenation after by adding a name; then insert phrase and press ok
- Format it by choosing the first line in the format menu : LPC 10V, 4UV

Another way to generate the LPC data is to use the pyton script at https://github.com/ptwz/python_wizard

### Schematic for voltmeter example
![Fritzing schematic for voltmeter example](https://github.com/ArminJo/Talkie/blob/master/extras/TalkieVoltmeter_Steckplatine.png)

## Travis CI

The Talkie library examples are built on Travis CI for the following boards:

- Arduino Uno
- Arduino Leonardo
- Arduino Mega 2560
- Arduino cplayClassic
Binary file modified extras/TalkieVoltmeter_Steckplatine.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit d68088c

Please sign in to comment.