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

Function main

ci/autoresearch/test_flexio_rx_squarewave.py:129–216  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

127
128
129def main() -> int:
130 p = argparse.ArgumentParser()
131 p.add_argument("--port", default=DEFAULT_PORT)
132 p.add_argument("--baud", default=DEFAULT_BAUD, type=int)
133 p.add_argument(
134 "--tx-pin",
135 default=3,
136 type=int,
137 help="TX pin driven by analogWriteFrequency (default: 3)",
138 )
139 p.add_argument(
140 "--rx-pin",
141 default=4,
142 type=int,
143 help="RX pin captured by FLEXIO1 (default: 4; "
144 "must be in kFlexIo1Pins[] in the firmware)",
145 )
146 args = p.parse_args()
147
148 if serial is None:
149 print(
150 "ERROR: pyserial not installed. Run: uv pip install pyserial",
151 file=sys.stderr,
152 )
153 return 2
154
155 print(f"[flexio-rx-bench] opening {args.port} @ {args.baud}")
156 try:
157 s = serial.Serial(args.port, args.baud, timeout=0.1)
158 except serial.SerialException as e:
159 print(f"ERROR: could not open {args.port}: {e}", file=sys.stderr)
160 return 2
161 with s:
162 s.dtr = True
163 s.rts = True
164 time.sleep(1.0)
165 s.reset_input_buffer()
166
167 ping = send_rpc(s, "ping", request_id=1, timeout=5.0)
168 if not ping or "result" not in ping:
169 print(
170 "ERROR: ping failed; is AutoResearch flashed and running?",
171 file=sys.stderr,
172 )
173 return 2
174 print(f"[flexio-rx-bench] ping ok: uptime={ping['result'].get('uptimeMs')} ms")
175
176 passes = 0
177 fails = 0
178 for i, case in enumerate(CASES, start=10):
179 print(
180 f"\n--- {case.label} ({case.frequency_hz} Hz / {case.duration_ms} ms) ---"
181 )
182 resp = send_rpc(
183 s,
184 "flexioRxBenchmark",
185 args={
186 "frequency_hz": case.frequency_hz,

Callers 1

Calls 5

parse_argsMethod · 0.80
send_rpcFunction · 0.70
evaluateFunction · 0.70
printFunction · 0.50
getMethod · 0.45

Tested by

no test coverage detected