MCPcopy Create free account
hub / github.com/FastLED/FastLED / PySerialAdapter

Class PySerialAdapter

ci/util/serial_interface.py:93–127  ·  view source on GitHub ↗

Adapter wrapping pyserial_monitor.SerialMonitor as SerialInterface.

Source from the content-addressed store, hash-verified

91
92
93class PySerialAdapter:
94 """Adapter wrapping pyserial_monitor.SerialMonitor as SerialInterface."""
95
96 def __init__(
97 self,
98 port: str,
99 baud_rate: int = 115200,
100 auto_reconnect: bool = True,
101 verbose: bool = False,
102 ) -> None:
103 from ci.util.pyserial_monitor import SerialMonitor
104
105 self._monitor = SerialMonitor(
106 port=port,
107 baud_rate=baud_rate,
108 auto_reconnect=auto_reconnect,
109 verbose=verbose,
110 )
111
112 async def connect(self) -> None:
113 self._monitor.__enter__()
114
115 async def close(self) -> None:
116 self._monitor.__exit__(None, None, None)
117
118 async def write(self, data: str) -> None:
119 self._monitor.write(data)
120
121 async def read_lines(self, timeout: float) -> AsyncIterator[str]:
122 for line in self._monitor.read_lines(timeout=timeout):
123 yield line
124
125 async def reset_device(self, board: str | None) -> bool:
126 """Reset device via direct pyserial DTR/RTS toggle."""
127 return _pyserial_dtr_reset(self._monitor.port)
128
129
130class FbuildSerialAdapter:

Callers 1

create_serial_interfaceFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected