Hi I've written a bunch of scripts to start synths, and connect them. But sometimes it get's screwed mostly because of timing issues. When counting on client numbers for connecting stuff which app comes up first is important... So: 1) Can I avoid the client numbers alltogether? This seems to require a way to rename ams, since all clients are calles AlsaModularSynth. Is that (starting ams with a specific clientname?) possible? 2) Alternately: is there a better way to handle timing? So app2 will not start before app1 is up and running? Here's an example of the scripts: #!/bin/bash options='--sched -+rtaudio=jack -d -odac -M' csound_path='.patches' ams_path='.patches' zyn_path='.patches' key1=`usb_keyboards | head -n 1` key2=`usb_keyboards | head -n 2 | tail -n 1` key3=`usb_keyboards | head -n 3 | tail -n 1` sine_balls=$csound_path/bouncing_sine_balls.csd noisepad=$csound_path/filtered_noise_pad.csd stringish_arpeggio=$csound_path/stringish_arpeggio.csd mellotron=$csound_path/mellotron_strings.csd warm_muted=$ams_path/muted_lead_big_mistake.ams brass=$ams_path/res_sweep_big_mistake.ams midisplit 60 & midisplit1=$! midisplit 45 60 & midisplit2=$! midisplit 48 60 & midisplit3=$! ams -j --preset $warm_muted & sleep 1 ams -j --preset $brass & sleep 1 csound -+jack_client=csound5_1 $options 4 $sine_balls & csound -+jack_client=csound5_2 $options 3 $noisepad & csound -+jack_client=csound5_4 $options 5 $stringish_arpeggio & csound -+jack_client=csound5_3 $options 8 $mellotron & sleep 2 aconnect $key1 129:0 aconnect 130:1 133:0 aconnect 130:2 132:0 #aconnect 129:5 133:0 aconnect $key2 130:0 csound_auto_connect_audio ams_auto_connect_audio echo press key to shut down... read aconnect -x killall csound killall ams.real kill $midisplit1 kill $midisplit2 kill $midisplit3 killall python -- peace, love & harmony Atte http://www.atte.dk