Add Birdcage TUI: 5-screen Textual interface for Carryout G2
F1 Position (compass rose, motor control, sparklines), F2 Signal (RSSI gauge with sub-char precision, DVB/ADC sparklines, LNA toggle), F3 Scan (AZ/EL grid sweep with heatmap and CSV export), F4 System (NVS table, A3981 diagnostics, motor dynamics), F5 Console (raw serial terminal with prompt detection and safety gates). Includes SerialBridge (thread-safe protocol wrapper), DemoDevice (synthetic simulation for --demo mode), dark RF theme with rounded borders and teal accents, and send_raw() on CarryoutG2Protocol.
This commit is contained in:
parent
a70b9b0a29
commit
7271b53c63
23 changed files with 4160 additions and 0 deletions
|
|
@ -392,6 +392,10 @@ class CarryoutG2Protocol(FirmwareProtocol):
|
|||
|
||||
raise ValueError(f"Could not parse RSSI from: {response!r}")
|
||||
|
||||
def send_raw(self, cmd: str) -> str:
|
||||
"""Send arbitrary command, return raw prompt-terminated response."""
|
||||
return self._send(cmd)
|
||||
|
||||
def quit_submenu(self) -> None:
|
||||
"""Exit current submenu and return to parent."""
|
||||
self._send("q")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue