diff --git a/pyserialext/RS485Ext.py b/pyserialext/RS485Ext.py index c20aed7..30cecba 100644 --- a/pyserialext/RS485Ext.py +++ b/pyserialext/RS485Ext.py @@ -7,13 +7,10 @@ class RS485Ext(serial.rs485.RS485): def __init__(self, *args, **kwargs): super(RS485Ext, self).__init__(*args, **kwargs) self.writec = ctypes.cdll.LoadLibrary('writec.so') - fd = self.fileno() - r = self.writec.set_rs485_mode(fd) + r = self.writec.init() def write(self, b): d = serial.serialutil.to_bytes(b) - l = len(d) - fd = self.fileno() - r = self.writec.writec(fd, d, l) + r = self.writec.writec(self.fileno(), d, len(d)) return r diff --git a/pyserialext/writec.c b/pyserialext/writec.c index 768a0fa..76358ac 100644 --- a/pyserialext/writec.c +++ b/pyserialext/writec.c @@ -6,7 +6,7 @@ const uint8_t DE_PIN = 0; -int set_rs485_mode(int fd) { +int init() { wiringPiSetup(); pinMode(DE_PIN, OUTPUT); digitalWrite(DE_PIN, HIGH);