title: Python threading.Timer only repeats once
body: <pre><code>def On_Instrumentation_StartAnimation():  
  
      """
      Syntax      : On_Instrumentation_StartAnimation()
      Purpose     : Fired if the animation is started
      Parameters  : None
      """
      print "----------------------------------------------------------------------------------------"
      localtime = time.asctime(time.localtime(time.time()))
      global start
      start = time.clock()
      print "The user entered Animation Mode at local time: ", localtime
      print("This data has also been written to 'c:\dSPACE71\cdlog\cdlog.txt'")   
      threading.Timer(2, ExecuteDemo).start()
      ExecuteDemo()
      # Printing to the text file
      file1 = open('c:\dSPACE71\cdlog\cdlog.txt', 'a')
      file1.write("\n----------------------------------------------------------------------------------------")
      file1.write("\nThe user entered Animation Mode at local time: ")
      file1.write(localtime)
      file1.close()      
  
  def ExecuteDemo()
      .
      .
      .
      Current_value = Current.Read()
      localtime = time.asctime(time.localtime(time.time()))
      print "The current reading at localtime:", localtime, "is", str(Current_value) + "."
      # Printing to the text file
      file1 = open('c:\dSPACE71\cdlog\cdlog.txt', 'a')
      file1.write("\n----------------------------------------------------------------------------------------")
      file1.write("\nThe current reading at localtime: ")
      file1.write(localtime)
      file1.write(" is: ")
      file1.write(str(Current_value))
      file1.close()
      .
      .
      .
  </code></pre>
  
  <p>As you can hopefully see, I'm trying to repeat the ExecuteDemo() function every 2 seconds after the StartAnimation function is called. But my problem here is that my ExecuteDemo() only runs twice. How can I get it to keep repeating? Am I missing something?</p>