From eab073848965842caed9e99ae825d08a2dfe0d31 Mon Sep 17 00:00:00 2001 From: Tom van Leeuwen Date: Sun, 7 Feb 2016 12:21:48 +0100 Subject: Try to re-initialize the programmer several times, to prevent having to un-plug and re-plug the programmer after every time it has been used. --- libtoprammer/main.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'libtoprammer') diff --git a/libtoprammer/main.py b/libtoprammer/main.py index b0fac2e..965dbd3 100644 --- a/libtoprammer/main.py +++ b/libtoprammer/main.py @@ -199,7 +199,15 @@ class TOP(object): (r"top2049\s+ver\s*(\d+\.\d+)", self.TYPE_TOP2049), ) - versionString = self.hw.readVersionString() + # This is the first hardware access. Try several times since the programmer is in an unknown state. + for _ in range(25): + try: + versionString = self.hw.readVersionString() + break + except TOPException, e: + pass + else: + raise TOPException("Could not read version string from hardware") for (regex, t) in versionRegex: if t != self.topType: continue -- cgit v1.2.3