Files
edelweiss/upsmon/sniffer.py

16 lines
521 B
Python

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)