📱 Cross-Platform App
Radio control for Windows, Android, and iOS built with .NET MAUI
💡 Key Features
Frequency Display
Large LCD-style display with up/down buttons
Mode Selection
AM, FM, LSB, USB, CW with smart step sizes
Band Navigation
Pre-configured amateur and broadcast bands
Memory Storage
10 frequencies per band with persistence
Multi-Rig Support
Switch between configured radios
Auto-Reconnect
Automatic recovery from network interruptions
Mobile app main screen showing frequency display, mode buttons, and band selection
📋 System Requirements
| Platform | Minimum Version | Notes |
|---|---|---|
| Windows | Windows 10 (1809+) | 64-bit, .NET 8 runtime |
| Android | Android 8.0 (API 26) | Most phones from 2017 onwards |
| iOS | iOS 14.0 | iPhone 6s+, iPad 5th gen+ |
| Network | Wi-Fi or cellular | Must reach server on port 8080 |
🛠 Installation
Windows Installation
Download the Application
Download OmniRigRemote.msix or the standalone .exe from the releases page at ditdots.com
Install and Launch
Run the installer or executable. Enter your server IP address to connect.
Android Installation
Enable Unknown Sources
Go to Settings > Security > Unknown Sources (or Settings > Apps > Special Access > Install unknown apps)
Download the APK
Download OmniRigRemote.apk from the releases page at ditdots.com
Install and Launch
Open the APK and tap Install. Enter your server IP address to connect.
iOS Installation
TestFlight (Recommended)
If available, install via TestFlight for easy updates. Check the releases page for TestFlight link.
Trust Developer Certificate
If sideloading, go to Settings > General > Device Management to trust the developer certificate.
⚠ iOS Note
iOS apps require a Mac with Xcode for building and deployment. Sideloaded apps expire after 7 days without a paid Apple Developer account.
🎮 User Interface
Connection Section
- IP Address – Enter the server’s IP address (e.g., 192.168.1.100)
- Port – Default is 8080 for radio control
- Connect Button – Tap to establish or close connection
- Status Indicator – Shows Connected/Disconnected state
Frequency Display
The frequency is displayed in a split format for easy reading:
- MHz – Megahertz (e.g., 14)
- KHz – Kilohertz (e.g., 074)
- Hz – Hertz (e.g., 000)
Each section has up/down arrow buttons for adjustment. The step size varies by mode.
Mode Selection
Tap any mode button to change the operating mode. The selected mode is highlighted.
🌐 Band Selection
Pre-configured bands with frequency limits:
| Band | Frequency Range | Description |
|---|---|---|
| LW | 148.5 – 283.5 kHz | Long Wave broadcast |
| MW | 530 – 1700 kHz | Medium Wave (AM broadcast) |
| SW | 2.3 – 26.1 MHz | Short Wave broadcast |
| FM | 87.5 – 108 MHz | FM broadcast |
| VHF Air | 108 – 137 MHz | Aviation band |
| 2m Ham | 144 – 148 MHz | 2 meter amateur band |
| 70cm Ham | 420 – 450 MHz | 70 cm amateur band |
| HF LSB/USB | 1.8 – 30 MHz | HF amateur bands (SSB) |
| HF CW | 1.8 – 30 MHz | HF amateur bands (CW) |
The app remembers your last frequency in each band and restores it when you return.
💾 Memory Bank
- Save – Tap “Save Current Frequency” to store the current frequency
- Recall – Tap any saved frequency to recall it
- Capacity – 10 memory slots per band
- Persistence – Memories are saved and restored across app restarts
Step Sizes by Mode
| Mode | Step Size |
|---|---|
| AM | 10 kHz |
| FM | 100 kHz |
| SW | 5 kHz |
| MW | 10 kHz |
| LW | 1 kHz |
| LSB/USB | 1 kHz |
| CW | 100 Hz |
🔌 Protocol Details
The mobile app communicates with the server using simple text commands over TCP:
Commands Sent by App
# Set frequency (Hz)
FREQ:14074000
# Set mode
MODE:USB
# Select rig
RIG:1
Messages Received from Server
# Frequency and mode update
RIG:1:FREQ:14074000;MODE:USB
# Radio status
RIG:1:RADIO:ONLINE:IC-7300
RIG:1:RADIO:OFFLINE
# Rig names
RIGS:Rig 1|Rig 2|Rig 3|Rig 4
🔧 Troubleshooting
Cannot Connect
- Verify the server is running and radio is connected
- Check IP address is correct (server IP, not radio IP)
- Ensure your phone is on the same network as the server
- Check firewall allows connections on port 8080
- Try disabling VPN if active
Connection Drops
- Move closer to your Wi-Fi router
- Check for network interference
- Disable battery optimization for the app
- The app will automatically try to reconnect
Frequency Not Changing
- Ensure radio shows “ONLINE” status on server
- Check OmniRig is properly connected to the radio
- Verify frequency is within the radio’s range
- Check VFO is not locked on the radio
App Crashes on Startup
- Update to the latest version
- Clear app data and restart
- Reinstall the application
- Check device meets minimum requirements