From 40bd0d76852b71bd0f422793b2e773c6764be9e0 Mon Sep 17 00:00:00 2001 From: Sjoerd Dirk Meijer Date: Thu, 2 May 2013 21:59:45 +0200 Subject: [PATCH] moved version-check to function --- Arduino/arduino.py | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/Arduino/arduino.py b/Arduino/arduino.py index cd7749a..98f0ae2 100644 --- a/Arduino/arduino.py +++ b/Arduino/arduino.py @@ -45,18 +45,12 @@ class Arduino(object): ports = glob.glob("/dev/ttyUSB*") for p in ports: print 'Found ', p + version = None try: print 'Testing ', p self.sr = serial.Serial(p, self.baud,timeout=self.timeout) time.sleep(2) - cmd_str=''.join(["@version%$!"]) - try: - self.sr.write(cmd_str) - self.sr.flush() - except: - pass - version = self.sr.readline().replace("\r\n","") - #print version + version = self.version() if version != 'version': raise Exception('This is not a Shrimp/Arduino!') self.port = p @@ -71,6 +65,17 @@ class Arduino(object): self.SoftwareSerial = SoftwareSerial(self) self.Servos = Servos(self) self.sr.flush() + + def version(self): + cmd_str=''.join(["@version%$!"]) + try: + self.sr.write(cmd_str) + self.sr.flush() + except: + pass + version = self.sr.readline().replace("\r\n","") + return version + def findPort(self): """ @@ -245,6 +250,7 @@ class Arduino(object): return -1 def close(self): + self.sr.flush() self.sr.close() def digitalRead(self,pin):