changed back to socat keeping threaded model

This commit is contained in:
Paul 2024-01-09 10:18:48 +01:00
parent ece7a3941b
commit f80676e266
1 changed files with 12 additions and 6 deletions

18
main.py
View File

@ -1,4 +1,4 @@
import serial, time, pty, os, threading
import serial, time, threading
import busio
from digitalio import DigitalInOut, Direction, Pull
@ -12,6 +12,17 @@ spi = busio.SPI(board.SCK, MOSI=board.MOSI, MISO=board.MISO)
#rfm = adafruit_rfm69.RFM69(spi, CS, RESET, 868.0)
rfm = adafruit_rfm9x.RFM9x(spi, CS, RESET, 868.0, baudrate=20000000)
addr = '/tmp/rfmtty'
addr_client = '/tmp/rfmtty_client'
cmd=['/usr/bin/socat','-d','-d','PTY,link=%s,raw,echo=0' %
addr, 'PTY,link=%s,raw,echo=0' % addr_client]
socat_proc = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
time.sleep(1)
print("Serieller Port: %s" % addr)
ser = serial.Serial(addr, baudrate=baudrate)
def serial_port_reader(ser, rfm):
while True:
ser_data = bytearray()
@ -38,11 +49,6 @@ def serial_port_writer(ser, rfm):
baudrate = 115200
packet_len = 251
master, slave = pty.openpty()
port_name = os.ttyname(slave)
print("Serieller Port: %s" % port_name)
ser = serial.Serial(port_name, baudrate=baudrate)
reader_thread = threading.Thread(target=serial_port_reader, args=(ser,rfm), daemon=True)
reader_thread.start()
writer_thread = threading.Thread(target=serial_port_writer, args=(ser,rfm), daemon=True)