class MyModbus: def __init__(self, mode): if mode == "tcp": self.etat = mode self.client = ModbusClient(host=ICPCON, port=PORT, auto_open=True, auto_close=True) self.db = db.Mydb() print("---" + self.etat + " configuration---") else: self.etat = mode self.client = serial.Serial(port=myZwave, baudrate=9600, parity=serial.PARITY_ODD) self.db = db.Mydb() print("---" + self.etat + " configuration---") if self.client.isOpen(): os.system( r'echo -ne "\x01\x08\x00\xF2\x51\x01\x00\x05\x01\x51" > /dev/ttyACM0' ) else: print("Didn't stop the light") return def readCoils(self, min=None, max=None): if self.etat == "tcp": coils = self.client.read_holding_registers(min, max) if coils: print(coils) self.db.insert(coils[0], coils[1]) else: print("error : read not ok") else: bits = self.client.read(max) if bits: print(bits) #self.db.insert(bits[0],bits[1]); else: print("error : read not ok") return def writeCoils(self, to, data): if self.client.write_multiple_registers(to, data): #write_single_coil print(" write done ") else: print("error : write not ok") return