This is an part of an el wire data file:
^ 1
A 123
^ 126
T 127
E 128
M 137
K 142
A 146
M 150
Z 158
W 162
A 164
N 165
S 172
E 177
L 183
A 185
N 186
S 189
A 194
Z 199
^ 203
The first field is the command. These commands are all phonemes that will be translated into mouth segments. The second column is the frame number. This animation is running at 50 frames per second. So this example is the first few seconds of the animation. There are a lot of pauses...
The data file is output from my modified version of yolo.
Comments [0]
code is simple
it's cheap
the point is for the head to not sit and blabber away when no one is near it
Comments [0]
Basically a processor controls turning on and off el wire segments based on timing and segment information in a data file on the SD. Simultaneously (really, the propeller has 8 CPUs - http://www.parallax.com/Default.aspx?tabid=407) the audio track is played from a WAV file that resides on the same SD.
current processor usage:
1. main control task
- currently just a simple loop that looks for animation files (audio and el dat files) on the SD and plays them in the order they reside on the disk.
2. el wire output
- small loop that receives the el commands from the el data file parser, waits for frame timer to expire, then lights the appropriate el wire segments.
3. el wire data file reader/parser
- reads the commands from the el data file, parses them, passes them to the el wire output cog. A double buffer scheme is used so that the el wire output cog does not have to wait for the next command.
4. audio output
- reads the wav file and outputs the audio to the propellor pins.
5. low level disk reader
- reads sectors from the fat16 file system on the SD
6. optional - debug output
- multiprocessor debug output coordinator. allows multiple cogs to send output to the terminal.
7. unused
8. unused
future additions
7. external communications - wireless
8. additional device interface? blinkm, ...
hardware
Comments [0]
el-wire animation app with synronized sound track
first few implementations will be talking heads.
some el wire links
http://www.elwire.com/faq/faq.html
Comments [0]
upload some pics of actual hardware and a video of it working. I have an older version that was running at PDF. Maybe I'll upload that video too.
Comments [0]
digikey parts list
8 MOC3031M-ND 0.78000 $6.24 opto isolators
8 497-3323-ND 0.52000 $4.16 TRIAC 600V 1A 3MA TO-92
1 296-13109-5-ND 1.75000 $1.75 IC REMOTE I/O EXPANDER
1 WM6436-ND 1.47000 $1.47 Rectangular - Headers, Male Pin
2 ED2567-ND 1.26000 $2.52 8 pos Terminal Blocks - Wire to Board
2 ED2561-ND 0.28000 $0.56 2 pos Terminal Blocks - Wire to Board
2 A30729CT-ND 1.43000 $2.86 CONN MICRO-MATCH 6POS TOP ENTRY
1 ED2102-ND 3.26000 $3.26 IC socket, Decoupling Capacitor
8 330QBK-ND 330 ohm resistors
and about $20 for pad2pad to make the PCB.
Comments [0]
Comments [2]