Files
Claude 1e153f2f85 Add FT-991A Remote Control App for macOS
Complete Phase 1 implementation of the Yaesu FT-991A remote control
application with CAT protocol support over USB serial (CP210x).

Features implemented:
- SerialPortManager with auto-detection of CP210x ports
- Full CAT protocol parser and command builder
- RadioState model with all transceiver parameters
- Modern SwiftUI interface with frequency/mode/level controls
- Skeuomorphic front panel view (switchable)
- Debug panel with CAT command console
- QSO log panel with CSV export/import
- Audio routing panel with BlackHole integration
- Settings with connection, UI, keyboard configuration
- Menu bar extra for background operation
- German/English localization
- Logging system for debugging

Supports: Frequency control, VFO A/B, all modes (LSB/USB/CW/FM/AM/
DATA/RTTY/C4FM), level controls, NB/NR/DNF/ATU/Split functions,
S-meter/Power/SWR metering, PTT control via Shift key.

Target: macOS 15.0+ (Sequoia/Tahoe)
2025-12-18 10:59:15 +00:00

145 lines
3.9 KiB
Markdown

# FT-991A Remote Control App für macOS
Eine native macOS-Anwendung zur Fernsteuerung des Yaesu FT-991A Amateurfunk-Transceivers über USB (CAT-Protokoll).
## Features
### Verbindung
- USB virtueller COM-Port (Silicon Labs CP210x)
- Auto-Reconnect bei Verbindungsabbruch
- Unterstützte Baudraten: 4800, 9600, 19200, 38400 (Standard), 57600, 115200
### Benutzeroberfläche
- **Modern View**: Modernes, abstraktes UI-Design
- **Skeuomorph View**: Originalgetreue Nachbildung des FT-991A Frontpanels
- Abdockbare Panels (Log, Debug, Audio, Metering)
- Menüleisten-Betrieb für Hintergrundbetrieb
- Lokalisierung: Deutsch & Englisch
### Steuerung
- VFO A/B Frequenzsteuerung
- Betriebsarten: LSB, USB, CW, FM, AM, RTTY, DATA, C4FM
- Pegel: AF Gain, RF Gain, Squelch, MIC Gain, Power
- Funktionen: NB, NR, DNF, Contour, ATU, Split, IPO
- S-Meter, Power-Meter, SWR-Meter Anzeige
- PTT-Steuerung (Shift-Taste)
### Logging
- QSO-Log im CSV-Format
- Felder: Call, Datum, Zeit, Frequenz, Mode, RST TX/RX, Name, QTH, Locator, Power, Notizen
- Wählbarer Speicherort (Standard: ~/Documents/FT991A-Logs/)
- Automatisches Speichern
### Audio
- BlackHole Integration für digitale Betriebsarten
- Audio-Routing für WSJT-X, fldigi, etc.
### Tastaturkürzel
| Taste | Funktion |
|-------|----------|
| ⌘K | Verbinden/Trennen |
| Shift (halten) | PTT |
| ↑ | ATU Tune |
| ← / → | Frequenz -/+ |
| ⇧⌘S | VFO A/B tauschen |
| ⇧⌘E | A=B |
| ⌥⌘D | Debug-Panel |
| ⌥⌘L | Log-Panel |
## Systemanforderungen
- macOS 15.0 (Sequoia) oder neuer
- Yaesu FT-991A mit USB-Kabel
- Silicon Labs CP210x Treiber (normalerweise automatisch installiert)
## FT-991A Einstellungen
Stelle sicher, dass im Radio-Menü folgende Einstellungen aktiv sind:
```
Menu → CAT RATE: 38400 bps
Menu → CAT TOT: 100 ms
Menu → CAT RTS: OFF
```
## Installation
1. Projekt in Xcode öffnen
2. Build & Run (⌘R)
Oder für Release-Build:
1. Product → Archive
2. Distribute App → Copy App
## Projektstruktur
```
FT991A-Remote/
├── FT991A_RemoteApp.swift # App Entry Point
├── Models/
│ ├── RadioState.swift # Gerätezustand
│ ├── CATCommand.swift # CAT-Befehle
│ ├── QSOEntry.swift # Log-Einträge
│ └── Settings.swift # Einstellungen
├── Services/
│ ├── SerialPortManager.swift # USB Serial
│ ├── CATProtocol.swift # CAT Parser
│ ├── CSVManager.swift # Log-Dateien
│ └── AudioRouter.swift # BlackHole
├── ViewModels/
│ ├── RadioViewModel.swift # Radio-Logik
│ ├── LogViewModel.swift # Log-Logik
│ └── SettingsController.swift # Einstellungen
├── Views/
│ ├── MainView.swift # Hauptfenster
│ ├── ModernView/ # Moderne UI
│ ├── SkeuomorphView/ # Frontpanel
│ ├── Panels/ # Abdockbare Panels
│ ├── Settings/ # Einstellungen
│ └── MenuBar/ # Menüleiste
└── Utilities/
├── Logger.swift # Logging
└── Localization/ # DE/EN
```
## CAT-Befehle
Die App verwendet das Yaesu CAT-Protokoll. Wichtige Befehle:
| Befehl | Funktion |
|--------|----------|
| FA; | VFO-A Frequenz lesen |
| FA014250000; | VFO-A auf 14.250 MHz setzen |
| MD02; | Mode auf USB setzen |
| TX0; | PTT ein (MIC) |
| RX; | PTT aus |
| SM0; | S-Meter lesen |
## Entwicklung
### Phase 1 (aktuell)
- ✅ Projekt-Setup
- ✅ SerialPortManager
- ✅ CAT-Protokoll Parser
- ✅ RadioState Model
- ✅ Debug-UI
- ✅ Logging-System
### Phase 2-6 (geplant)
- Vollständiger CAT-Befehlssatz
- Erweiterte UI (Skeuomorph-Ansicht)
- QSO-Logging & CSV
- BlackHole Audio-Routing
- Tastaturkürzel
- Testing & Polish
## Lizenz
MIT License
## Autor
Entwickelt für Amateurfunk-Enthusiasten.
73!