Advanced CF-III Sound System Setup – Going back to BASIC
I’m really excited to share some programming work I’ve been doing on my sound system the last few days. I don’t think anyone has done this before with the CF-III within the group.
Some background, I was a little disappointed that the CF-III was only able to trigger one set of random or sequenced sounds, plus one sound per remaining switch/contact. And like a lot of people I was frustrated with having to name all the files 0AC.WAV, 1FC.WAV etc. etc. Talk about getting confused.
What I really wanted was to have multiple banks of sounds, both for generic sounds, chatting/chirps sounds, and multiple banks of music. Try as I might with all the HEX file naming I couldn’t get it to work – and emails to ACS confirmed that I was asking too much of the CFSOUND.INI file.
So I decided to throw the CFSOUND.INI away and try writing my own program in ACS BASIC that would provide at least the same functionality that most people setup today, plus a lot more.
If you saw my post from a few days ago, you’ll know that I have two RF Remotes hooked into my CF-III, a 4 channel relay which handles volume and a 12 channel relay for triggering sounds.
By moving to hand written code in the CFSOUND.BAS file I was able to do everything I wanted plus more. Here’s a round down.
New Functionality – All Uniquely Addressable
- Remote Volume Control
- Two banks of music, with easy toggle select. 12 sounds total, all uniquely addressable
- Generic Sound bank (20 wav files)
- Chirpy/Chatting Sound bank (15 wav files)
- Multiple Whistle Sounds on one key
- Multiple Sad Sounds on one key
- Long and Short version of the Leia message
- Scream
- Short Circuit
- Random Sound Mode – Toggle on/off random sound playing – just press a button an leave R2 talk to himself at random intervals.
- Easy to add more sounds to each bank
- Quick boot time. CF-III is ready in seconds instead of the normal boot time measured in minutes when you have lots of files.
And to top it off I can call my sound files meaningful names for easy changes in the future. No more HEX coded files. e.g. You can now have files called “chirp.wav”, “scream.wav” and “vader.wav”.
This is all via a standard CF-III and your basic RF Remote/Receiver. Nothing extra is needed.
The last couple of nights have been very entertaining and a little painful trying to work around the limits of the BASIC programming language when I’m used to programming in C or PHP. I know I’ve learned or re-learned a lot since I last time wrote a BASIC program 25 years ago.
I think my favorite addition is the random sound mode. So I can leave R2 chatting away while I concentrate on driving 🙂
I’m really excited that I was able to get all this done, and I will hopefully be posting the CFSOUND.BAS program file once I’ve done some more testing.
Watch this space for a demo video soon.
Posted by Chris on December 20th, 2007 in Electronics | Comments Off on Advanced CF-III Sound System Setup – Going back to BASIC
Tags: asc basic, basic, cf-iii, cf3, CFSOUND.BAS, CFSOUND.INI, sound