Disable hup on serial port

master
Guillaume Seguin 2012-08-03 23:20:41 +02:00
parent 99ec219ef8
commit b67990f9f2
1 changed files with 17 additions and 1 deletions

View File

@ -19,6 +19,21 @@ from serial import Serial, SerialException
from threading import Thread from threading import Thread
from select import error as SelectError from select import error as SelectError
import time, getopt, sys import time, getopt, sys
import platform, os
def control_ttyhup(port, disable_hup):
"""Controls the HUPCL"""
if platform.system() == "Linux":
if disable_hup:
os.system("stty -F %s -hup" % port)
else:
os.system("stty -F %s hup" % port)
def enable_hup(port):
control_ttyhup(port, False)
def disable_hup(port):
control_ttyhup(port, True)
class printcore(): class printcore():
def __init__(self,port=None,baud=None): def __init__(self,port=None,baud=None):
@ -80,7 +95,8 @@ class printcore():
if baud is not None: if baud is not None:
self.baud=baud self.baud=baud
if self.port is not None and self.baud is not None: if self.port is not None and self.baud is not None:
self.printer=Serial(port = self.port, baudrate = self.baud, timeout = 1, dsrdtr = True) disable_hup(self.port)
self.printer=Serial(port = self.port, baudrate = self.baud, timeout = 1)
self.stop_read_thread = False self.stop_read_thread = False
self.read_thread = Thread(target=self._listen) self.read_thread = Thread(target=self._listen)
self.read_thread.start() self.read_thread.start()