import serial ups_port = "/dev/ttyUSB1" usb_fake = "/dev/ttyUSBf" ups = serial.Serial(port=ups_port, baudrate=2400, parity="N", bytesize=8, stopbits=1) vp = serial.Serial(port=usb_fake, baudrate=2400, parity="N", bytesize=8, stopbits=1) while True: vp_request = vp.read_until(b'\r') print(f'VP req: {vp_request.decode('ascii').strip()}') ups.write(vp_request) ups.flush() ups_response = ups.read_until(b'\r') print(f'UPS resp: {ups_response.decode('ascii').strip()}') vp.write(ups_response)