def __init__(self, master, title="Sonic Eye", start_vol="50",start_slowdown="25",start_dist="3", start_onoff="On", 
                start_automanual="Manual", self_chirpstart="1-Default"):
        tk.Frame.__init__(self,master)
        self.title=title
        self.grid()

        self.onOff=tk.StringVar()
        self.onOff.set(start_onoff)

        self.volume=tk.StringVar() #Volume doesn't do anything yet
        self.volume.set(start_vol)
        
        self.distance=tk.StringVar()
        self.distance.set(start_dist)

        self.slowdown=tk.StringVar()
        self.slowdown.set(start_slowdown)

        self.automanual=tk.StringVar()
        self.automanual.set(start_automanual)

        self.chirpdistancelabel=tk.StringVar()
        self.chirpdistancelabel.set("Play Chirp")

        self.possible_chirps=collections.defaultdict()
        self.possible_chirps["1-Default"]=echo_sound_functions.generate_rampswoop(192000,0.005,25000,52000,1,1,0.0005) 
        self.possible_chirps["2-Long"]=echo_sound_functions.generate_rampswoop(192000,0.02,25000,52000,1,1,0.002)    
        self.possible_chirps["3-Inverted"]=echo_sound_functions.generate_rampswoop(192000,0.005,25000,52000,1,1,0.0005,inverted=True)
        self.possible_chirps["4-Long Inverted"]=echo_sound_functions.generate_rampswoop(192000,0.02,25000,52000,1,1,0.002, inverted=True)
        self.chirp_to_play_name=tk.StringVar()
        self.chirp_to_play_name.set(self_chirpstart)

        self.last_distance=tk.StringVar()
        self.last_distance.set(start_dist)
        self.ultra_in,self.ultra_out,self.head_out=self.get_channels()
        self.channel_list=[self.ultra_in,self.ultra_out,self.head_out]
        self.swoop=self.possible_chirps[self.chirp_to_play_name.get()]
        self.createWidgets()
        master.bind("<Left>",self.DecreaseDistance)   #Set these a little differently
        master.bind("<Right>",self.IncreaseDistance)
        master.bind("<Up>",self.DecreaseSlowdown)
        master.bind("<Down>",self.IncreaseSlowdown)
        master.bind("<minus>",self.DecreaseVolume)
        master.bind("<equal>",self.IncreaseVolume)
        master.bind("c",self.CycleChirp)
        master.bind("1",self.PlayOneMeterChirp)
        master.bind("2",self.PlayThreeMeterChirp)
        master.bind("3",self.PlayTenMeterChirp)
        master.bind("4",self.PlayThirtyMeterChirp)
        master.bind("<space>",self.RepeatLastChirp)
        master.bind("<m>",self.PlayManualDistanceChirp)
        master.bind("<a>",self.AutoManualSwitch)
        master.bind("<o>",self.OnOffSwitch)
def create_long_swoop():
    rs= echo_sound_functions.generate_rampswoop(192000,0.020,25000,52000,1,1,0.002)      
    return rs
def create_long_inv_swoop():
    rs= echo_sound_functions.generate_rampswoop(192000,0.020,25000,52000,1,1,0.002, inverted=True)    
    return rs
def create_swoop_chirp():
    rs= echo_sound_functions.generate_rampswoop(192000,0.005,25000,52000,1,1,0.0005)      
    return rs