# Fldigi

Fldigi (Fast light digital) ist ein free and open-source Programm. Es dient dazu, mit der Soundkarte gewöhnlicher Computers ein Zwei-Wege-Modem nachzubilden. Funkamateure schließen hierbei die Mikrofon- und Kopfhörer-Anschlüsse eines Amateurfunk-SSB oder FM-Transceivers an die Kopfhörer- bzw. Mikrofonanschlüsse des Computers an.
Hierdurch entsteht ein „Soundcard Defined Radio“, dessen verfügbare Bandbreite durch die Abtastrate der Soundkarte und die Bandbreite des externen Radios begrenzt ist.
Solche Datenübertragungen erfolgen an sich auf Kurzwellen-Amateurfunkkbändern in Betriebsarten wie PSK31, MFSK, RTTY, Olivia und CW (Morsecode). Zunehmend wird die Software auch für Daten auf VHF- und UHF-Frequenzen mit schnelleren Modi wie 8-PSK eingesetzt.
Fldigi dient auch der Amateurfunk-Notruf-Kommunikation wenn andere Technologien nach Naturkatastrophen oder bei Stromausfall versagen. Die Übertragung von Dateien, E-Mails, und Formularen ist dadurch mit kostengünstiger Funkhardware möglich.

## Unterstützte Betriebsarten

| Betriebsart | unterstützte Übertragungsgeschwindigkeit | nutzerdefinierte Betriebsart |
| Morsecode CW | 5–50 Worte pro Minute | Ja |
| PSK | 31, 63, 63F, 125, 250, 500, 1000 | Nein |
| FSQ | 2, 3, 4.5, 6 | Nein |
| IFKP | 0.5, 1.0, 2.0 | Nein |
| Contestia | 4/125, 4/250, 8/250, 4/500, 8/500, 16/500, 8/1000, 16/1000, 32/1000, 64/1000 | Ja |
| DominoEX | Micro, 4, 5, 8, 11, 16, 22, 44, 88 | Nein |
| Hellschreiber | Feld Hell, Slow Hell, Feld Hell X5, Feld Hell X9, FSK Hell, FSK Hell-105, Hell 80 | Nein |
| MFSK | 4, 8, 11, 16, 22, 31, 32, 64, 64L, 128, 128L | Nein |
| MT63 | 500S, 1000S, 2000S, 500L, 1000L, 2000L | Nein |
| Navtex | Navtex | Ja |
| Olivia | 4/250, 8/250, 4/500, 8/500, 16/500, 8/1000, 16/1000, 32/1000, 64/2000 | Ja |
| QPSK | 31, 63, 125, 250, 500 | Nein |
| 8PSK | 125, 250, 500, 1000, 125FL, 250FL, 125F, 250F, 500F, 1000F, 1200F | Nein |
| PSKR | 125R, 250R, 500R, 1000R | Nein |
| RTTY | 45.45/170, 50/170, 75/170, 75/850 | Ja |
| SYNOP | SYNOP | Nein |
| THOR | Micro, 4, 5, 8, 11, 16, 22, 25x4, 50x1, 50x2 100 | Nein |
| SITORB | SitorB | Nein |
| Throb / ThrobX | 1, 2, 4 / X1, X2, X4 | Nein |
| WEFAX | IOC-576, IOC288 | Nein |
| OFDM | 500F, 750F, 3500 | Nein |

## Portabilität
### Betriebssysteme

Fldigi verwendet die leichtgewichtige portable Grafikbibliothek FLTK und die Programmiersprache C/C++ und unterstützt daher viele Betriebssysteme wie zum Beispiel:
* Microsoft Windows (2000 und neuer)
* macOS
* Linux
* FreeBSD
* OpenBSD,
* NetBSD,
* Solaris.
Zudem kann Fldigi auf jedem POSIX-kompatiblen Betriebssystem mit X11-kompatiblem Fenstersystem / einer grafischen Bedienoberfläche kompiliert und ausgeführt werden.

### Architektur

Da Fldigi in hochgradig portablem C/C++ geschrieben wurde, unterstützt es viele CPU-Architekturen, darunter:
* amd64
* i386
* armhf/armel
* ia64
* mips
* mipsel
* powerpc
* s390
* s390x
* sparc
* Raspberry Pi.

### Soundsysteme

Fldigi unterstützt vielfältige Soundsysteme, darunter:
* Open Sound System (OSS)
* PortAudio
* PulseAudio
* Lesen und Schreiben von WAV-Dateien (file I/O)

## Merkmale

* NBEMS: schmalbandiges Notrufsystem
* Senden und Empfangen in allen Sprachen mit UTF-8-Zeichenkodierung (einige Betriebsarten)
* Anbindung an externe Programme über TCP/IP-Port 7322
* Möglichkeit zur Verwendung als KISS-Modem über TCP/IP Port 7342
* DTMF-Kodierung (Dual-Tone Multi-Frequency)
* Automatisches Umschalten von Modus und Frequenz durch die Signalidentifikation Reed Solomon Identifier
* Eingebaute Makrosprache zur Verarbeitung von Befehlen nach automatischer Aufzeichung von Bedienschritten
* Frequenz-/Versatzkorrektur des Soundkarten-Oszillators
* Vermessung des Versatzes des Soundkarten-Oszillators gegenüber den Atomuhren WWV oder WWVH
* Vermessung der HF-Empfangsfrequenz gegenüber der Atomuhren WWV der WWVH
* Übertragung eines WWV-ähnlichen Zeitsignals als Kalibrier-Referenz
* Steuerung von externer Sende-/Empfangs-Funkhardware über GPIO-Anschlüsse
* Gleichzeitige Dekodierung mehrerer Morsecode (CW)-Signale.
* Entschlüsselung von Morsezeichen durch ein selbstlernendes künstliches Neurales Netz (KI-trainiert)

## Die Fldigi Suite

Die „Fldigi Suite“ umfasst das Fldigi-Modem und alle von der gleichen Entwicklergruppe veröffentlichten Erweiterungsprogramme. Die meisten Erweiterungen fügen Fldigi-Funktionen hinzu, so etwa eine verifizierte Dateiübertragung. Die Verbindung zwischen den Programmen und dem Fldigi-Modem erfolgt über den TCP/IP-Port 7322.
Einige davon sind eigenständige Programme, die nur zu Testzwecken verwendet werden ohne Verbindung zum Fldigi-Hauptmodem.

### Flamp

Flamp implementiert das Amateur Multicast Protocol von Dave Freese (W1HKJ). Es überträgt verbindungslos Dateien an mehrere Nutzer zugleich, ohne eine spezielle Infrastruktur zu erfordern. Das Programm zerlegt eine bestimmte Datei in kleinere Teile, prüft jedes Teil und überträgt jedes Teil ein- oder mehrfach. Wurden alle Teile korrekt empfangen, werden sie wieder vereint, um von Empfangsstationen gespeichert zu werden. Das Programm eignet sich für das Multicasting von Dateien über verlustbehaftete Verbindungen, z. B. bei Hochfrequenzverbindungen (HF) oder zur Notfallkommunikation.

### Flarq

Flarq implementiert die von Paul Schmidt (K9PS) entworfene ARQ-Spezifikation, um E-Mails, Texte, Bilder und Binärdateien über Funk zu übertragen. Das Protokoll ist unicast und verbindungsbasiert. Flarq ist nahtlos in E-Mail-Clients wie Microsoft Outlook, Mozilla Thunderbird und Sylpheed einzubinden.

### Flmsg

Flmsg dient dazu, vorformatierte Formulare zu senden, zu empfangen, zu bearbeiten und zu erstellen. Dies beschleunigt den Informationsfluss in einer Notfallkommunikation. Flmsg verfügt über MARS-Berichte, Krankenhaus-ICS-Formulare, Red Cross-Nachrichten, IARU- und NTS-Nachrichten.

### Flwrap

Flwrap dient dem Versenden von Dateien über eine einfache Drag-and-Drop-Oberfläche. Eine Komprimierung kann Datenübertragungszeiten verkürzen.

### FLNet

FLNet hilft Netzbetreibern, den Überblick über mehrere Stationen digitaler Amateurfunknetze zu behalten.

### FLLog

FLLog ist eine Protokollierungssoftware, die Gespräche zwischen Amateurfunkern in einem Datenbankformat namens ADIF aufzeichnet.

### FLWkey

FLWkey ist eine einfache Schnittstelle zur Steuerung einer externen Hardware, die man Winkeyer nennt. Dabei handelt es sich um einen Morsecode-Keyer, der über Computerbefehle über USB einstellbar ist.

### Flcluster

Bei Flcluster handelt es sich um einen Telnet-Client für entfernte DX-Cluster-Server, bei dem es sich um eine Echtzeitmeldung hörbarer Stationen und ihrer Frequenzen handelt – ohne eine Verbindung zu Fldigi herzustellen.

### Flaa

Flaa ist ein Steuerungsprogramm zur Verwendung mit der RigExpert AA-xxxx Serie von Antennenanalysatoren. Es stellt keine Verbindung zu Fldigi her.

### FLRig

Flrig ist eine Komponente der FLDigi-Suite, die die computergestützte Steuerung verschiedener Funkgeräte über eine serielle oder USB-Verbindung ermöglicht.
Verwendet man FLRig gemeinsam mit FLDigi, kann man Ereignisse wie Frequenz, Leistungspegel, Empfangsverstärkung und Audioverstärkung automatisch oder durch Nutzereingriff vom Computer aus anpassen.

## Testwerkzeuge

Die Fldigi-Entwickler veröffentlichten auch Open-Source-Programmen beim Testen, Entwickeln und Vergleichen verschiedener Fldigi-Betriebsarten.

## RSID

Um den übertragenen Modus zu erkennen, kann man vor den Daten ein RSID-Signal (Reed-Solomon Identifier) übertragen, damit die empfangende Software automatisch in den richtigen Modus für die Dekodierung wechselt. Dies sichert die Interoperabilität zwischen Programmen. Derzeit unterstützen 7 Soundkarten-Digitalmodem-Programme diesen Standard:
* PocketDigi
* FDMDV
* DM780
* Multipsk
* Fldigi
* AndFlmsg
* TIVAR
RSID sendet einen kurzen Burst einer bestimmten Modulation vor dem Datensignal, das automatisch über 272 Betriebsarten unterscheiden kann. Dieser Burst besteht aus einer 10.766 Baud 16-Ton-MFSK-Modulation, bei der 15 Töne/Symbole gesendet werden. Der Burst belegt eine Bandbreite von 172 Hz und dauert 1,4 Sekunden.

## Software-Architektur

Für eine einfache Tastatur-zu-Tastatur-Kommunikation kann Fldigi nur über das Hauptfenster bedient werden. Für komplexere Anwendungen oder Dateiübertragungen können externe Programme an die internen TCP/UDP-Ports 7322 (ARQ), 7342 (KISS) und 7362 (XML-RPC) angeschlossen werden.
Das folgende Bild veranschaulicht die Verbindungen und den Signalfluss in der Fldigi-Architektur.

## Von der Community bereitgestellte Erweiterungen

Fldigi ermöglicht es externen Programmen, Daten anzuhängen und zu senden / zu empfangen, indem sie eine Verbindung zu Port 7322/ARQ oder 7342/KISS herstellen. Dadurch arbeitet Fldigi mit der Soundkarte im Computer als „Softmodem“, das Texte oder Daten, die auf einem Computer gesendet werden, drahtlos per Funk überträgt. Zu den Programmen, die mit Fldigi verwendet wurden, gehören:
* D-Rats für einfach zu bedienende Chatrooms, E-Mail-Austausch und Dateiübertragung über Funk.
* PSKmail – Senden und Empfangen von E-Mails im Internet über eine Funkverbindung.
* Fldigiattach – bringt Fldigi als Modem in Linux AX.25- und TCP/IP Verbindungen ein.
* UIChat – Java-baiertes Amateurfunk-Chatprogramm.
* LinkUP – Programm für den unbeaufsichtigten Betrieb und den Chat von Mensch zu Mensch.
* Linux – Fldigi kann unter Linux als KISS (TNC) Modem für AX.25 und TCP/IP dienen.

## Preise und Anerkennungen

* Auf der Dayton Hamvention 2014 erhielt Projektleiter Dave Freese (W1HKJ) den Technical Excellence Award „für die Entwicklung und den Vertrieb der Fast Light Digital Modem (fldigi)-Programmfamilie in der Amateur- und Notfallkommunikation“.
* Fldigi wurde im Juni 2017 von SourceForge zum „Projekt des Monats“ gewählt
* Fldigi war eines der „Projekte der Woche“ von SourceForge am 17. Oktober 2016
* Fldigi wurde im Dezember 2017 von SourceForge als „Projekt des Monats“ der Community ausgewählt

## Namhafte Benutzer
### Katastrophenhilfe

Fldigi wird von einigen Organisationen für Routine- als auch für Katastrophen-/Notfalldienste verwendet.
* Notfalleinsatzzentren in US-Bundesstaaten und Bezirken
* W1AW (ARRL)
* Amateur Radio Emergency Service (ARES)
* Radio Amateur Civil Emergency Service (RACES)
* Civil Air Patrol (CAP)
* SATERN, the Salvation Army Team Emergency Radio Network
* SKYWARN, ein Programm des United States’ National Weather Service (NWS).

### Kurzwellensender

Nach erfolgreichen Tests durch das Voice of America's VOA Radiogram begannen internationale und staatliche Kurzwellensender, digitale Daten über Kurzwellenkanäle mit der Fldigi-Software zu erproben. Diese Tests führten zu regelmäßigen digitalen Sendungen durch die aufgeführten Rundfunkanstalten.
* VOA Radiogram bis 2017 (wurde eingestellt und als Kurzwellen-Radiogramm weitergeführt).
* Im Juni 2017 begann die Ausstrahlung digitaler Datenströme mit Fldigi über WRMI in Miami und Space Line Spaceline Bulgaria – Broadcasting Airtime auf Kurzwelle, Satellit und Internet via in and Spaceline Bulgaria - Broadcasting Airtime on shortwave, satellite and internet in Bulgarien.
* Radio Havana Cuba
* Radio Moscow
* Radio Australia
* Radio Miami International
* Italian Broadcasting Corporation
* WBCQ (SW)
* Mighty KBC

### MARS

Die Fldigi-Programmsuite ist in der U.S. Army und im U.S. Air Force Military Auxiliary Radio System im Einsatz.

### Department of Homeland Security

Fldigi wird in Tests als Teil des „Department of Homeland Security Shares“-Programms genutzt, um Notfallnachrichten in „bestehenden Funkressourcen von Regierungen, kritischen Infrastrukturen und Katastrophenschutzorganisationen zu koordinieren und zu übertragen“.