TK Sound pack programming

 

Terminology

TK Sound pack is created by combing Pack Header, sound effect data region and region mark, can be modified and simulate sound effect result in most of Audio editing tool on the market easily, no extra tool to install and learn, can be adapted in TK20, TK30 and TK60 series control board and therefore named TK sound pack

 

Pack Header is binary code sequence that indicate the process to take place

 

Pack Header Format

Name

Region's Start Address

Number of bytes

Description

Global Control

0x00000

1

(0x00) = To program software, setting or sound
(0x80) = Nothing to do

Region update control 0x00001 1

(0x00) = To detect and program region mark
(0x80) = Not To detect and program region mark

 

Hint:  Not required if region mark position is not changed, for example, if change are on sound volume

only.

Setting update control 0x00002 1 (0x00) = To program setting
(0x80) = Not to program setting
Software update control 0x00003 1 (0x00) = To program software
(0x80) = Not to program software
Serial Key

0x00004

6

When serial key is matched, the process specified by control code will be taken place, otherwise, no process will be taken place.

 

Each board has unique serial key programmed in factory.

 

Default serial key is 0x80 0x80 0x80 0x80 0x80 0x80

 

 

Sound effect data original is the start address of sound effect data regions, it's 242144 or 0x40000

 

Sound effect data region is the region that contain the audio effect samples that you want to play in specific event.

Sound effect data region format

Name

Region's Start Address

Number of bytes

Description

Incoming

0x40000

variable

 

About to be hit or destroyed
 

Hit

variable

variable

Hit sound

Destroyed

variable

variable

Destroyed sound

MG incoming

variable

variable

About to be hit by MG

MG Hit, Ind on

variable

variable

hit by MG, IR Indicator on

MG Hit, Ind off

variable

variable

hit by MG, IR Indicator off, loop to MG Hit, Ind on if hit continuously

MG Hit  echo

variable

variable

MG Hit echo sound

Push But

variable

variable

Push button sound

Welding

variable

variable

fix tank sound

Gear Shift

variable

variable

gear shift sound

Cannon

variable

variable

cannon sound

Reload

variable

variable

reload sound

1st MG start

variable

variable

1st machine gun start sound

1st MG 1 on

variable

variable

1st machine gun round 1 sound, LED on

1st MG 1 off

variable

variable

1st machine gun round 1 sound, LED off

1st MG 2 on

variable

variable

1st machine gun round 2 sound, LED on

1st MG 2 off

variable

variable

1st machine gun round 2 sound, LED off

1st MG 3 on

variable

variable

1st machine gun round 3 sound, LED on

1st MG 3 off

variable

variable

1st machine gun round 3 sound, LED off

1st MG 4 on

variable

variable

1st machine gun round 4 sound, LED on

1st MG 4 off

variable

variable

1st machine gun round 4 sound, LED off

1st MG 5 on

variable

variable

1st machine gun round 5 sound, LED on

1st MG 5 off

variable

variable

1st machine gun round 5 sound, LED off

1st MG 6 on

variable

variable

1st machine gun round 6 sound, LED on

1st MG 6 off

variable

variable

1st machine gun round 6 sound, LED off

1st MG 7 on

variable

variable

1st machine gun round 7 sound, LED on

1st MG 7 off

variable

variable

1st machine gun round 7 sound, LED off

1st MG 8 on

variable

variable

1st machine gun round 8 sound, LED on

1st MG 8 off

variable

variable

1st machine gun round 8 sound, LED off

1st MG 9 on

variable

variable

1st machine gun round 9 sound, LED on

1st MG 9 off

variable

variable

1st machine gun round 9 sound, LED off

1st MG 10 on

variable

variable

1st machine gun round 10 sound, LED on

1st MG 10 off

variable

variable

1st machine gun round 10 sound, LED off

Loop to "1st MG 1 on" if fire continuously, loop to  "1st MG echo" if firing stops

1st MG echo

variable

variable

2nd MG echo

2nd MG start

variable

variable

2nd machine gun start sound

2nd MG 1 on

variable

variable

2nd machine gun round 1 sound, LED on

2nd MG 1 off

variable

variable

2nd machine gun round 1 sound, LED off

2nd MG 2 on

variable

variable

2nd machine gun round 2 sound, LED on

2nd MG 2 off

variable

variable

2nd machine gun round 2 sound, LED off

2nd MG 3 on

variable

variable

2nd machine gun round 3 sound, LED on

2nd MG 3 off

variable

variable

2nd machine gun round 3 sound, LED off

2nd MG 4 on

variable

variable

2nd machine gun round 4 sound, LED on

2nd MG 4 off

variable

variable

2nd machine gun round 4 sound, LED off

2nd MG 5 on

variable

variable

2nd machine gun round 5 sound, LED on

2nd MG 5 off

variable

variable

2nd machine gun round 5 sound, LED off

2ndMG 6 on

variable

variable

2nd machine gun round 6 sound, LED on

2nd MG 6 off

variable

variable

2nd machine gun round 6 sound, LED off

2nd MG 7 on

variable

variable

2nd machine gun round 7 sound, LED on

2nd MG 7 off

variable

variable

2nd machine gun round 7 sound, LED off

2nd MG 8 on

variable

variable

2nd machine gun round 8 sound, LED on

2nd MG 8 off

variable

variable

2nd machine gun round 8 sound, LED off

2nd MG 9 on

variable

variable

2nd machine gun round 9 sound, LED on

2nd MG 9 off

variable

variable

2nd machine gun round 9 sound, LED off

2nd MG 10 on

variable

variable

2nd machine gun round 10 sound, LED on

2nd MG 10 off

variable

variable

2nd machine gun round 10 sound, LED off

Loop to "2nd MG 1 on" if fire continuously, loop to  "2nd MG echo" if firing stops

2nd MG echo

variable

variable

2nd MG echo

Coaxial MG start

variable

variable

Coaxial machine gun start sound

Coaxial MG 1 on

variable

variable

Coaxial machine gun round 1 sound, LED on

Coaxial MG 1 off

variable

variable

Coaxial machine gun round 1 sound, LED off

Coaxial MG 2 on

variable

variable

Coaxial machine gun round 2 sound, LED on

Coaxial MG 2 off

variable

variable

Coaxial machine gun round 2 sound, LED off

Coaxial MG 3 on

variable

variable

Coaxial machine gun round 3 sound, LED on

Coaxial MG 3 off

variable

variable

Coaxial machine gun round 3 sound, LED off

Coaxial MG 4 on

variable

variable

Coaxial machine gun round 4 sound, LED on

Coaxial MG 4 off

variable

variable

Coaxial machine gun round 4 sound, LED off

Coaxial MG 5 on

variable

variable

Coaxial machine gun round 5 sound, LED on

Coaxial MG 5 off

variable

variable

Coaxial machine gun round 5 sound, LED off

Coaxial MG 6 on

variable

variable

Coaxial machine gun round 6 sound, LED on

Coaxial MG 6 off

variable

variable

Coaxial machine gun round 6 sound, LED off

Coaxial MG 7 on

variable

variable

Coaxial machine gun round 9 sound, LED on

Coaxial MG 7 off

variable

variable

Coaxial machine gun round 9 sound, LED off

Coaxial MG 8 on

variable

variable

Coaxial machine gun round 10 sound, LED on

Coaxial MG 8 off

variable

variable

Coaxial machine gun round 10 sound, LED off

Loop to "Coaxial MG on" if fire continuously, loop to  "Coaxial MG echo" if firing stops

Coaxial MG echo

variable

variable

Coaxial MG echo

Turret start

variable

variable

turret rotation start

Turret loop

variable

variable

turret rotation loop sound

Looping if  turret rotate continuously, loop to  "Turret stop" rotation stops

Turret Stop

variable

variable

turret rotation stop

Elevation start

variable

variable

gun elevation start

Elevation loop

variable

variable

gun elevation loop sound

Looping if  elevate continuously, loop to  "elevation  stop" rotation stops

Elevation stop

variable

variable

turret rotation stop

Engine start, off

variable

variable

Engine start, smoker off, Heater on

Engine start, on

variable

variable

Engine start, smoker on, Heater on

Engine stop

variable

variable

Engine start, smoker off, Heater off

Engine idle

variable

variable

Engine idle loop, smoker in proportional mode, Heater on

Res.

variable

variable

Reserved, put a mute region.

Tank running

variable

variable

tank running sound

Res.

variable

variable

Reserved, put a mute region.

Res.

variable

variable

Reserved, put a mute region.

Res.

variable

variable

Reserved, put a mute region.

Res.

variable

variable

Reserved, put a mute region.

Tank running start 

variable

variable

tank start to run sound

Tank running stop

variable

variable

tank stop running sound

Res.

variable

variable

Reserved, put a mute region.

Res.

variable

variable

Reserved, put a mute region.

Blinker on

variable

variable

Left and right blinker on sound, LED on

Blinker off

variable

variable

Left and right blinker off sound, LED on

 

Region mark is binary code 0xff sequence that denote the end of each sound effect data region, the length of sequence must equal or larger than 128 bytes.

 

Sound effect data region and Region mark format

 

Audio editing tool is software which allows editing and generating of audio data, such as Audacity* or Sound Forge, more details are on https://en.wikipedia.org/wiki/Audio_editing_software

 

*Need to set Dither setting to None when editing audio file with Audacity, or it will create background noise in output file.

 

TK programmer is a hardware device which can program TK sound pack to TK board, click on the link for details.

 

Programming port is a connector (J6) on TK board to connect to  TK programmer

 

Raw binary file is sound file without file header, contains only sound effect data, most of audio editing tool have this option when saving file.

 

Pre-built sound pack is a sound pack built by us to program TK board, it includes two files,  sound_pack_name_run_time.bin  and  sound_pack_name_prog.bin, please write to distributor or us (sales@clark-model.com)  to request

 

Sound pack template is a single wav file contains required sound effect data and region mark, can be used as template when building new sound pack, please write to distributor or us (sales@clark-model.com)  to request

 

Building a sound pack

Step 1. Open sound pack template with audio editing tool,

Step 2. Paste sound effect data to the region to change, process( volume, pitch, noise reduction, echo..)  and simulate (looping, repeat, transition.. ) sound effects in audio editing tool,

Step 3. set  Global Control =0x80, set Region update control =0x80,

Step 4. save sound pack file in raw binary(*.bin) format, named as sound_pack_name_run_time.bin,

Step 5. set  Global Control =0x00, set Region update control =0x00,

Step 6. save sound pack file in raw binary(*.bin) format, named as sound_pack_name_prog.bin.

 

Procedure to program sound pack

Step 1. Plug LED( F003, LED Main Gun Flasher) to J3 as programming indicator,

Step 2. Power off TK board,

Step 3. Load sound_pack_name_prog.bin to TK programmer

Step 4. Program to TK board,

Step 5. Power on TK board, programming indicator flashes till all process required are done.

Step 6. Verify sound effects, if all meets requirements, go to next step, otherwise modify sound pack and then go to step 2,

Step 7.  Power off TK board,

Step 8. Load  sound_pack_name_run_time.bin to to TK programmer

Step 9. Program to TK board again,

Step 10. Power on TK board, TK board runs with latest  programmed sound, setting and software