Files
sunnypilot/panda/python/serial.py
T
github-actions[bot] f5e5d688c3 sunnypilot v2025.03.18-1285
version: sunnypilot v0.9.9 release
  date: 2025-03-18T06:26:39
  master commit: 8e5b656e654a7694c22f2b0b7bee0802db02b4af
2025-03-18 06:26:39 +00:00

36 lines
762 B
Python

# mimic a python serial port
class PandaSerial:
def __init__(self, panda, port, baud):
self.panda = panda
self.port = port
self.panda.set_uart_parity(self.port, 0)
self._baudrate = baud
self.panda.set_uart_baud(self.port, baud)
self.buf = b""
def read(self, l=1):
tt = self.panda.serial_read(self.port)
if len(tt) > 0:
self.buf += tt
ret = self.buf[0:l]
self.buf = self.buf[l:]
return ret
def write(self, dat):
return self.panda.serial_write(self.port, dat)
def close(self):
pass
def flush(self):
pass
@property
def baudrate(self):
return self._baudrate
@baudrate.setter
def baudrate(self, value):
self.panda.set_uart_baud(self.port, value)
self._baudrate = value