01234567890123456789012345678901234567890123456789012345678901234567890123456789
        
        | 743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783 | 
                            <----SKIPPED LINES---->
      elif 'test_servos_sweep' in configuration:
        messageboard.RemoveSetting(configuration, 'test_servos_sweep')
        ServoTestSweep(link)
      new_flight = DifferentFlights(flight, last_flight)
      if new_flight:
        Log('Flight changed from %s to %s' % (
            messageboard.DisplayFlightNumber(last_flight),
            messageboard.DisplayFlightNumber(flight)
        ), ser=link)
        # Turn off laser so line isn't traced while it moves to new position
        link.Write((*last_angles, *LASER_OFF))
      last_flight = flight
    if time.time() >= next_read:
      heartbeat = link.Read()  # simple ack message sent by servos
      next_read = time.time() + READ_DELAY_TIME_SERVO
      if heartbeat and VERBOSE:
        Log('Heartbeat read by Servo: %d' % heartbeat)
    now = GetNow(json_desc_dict, additional_attr)
    current_angles = AzimuthAltitude(flight, now)
    if current_angles and time.time() > next_write:
      if current_angles[1] >= configuration['minimum_altitude_servo_tracking']:
        if VERBOSE:
          Log('Flight #: %s current_angles: %s' % (
              messageboard.DisplayFlightNumber(flight), str(current_angles)))
        laser_rgb = LaserRGBFlight(flight)
        link.Write((*current_angles, *laser_rgb))
        last_angles = current_angles
      else:
        link.Write((*last_angles, *LASER_OFF))
      next_write = time.time() + WRITE_DELAY_TIME
  link.Close(SHUTDOWN_TEXT)
                            <----SKIPPED LINES---->
 | 
          01234567890123456789012345678901234567890123456789012345678901234567890123456789
        
        | 743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783 | 
                            <----SKIPPED LINES---->
      elif 'test_servos_sweep' in configuration:
        messageboard.RemoveSetting(configuration, 'test_servos_sweep')
        ServoTestSweep(link)
      new_flight = DifferentFlights(flight, last_flight)
      if new_flight:
        Log('Flight changed from %s to %s' % (
            messageboard.DisplayFlightNumber(last_flight),
            messageboard.DisplayFlightNumber(flight)
        ), ser=link)
        # Turn off laser so line isn't traced while it moves to new position
        link.Write((*last_angles, *LASER_OFF))
      last_flight = flight
    if time.time() >= next_read:
      heartbeat = link.Read()  # simple ack message sent by servos
      next_read = time.time() + READ_DELAY_TIME_SERVO
      if heartbeat and VERBOSE:
        Log('Heartbeat read by Servo: %s' % str(heartbeat))
    now = GetNow(json_desc_dict, additional_attr)
    current_angles = AzimuthAltitude(flight, now)
    if current_angles and time.time() > next_write:
      if current_angles[1] >= configuration['minimum_altitude_servo_tracking']:
        if VERBOSE:
          Log('Flight #: %s current_angles: %s' % (
              messageboard.DisplayFlightNumber(flight), str(current_angles)))
        laser_rgb = LaserRGBFlight(flight)
        link.Write((*current_angles, *laser_rgb))
        last_angles = current_angles
      else:
        link.Write((*last_angles, *LASER_OFF))
      next_write = time.time() + WRITE_DELAY_TIME
  link.Close(SHUTDOWN_TEXT)
                            <----SKIPPED LINES---->
 |