if controller.state == State.Ready: retries = 5 for i in range(retries): try: Scienta.getImageCounter().read() print "Communication ok" break except: if i >= retries-1: print "Scienta timeout, try..." Scienta.initialize() print "Scienta reinit ok" break else: print "Scienta timeout, retry..." time.sleep(0.5) pass