projects
/
svn42.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
8a0646b
)
attempt to reduce delay. still has to acept multiple sockets..
author
realraum
<realraum@realraum.at>
Thu, 30 Apr 2009 15:08:05 +0000
(15:08 +0000)
committer
realraum
<realraum@realraum.at>
Thu, 30 Apr 2009 15:08:05 +0000
(15:08 +0000)
door_daemon.py
patch
|
blob
|
history
diff --git
a/door_daemon.py
b/door_daemon.py
index
8df0761
..
7453238
100755
(executable)
--- a/
door_daemon.py
+++ b/
door_daemon.py
@@
-47,6
+47,7
@@
class ArduinoUSBThread ( threading.Thread ):
self.running=True
self.lastline=""
self.last_status=None
self.running=True
self.lastline=""
self.last_status=None
+ self.shortsleep = 0
self.cv_updatestatus = threading.Condition(); #lock ist automatically created withing condition
self.file_dev_ttyusb=file_dev_ttyusb
#self.fh = open(self.file_dev_ttyusb,"w+")
self.cv_updatestatus = threading.Condition(); #lock ist automatically created withing condition
self.file_dev_ttyusb=file_dev_ttyusb
#self.fh = open(self.file_dev_ttyusb,"w+")
@@
-94,15
+95,17
@@
class ArduinoUSBThread ( threading.Thread ):
self.cv_updatestatus.release()
def send_reset(self):
self.cv_updatestatus.release()
def send_reset(self):
- logging.info("Resetting Door")
- print("\nSending r..")
+ self.shortsleep = 20
+ logging.info("Resetting Door")
+ #print("\nSending r..")
self.fh.write("r");
self.fh.write("r");
- print("done\n")
+ #print("done\n")
def send_statusrequest(self):
def send_statusrequest(self):
- print("\nSending s..")
+ self.shortsleep = 20
+ #print("\nSending s..")
self.fh.write("s");
self.fh.write("s");
- print("done\n")
+ #print("done\n")
self.cv_updatestatus.acquire()
self.cv_updatestatus.wait(5.0)
self.cv_updatestatus.release()
self.cv_updatestatus.acquire()
self.cv_updatestatus.wait(5.0)
self.cv_updatestatus.release()
@@
-112,7
+115,11
@@
class ArduinoUSBThread ( threading.Thread ):
try:
line = self.fh.readline();
except IOError, e:
try:
line = self.fh.readline();
except IOError, e:
- time.sleep(0.5)
+ if self.shortsleep > 0:
+ time.sleep(0.05)
+ self.shortsleep -= 1
+ else:
+ time.sleep(0.5)
continue
self.cv_updatestatus.acquire()
self.lastline=line.strip()
continue
self.cv_updatestatus.acquire()
self.lastline=line.strip()
@@
-224,4
+231,4
@@
signal.signal(signal.SIGQUIT, exit_handler)
logging.info("Door Daemon started")
arduino.join()
logging.info("Door Daemon started")
arduino.join()
-ctrlfifo.join()
\ No newline at end of file
+ctrlfifo.join()