FlexPilot - Feature Documentation

Back to Product
# FlexPilot Features Complete feature reference organized by functionality. --- ## πŸ”΄ Radio Control & Integration ### FlexRadio SmartSDR Integration Connect seamlessly to your FlexRadio using the native FlexLib API (no CAT emulation needed): - **Automatic discovery** - FlexPilot finds your radio on the network automatically - **Multi-slice control** - Create, manage, and control multiple receiver slices independently - **All operating modes** - USB, LSB, CW, AM, FM, DIGU, DIGL, and more - **Flexible frequency control** - Direct entry, VFO knob, band buttons, or click-to-tune - **Audio gain per slice** - Independent volume control for each receiver - **Slice activation** - Mute, unmute, activate, or deactivate any slice ### Transmit Control Full control over your transmit operations: - **MOX control** - Microphone keying with PTT - **Tune mode** - Test your transmitter and antenna system - **Power management** - Set RF power, tune power, and maximum power limits - **TX audio routing** - DAX TX stream for SSB, AM, and FM modes - **Protection features** - Automatic SWR monitoring and power limiting through Automations ### Receiver Features Advanced DSP and receiver control: - **RF gain adjustment** - Per-slice RF gain control - **AGC modes** - Fast, Medium, Slow, or Off with threshold adjustment - **Noise blanker** - Reduce impulse noise with adjustable level - **Noise reduction** - Digital noise reduction with level control - **ANF** - Automatic Notch Filter for interfering carriers - **APF** - Audio Peaking Filter for enhanced CW reception - **RIT/XIT** - Receiver and transmitter offset control - **Filter control** - Adjustable low and high cutoff frequencies ### Transmit Processing Professional audio quality: - **TX/RX equalizer** - Per-band audio equalization - **Wideband noise blanker** - WNB with level control - **Binaural audio** - Stereo audio processing for enhanced reception ### Real-Time Metering See exactly what's happening: - **S-Meter** - Signal strength in S-units and dBm - **RF Power** - Forward and reflected power display - **SWR Meter** - Standing Wave Ratio monitoring - **ALC Meter** - Automatic Level Control indication - **Compression** - Audio compression level - **Microphone Level** - Mic input monitoring --- ## 🎡 Audio Processing & Routing ### DAX (Digital Audio eXchange) Integration FlexRadio's digital audio transport, fully integrated: - **DAX channel management** - Create and configure DAX audio channels - **Slice-to-DAX routing** - Route any slice to any DAX channel - **Windows audio devices** - Integrate with Windows WASAPI audio system - **Master volume control** - Overall volume management - **Active stream monitoring** - See which audio streams are active ### Audio Rewind - Never Miss a Callsign One of the top community-requested features: - **30-120 second rolling buffer** - Continuous audio capture with zero disk writes - **Instant replay** - Rewind 5, 10, 15, or 30 seconds with a single hotkey - **Save QSOs as WAV files** - Export captured audio for later review or training - **Zero performance impact** - Efficient circular buffer design - **Perfect for contesting** - Catch every callsign in fast pileups - **Adjustable buffer size** - Configure buffer length to your preference ### Voice Keyer Pre-recorded message playback: - **F1-F8 message slots** - Eight programmable voice messages - **Record and playback** - Record messages directly in FlexPilot - **Hotkey control** - Trigger messages with keyboard shortcuts - **Message persistence** - Saved messages survive restarts - **WAV file storage** - High-quality audio format ### Audio Device Control Complete audio management: - **Device enumeration** - Automatic detection of Windows audio devices - **Microphone control** - Level adjustment and mute - **Speaker/headphone mute** - Quick mute for listening - **Route creation** - Flexible routing from slices to audio devices --- ## πŸ“‘ CW (Morse Code) Features ### Modern CW Decoder (Work in progress) Advanced multi-signal decoding: - **Multi-signal support** - Decode multiple CW signals simultaneously - **Adaptive WPM detection** - Automatically detects sending speed - **Pattern recognition** - Accurate character detection even with QSB - **Timing analysis** - Adaptive dit/dah detection handles varying speeds - **Audio preprocessing** - Signal conditioning for optimal decoding ### CW Keying Full CW transmission support: - **Software keying** - Generate CW tones via audio output - **Hardware keying** - Control radio CW keyer via CAT commands - **FlexLib native keying** - Direct SmartSDR keying integration - **Macro support** - Pre-programmed CW messages (F1-F8) - **Adjustable speed** - WPM control from slow to high-speed ### CW Services **Memory Service** - Store up to 8 CW messages - Quick access via hotkeys and UI buttons - Configuration persistence **CW Scanner Service** (Work in progress) - Frequency scanning for CW activity - Dwell time on signals above threshold - Band memory for specific frequencies or custom ranges --- ## πŸ—ΊοΈ DX Spotting & Cluster Integration ### Premium DX Spot Overlay The professional spotting solution the community requested: - **Visual spot markers** - Clear vertical lines on spectrum and waterfall - **Age-based coloring** - Yellow (fresh) β†’ Orange β†’ Red β†’ Gray (old) - **Intelligent fading** - Recent spots bright, old spots gradually fade - **Easy-to-read callsign labels** - Dark background for perfect readability - **One-click QSY** - Click any spot to tune instantly - **CW auto-zerobeat integration** - Clicking CW spots centers them perfectly ### Reverse Beacon Network (RBN) Worldwide CW skimmer network integration: - **Real-time CW spots** - Reports from hundreds of skimmers worldwide - **Telnet connection** - Standard RBN protocol (telnet.reversebeacon.net:7000) - **Detailed spot parsing** - Frequency, callsign, mode, WPM, SNR, distance, bearing - **Signal quality reporting** - See signal strength in dB and sending speed in WPM ### DX Cluster Aggregation Connect to traditional DX clusters: - **DXSpider** - Full support for standard DX cluster protocol - **AR-Cluster** - Compatible with AR-Cluster spots and commands - **CC Cluster** - Support for CC Cluster implementations - **Generic cluster client** - Extensible framework for custom clusters - **Multi-cluster support** - Connect to multiple clusters simultaneously - **Automatic backfill** - Request last 50 spots on connection - **Spot filtering** - Filter by band, frequency, or callsign ### Bandmap Service Organize and visualize spots: - **Current band filtering** - Show only spots on your active band - **Visual frequency display** - See where the action is - **Spot caching** - Quick access to recent spots - **Band statistics** - Count and distribution of spots per band ### Log4OM Integration Bidirectional data exchange: - **UDP spot forwarding** - Send spots to Log4OM (port 12060) - **Callsign reception** - Receive callsign from Log4OM lookups - **Grid square exchange** - QTH locator data sharing - **Bidirectional control** - FlexPilot controls radio, Log4OM sends data ### SmartSDR Spot Display Native radio integration: - **Spot markers on panadapter** - See spots directly on your radio display - **Color coding** - Different colors for different spot types - **Spot lifetime control** - Fade spots after configurable time period - **Info display** - Callsign, mode, and timing information --- ## 🌍 Propagation & Location Services **Solar Data & Band Conditions** - **Real-time solar activity** - Solar Flux Index (SFI), Sunspot Number (SSN) - **Ionospheric indicators** - K-Index and A-Index - **Space weather alerts** - Warnings for Kβ‰₯5 geomagnetic storms - **HF/VHF band conditions** - Instant predictions for 160m through 2m - **MUF predictions** - Maximum Usable Frequency for each band - **Visual condition indicators** - Color-coded band conditions (Good/Fair/Poor) **Gray-Line Calculator** - **Sunrise/sunset times** - For your location and target DX location - **Solar noon calculation** - Peak solar radiation time - **Twilight periods** - Civil, nautical, and astronomical twilight - **Great circle paths** - True bearing and distance to DX targets ### Maidenhead Grid Square Tools Essential location utilities: - **Lat/Lon to Grid conversion** - Calculate grid square from coordinates - **Grid to Lat/Lon conversion** - Coordinates from grid square - **Great circle distance** - Accurate distance calculation - **Bearing calculation** - Antenna pointing direction ### QRZ.com Integration Callsign database lookup: - **Automatic lookups** - Look up spotted callsigns automatically - **Operator information** - Name, location, license class - **Photo display** - See operator photos - **License verification** - Confirm current license status --- ## πŸ”₯ Automation & Rules Engine (Work in progress) Think of it as "Node-RED for your radio station"β€”but purpose-built for amateur radio. ### Visual Rule Builder No coding required: - **Drag-and-drop interface** - Build complex automation visually - **Real-time validation** - See if your rules will work before saving - **Rule templates** - 15+ pre-built templates for common scenarios - **Test mode** - Test rules without affecting your station ### Trigger Types React to station events: - **Frequency change** - When you tune to a new frequency - **Band change** - When you change bands - **Operating mode change** - When you switch modes (SSB, CW, FT8, etc.) - **Device state change** - When devices change status (rotator position, amp temperature, etc.) - **Meter thresholds** - When SWR, power, or other meters cross limits - **Time-based** - Scheduled events (future enhancement) ### Condition Operators Complex logic made simple: **Comparison Operators** - Equal to, not equal to - Less than, greater than - Less than or equal, greater than or equal - Between (range checking) **Logical Operators** - AND - All conditions must be true - OR - Any condition must be true - NOT - Invert condition result - **Unlimited nesting** - Build complex logic trees **String Operators** - Regex matching - Wildcard patterns - Exact match - Contains, starts with, ends with ### Action Types Control everything: **Radio Control Actions** - Set frequency, mode, band - Set transmit power - Enable/disable transmit - Increase/decrease power - Activate specific slice **Device Control Actions** - Set rotator heading (automatic DX tracking!) - Set amplifier mode (operate/standby) - Set amplifier band - Switch antenna selection - Trigger relay controls **Integration Actions** - Send MQTT message (Home Assistant integration!) - HTTP webhook (trigger external services) - Log message (diagnostic logging) - Send notification (alerts and warnings) - Execute delay (timing control) ### Rule Templates Get started instantly: - **Band Tracking** - Auto-configure station for each band - **Contest Mode** - Instant station reconfiguration for contests - **FT8 Automation** - Automatic FT8 band/mode setup - **DX Rotator Control** - Point antenna at spotted DX stations - **SWR Protection** - Cut transmit on high SWR - **Temperature Monitoring** - Reduce power on high amplifier temperature - **Night Mode** - Reduce power after sunset - **Emergency Shutdown** - Multiple safety triggers - **Antenna Selection** - Automatic antenna switching by band - ...and more! ### Rule Persistence Rules survive restarts: - **SQLite storage** - All rules saved in rules.db - **Rule repository** - Easy save, load, update, delete operations - **Import/export** - Share rules with other operators - **Versioning support** - Track rule changes over time --- ## πŸ“‘ External Device Control Control your entire station from one place. ### Device Management Framework Universal device control: - **Unified device interface** - All devices use the same control model - **Central device manager** - One place to manage all station equipment - **Multiple connection types** - Serial (COM), TCP, UDP, HTTP/HTTPS, USB - **SQLite persistence** - Device configurations saved automatically - **Event propagation** - Status and property changes broadcast to entire system ### Supported Amplifiers Full telemetry and control: **ACOM 1400S ** - Ethernet (TCP) connection - Operating modes: Operate, Standby, Tuning, Fault - Telemetry: Power output, SWR, temperature - Automatic band switching - Fault detection and reporting **SPE Expert** - Help needed here regarding protocol - Ethernet (TCP) connection - Extended telemetry: Forward/reflected power, SWR, temperature, voltage, current - Automatic band tracking - Real-time status monitoring **PGXL Amplifier** - Help needed here regarding protocol - Serial connection - Automatic band switching on frequency changes - Simple control protocol ### Supported Antenna Switches Automatic antenna selection: **4O3A Antenna Switch** - Help needed here regarding protocol - Multi-antenna selection (6 positions) - Serial control via USB - Band-based automatic switching - Manual override capability **DXE RF Switch** - Help needed here regarding protocol - Serial control protocol - Multiple antenna support - Integration with automation rules **AG6QR SteppIR Controller** - Help needed here regarding protocol - RF sensing auto-switch capability - Manual and automatic modes - Integration with rotator control ### Supported Rotators Point your antennas automatically: **ERC USB Rotator** - Working 100% - GS-232A compatible serial protocol - Azimuth-only rotation (0-360Β°) - Real-time position tracking - Automatic shortest-path rotation - Simulation fallback for models without feedback **Network Control (PSTRotator Protocol)** - **TCP Server (port 12000)** - Compatible with Log4OM, N1MM+ - **UDP Server (port 12040)** - XML extensions for enhanced integration - Commands: Query position, move to azimuth, move to azimuth+elevation, stop, status - Callsign extraction from Log4OM for automatic DX tracking **Framework Ready For:** - Green Heron rotators - Yaesu (G-5500, G-800, etc.) - MFJ rotators - Custom implementations ### Input Controllers **ShuttleXpress USB HID Controller** - Jog wheel for frequency tuning with adjustable step size - Shuttle wheel for rate-controlled frequency adjustment - Five programmable buttons mapped to radio functions - Profile support for different operating modes (CW, SSB, FT8, etc.) - USB HID connection (no drivers needed) ### Band Decoders **SteppIR Device Support** - Help needed here regarding protocol - Automated antenna control based on frequency - Real-time antenna tuning - Integration with frequency changes --- ## ⌨️ Hotkeys & Keyboard Control FRStack-style global hotkey system: ### Global Hotkey Support Control FlexPilot from anywhere: - **System-wide hotkeys** - Work even when other apps are focused - **Win32 API integration** - Reliable global hotkey capture - **Custom key combinations** - Ctrl+Alt+Shift+[Key] - **Profile support** - Different hotkey sets for different modes ### In-App Hotkeys Fast control within FlexPilot: - **Application-focused hotkeys** - Active when FlexPilot has focus - **Simpler key combinations** - Less modifier keys needed - **Context-sensitive** - Different hotkeys for different tabs ### Hotkey Commands 30+ built-in commands: **Radio Control** - Tune/toggle tune mode - Set operating mode - Jump to specific band - Toggle MOX (transmit) - Toggle noise reduction - Toggle noise blanker - Adjust AGC threshold - Adjust CW speed - Adjust transmit power - Adjust tune power **Audio Controls** - Adjust volume - Toggle audio mute - Trigger audio rewind - Rewind specific duration (5, 10, 15, 30 seconds) - Save audio recording **Voice Keyer** - Play voice messages F1-F8 - Record new messages - Stop playback ### Hotkey Persistence Never lose your configuration: - **SQLite storage** (hotkeys.db) - **Repository pattern** - Consistent save/load - **Customization UI** - Visual hotkey editor in settings - **Import/export** - Share hotkey profiles --- ## πŸ”Œ Integration & Remote Control ### REST API - Work in Progress Full programmatic control: **Radio Control Endpoints** - `GET /api/radio/status` - Current radio state - `POST /api/radio/frequency` - Set frequency - `POST /api/radio/mode` - Set operating mode - `GET /api/radio/slices` - List active slices - `POST /api/radio/power` - Set transmit power **Device Control Endpoints** - Work in Progress - `GET /api/devices` - List all devices - `POST /api/devices` - Register new device - `GET /api/devices/{id}` - Device details - `POST /api/devices/{id}/command` - Send command to device - `DELETE /api/devices/{id}` - Remove device **Propagation Endpoints** - Work in Progress - `GET /api/propagation/solar` - Current solar data - `GET /api/propagation/voacap` - VOACAP predictions - `GET /api/propagation/path` - Path analysis between two locations ### SignalR WebSocket Hubs - Work in Progress Real-time updates: - **RadioHub** - Real-time radio state and meter updates - **DeviceHub** - Device status and property changes - **MeterHub** - Continuous meter value streaming - **SpotHub** - Real-time DX spot updates as they arrive ### MQTT Integration Home automation made easy: - **MQTT broker connection** - Connect to any MQTT broker (Mosquitto, HiveMQ, etc.) - **Publish station data** - Meter values, frequency, mode, device status - **Configurable topics** - Custom topic structure for your setup - **Subscribe for commands** - Remote control via MQTT messages - **Home Assistant integration** - Perfect for smart home monitoring - **Node-RED integration** - Build custom automation flows - **Quality of Service** - Configurable QoS levels ### Network Servers FlexPilot provides these network servers: | Server | Port | Protocol | Compatible Software | |--------|------|----------|---------------------| | PSTRotator TCP | 12000 | Text commands | Log4OM, N1MM+ | | PSTRotator UDP | 12040 | Text + XML | Log4OM, Logging Software | | Radio Info UDP | 12060 | Frequency/Mode | Log4OM, Logging Software | | Log4OM Callsign | 12041 | Callsign updates | Log4OM | | Log4OM Contact | 12042 | QSO data | Log4OM | | CAT Control | 4532 | Hamlib CAT | WSJT-X, JTDX, Logging Apps | | Cluster Aggregator | 7300 | DX spots | External clients | | WebAPI | 5000 | REST/SignalR | Web clients, custom apps | - Work in Progress ### External Connections FlexPilot connects to: | Service | Connection | Purpose | |---------|------------|---------| | FlexRadio SmartSDR | | RBN Server | TCP (telnet.reversebeacon.net:7000) | CW spots | | DX Cluster | TCP (custom host:7000) | DX spots | | QRZ.com | HTTPS API | Callsign lookup | | VOACAP Service | HTTP API | Propagation predictions | - Work in Progress | WSJT-X | UDP (localhost:2237) | FT8/FT4 sync | | MQTT Broker | TCP (custom host:1883) | Home automation | --- ## πŸ“Š Spectrum & Visualization ### Spectrum Display Real-time frequency visualization: ### Work in Progress - **Waveform data from panadapter** - Direct from FlexRadio - **Waterfall display** - Continuous time-frequency display - **FlexLib adapter** - Native radio spectrum integration - **High-performance rendering** - Smooth, GPU-accelerated display ### Work in Progress ### Waterfall Rendering Beautiful, efficient display: - **Color palettes** - SmartSDR-compatible color schemes (default, alternate) - **Real-time refresh** - Continuous updates with minimal CPU usage - **Tile assembly** - Efficient rendering for smooth scrolling - **Customizable gradients** - Adjust colors to your preference ### Panadapter Display Interactive spectrum control: - **Frequency axis with markers** - Clear frequency labeling - **Signal level visualization** - Real-time signal strength - **Overlay controls** - Frequency and zoom information - **Pan operations** - Click-and-drag to change center frequency - **Click-to-tune** - Click anywhere to tune (with CW auto-zerobeat!) --- ## πŸ’Ύ Configuration & Settings ### Application Settings Comprehensive configuration system: **General Settings** - Log level (Debug, Info, Warning, Error) - Startup options (minimized, tray) - Theme and color scheme - Auto-connect to radio - Last radio serial number **UDP Services** - Radio Info broadcast (enabled/disabled, port, address) - Log4OM integration (radio info, callsign/contact receiver) - WSJT-X sync (enabled/disabled, port) - Cluster aggregator (enabled/disabled, port) **Station Information** - Callsign, operator name - QTH (location) - Maidenhead grid square - Latitude/longitude - ITU and CQ zones - Antenna information - Default power level **QRZ Settings** - Username and password - Auto propagation lookup - Show operator photos **Propagation Settings** - Google Maps API key - Use Google Maps for visualization **DX Cluster Settings** - Forward spots to radio display **Transmit Settings** - Maximum power level limits **CAT Server Settings** - Auto-start on launch - Port number (default 4532) **MQTT Settings** - Broker host and port - Base topic structure - Username and password - Publish options (meters, frequency, mode, devices) **Memory Settings** - MRU tracking enabled/disabled - Dwell time before recording frequency - Maximum MRU entries - Frequency tolerance for duplicates - COM port MOX control - Meter mute thresholds ### Device Configuration Device registry: - **SQLite database** (devices.db) - **Device properties** - ID, name, model, connection type, connection string - **Persistence** - Load on startup, save on modification - **Validation** - Connection test before saving - **Bulk operations** - Import/export device configurations ### Profile Management Save complete station configurations: - **Radio profiles** - Custom radio settings - **Profile switching** - Instant configuration changes - **SQLite storage** (profiles.db) - **Per-profile settings** - Memories, rules, hotkeys specific to each profile ### Voice Keyer Storage Message management: - **Message files** - Stored in VoiceKeyer/ directory - **WAV format** - High-quality audio - **Metadata** - Associated with F1-F8 slots - **Easy organization** - Browse and manage recordings --- ### Temperature Monitoring Amplifier protection: - **Real-time monitoring** - Continuous temperature tracking - **Configurable thresholds** - Set warning and critical temperatures - **Automatic power reduction** - Reduce power on overheating - **Visual and audible alerts** - Immediate warning on high temps --- ## 🎨 User Interface ### Modern Cross-Platform UI Avalonia Framework: - **Cross-platform XAML** - Runs on Windows, Linux (soon), macOS (soon) - **GPU-accelerated rendering** - Smooth, responsive interface - **Modern controls** - Fluent-style UI components - **Responsive design** - Adapts to different screen sizes ### Three Built-In Themes Choose your style: - **FlexMidnight (default)** - Dark theme optimized for night operation - **DXOperator** - Alternative dark theme for DX hunting - **StealthCarbon** - Sleek dark theme with carbon accents - **Light/Dark variants** - Additional theme variations ### Tab-Based Interface Organized feature access: - **Dashboard** - Station information and quick status - **Radio Control** - Frequency, mode, power, meters - **Spectrum/Waterfall** - Real-time frequency visualization - **CW Decoder** - Morse code decoding and spectrum - **Bandmap/Spots** - DX spots and cluster integration - **Rules/Automation** - Automation rule editor - **Devices** - Device management and control - **Audio** - Audio routing and equalizer - **Audio Rewind** - Rewind and save recordings - **Voice Keyer** - Voice message management - **Propagation** - Solar data and predictions - **Settings** - Application configuration - **Log Viewer** - Real-time application logs ### Custom Controls Purpose-built UI elements: - **Analog Meters** - S-Meter, RF Power, SWR, Compression, ALC, Mic Level with animated needles - **Digital Meters** - Modern numeric displays for all meter types - **CW Display** - Multi-signal CW visualization with spectrum overlay - **Pan Overlay** - Frequency and zoom information on spectrum - **Spot Markers** - Visual DX spots on waterfall/panadapter ### Customization Make it yours: - **Color scheme support** - Light and dark variants - **CSS styling** - Flexible customization options - **Custom converters** - Data binding helpers for complex displays - **Profile-based layouts** - Save UI configurations per profile (future) --- ## πŸ”§ System Integration ### Database Storage All configuration persisted: - **SQLite databases** - Reliable, zero-configuration storage - **Separate databases** - devices.db, profiles.db, memories.db, hotkeys.db, rules.db - **JSON files** - settings.json, cw_memories.json, audio_routing.json - **Automatic backup** - Configuration backup on changes (future) ### Logging System Comprehensive diagnostics: - **Serilog framework** - Structured logging - **Log levels** - Debug, Information, Warning, Error, Fatal - **File logging** - Logs persisted to disk - **Real-time log viewer** - Live display in application UI - **Diagnostic output** - SQL queries, device communication, radio events - **Search and filter** - Find specific log entries quickly ### Service Architecture Modular design: - **Dependency injection** - Microsoft.Extensions.DependencyInjection - **Service interfaces** - Clean contracts for all services - **Async/await throughout** - No blocking UI calls - **Event-driven** - Services communicate via events - **Lifecycle management** - Proper initialization and cleanup --- ## πŸš€ Performance & Optimization ### Optimizations Implemented Fast and efficient: - **Async/await throughout** - All I/O operations are non-blocking - **Efficient spectrum rendering** - Tile-based waterfall assembly - **Adaptive audio processing** - FFT optimization for EQ - **Memory management** - Audio buffer recycling - **Event throttling** - Prevent event spam from fast-changing metrics - **Lazy loading** - Load modules only when needed - **GPU acceleration** - Hardware-accelerated UI rendering --- ## πŸ“ˆ What's Next? ### Planned Features Coming soon: - **Web Dashboard** - React/Vue.js web interface for remote control - **CWX Window** - Dedicated CW decoder and keyer window - **Mobile Apps** - iOS and Android native applications - **Node-RED Package** - node-red-contrib-flexpilot for custom flows - **Stream Deck Plugin** - Elgato Stream Deck integration - **Plugin Marketplace** - Community-contributed plugins - **Profile Marketplace** - Share and download station configurations - **Advanced Analytics** - Operating statistics and trends - **Contest Integration** - Deeper N1MM+ and Log4OM contest support - **Multi-Radio Support** - Control multiple FlexRadios simultaneously ---