Entwurf v0.1 — bewusst früh und öffentlich
Eine Showdatei, die sich prüfen lässt,
bevor sie in die Luft geht
DSX (Drone Show eXchange) ist ein offenes, herstellerneutrales Dateiformat für Drohnen-Lichtshows. Es ist darauf ausgelegt, dass eine Show nicht nur angezeigt, sondern tatsächlich geflogen und vorher maschinell geprüft werden kann.
Was wir noch nicht eingelöst haben
Es ist noch nie eine Drohne nach einer DSX-Datei geflogen. Geprüft sind heute die Spezifikation, die JSON-Schemata und der normative Sampler. Das binäre .dsb-Format ist bisher nur eine Skizze, und die Testvektoren des Samplers decken noch nicht alle Fälle ab. Diese Offenheit ist Absicht: Ein Format, das sich reifer darstellt als es ist, wiederholt genau den Fehler, den dieses Projekt beheben will.
Das Problem
Kein offenes Format ist heute zugleich flugtauglich und unabhängig überprüfbar
Jedes verbreitete Format ist entweder offen, aber nicht flugtauglich — oder flugtauglich, aber nicht dokumentiert. Die Folgen sind aus der Praxis bekannt: Shows werden als CSV weitergegeben und verlieren dabei sämtliche Sicherheitsangaben, Geofence-Felder sind zwar vorhanden, werden aber nie gefüllt, der Höhenbezug (über Grund, über Normalnull oder über Ellipsoid) bleibt unausgesprochen, und ob das Koordinatensystem rechts- oder linkshändig ist, unterscheidet sich stillschweigend von Werkzeug zu Werkzeug. Zu jedem dieser Punkte gibt es ein bekanntes Schadensbild.
| Format | Offen & dokumentiert | Flugtauglich | Von Dritten prüfbar |
|---|---|---|---|
| VVIZ | ja | nein — ein Visualisierungsformat, nicht als Quelle flugfertiger Bahndaten gedacht | nein |
| .skyc / .skyb | Quelltext einsehbar (GPL), aber keine öffentliche Spezifikation | ja | nein |
| .dac, .bin, .path/.path3, .essp, Hersteller-.json | keine öffentliche Spezifikation auffindbar | ja | nein |
| CSV | vollständig offen | nur eingeschränkt | nein |
| DSX | ja | dafür ausgelegt — aber noch nie geflogen | Container, Schemata, §10-Regeln und Sampler-Vektoren, heute geprüft |
„Auffindbar“ ist bewusst so formuliert: Dass es keine öffentliche Spezifikation gibt, lässt sich nicht beweisen — wir können nur sagen, dass wir keine gefunden haben (Stand der Recherche: August 2026).
Aufbau
Zwei sauber getrennte Schichten
Austauschformat und Uploadformat in einer einzigen Datei zu vermischen, ist der Fehler, den die meisten Formate machen. DSX trennt beides und legt den Compiler dazwischen als deterministisch fest: Dieselbe Eingabe muss byteweise dieselbe Ausgabe ergeben. Erst das macht eine Showdatei nachprüfbar.
Austausch, Archiv, Review und Vorlage bei Behörden.
ZIP + JSON — lesbar und versionierbar
Upload auf das Fluggerät.
Binäres TLV — direkt auf dem Mikrocontroller lesbar
Was ein bestimmtes Fluggerät oder eine Nutzlast tatsächlich leisten kann.
JSON — liegt der .dsx-Datei bei
Interoperabilität ist eine Eigenschaft des Formats, nicht die Dienstleistung eines Servers
Jede konforme .dsx-Datei MUSS (MUST) sich über ein normatives Sampling-Verfahren auf t, x, y, z, R, G, B bei beliebiger Abtastrate zurückführen lassen — in jeder Implementierung bis aufs Byte gleich. Damit hat jedes bestehende System vom ersten Tag an einen Importweg, ohne die Polynome dahinter verstehen zu müssen.
t, x, y, z, R, G, B
Belegt durch eine Referenzimplementierung und sechs von Hand gerechnete Testvektoren — nicht allein durch Fließtext.
Welche Hardware gemeint ist, steht in der Datei
Eine Show verweist über eine feste UUID auf ein Geräteprofil und nennt den Betriebsmodus, für den sie erstellt wurde. Ein Werkzeug kann den Upload deshalb ablehnen, wenn die deklarierten Flugbereichsgrenzen über dem liegen, was der Hersteller für dieses Fluggerät veröffentlicht hat — statt dass sich das erst in der Luft zeigt.
In der Datei
Drei Dinge, die eine Show-Datei tragen kann — und heutige Formate nicht
Das sind keine Produktfeatures. Es sind Felder, Regeln und ein Sampling-Algorithmus — spezifiziert, schema-geprüft, und bei Wellen durch zwei L2-Beispiele ausgeübt.
Ein Importweg, der nicht auf den Hersteller-Konverter wartet
Jede konforme Datei lässt sich über einen veröffentlichten Sampling-Algorithmus auf t, x, y, z, R, G, B bei beliebiger Bildrate reduzieren — bitidentisch. Eine Steuerung, die bereits Frame-Arrays verarbeitet, kann eine DSX-Show am ersten Tag importieren, ohne Polynome zu verstehen. Benannte Konverter zu und von anderen Formaten sind geplant, nicht ausgeliefert; jeder solche Konverter muss eine Verlustmatrix veröffentlichen, die sagt, was er erhält, annähert oder verwirft.
Der Sampler existiert und ist getestet. Die Konverter-Suite (dsx-convert) nicht.
Ein doppelter Zaun, der in der signierten Datei liegt
Eine weiche, mitwandernde Blase (~4 m) löst automatische Landung aus. Ein hartes Polygon löst Motor-Abschaltung aus. Beides sind Felder in der Datei, mit dem Rest der Show gehasht und an Bord auswertbar, ohne den Player. Ein Zaun, der nur als Konsolen-Einstellung existiert, lässt sich auf die falsche Zahl setzen, ohne dass es jemand merkt — das ist ein dokumentiertes Unfallmuster.
Der wirksame Bord-Zaun ist termination.geofence. Der Show-weite safety.geofence ist der Rahmen, keine zweite Kopie derselben Regel.
Mehr als ein Start pro Luftfahrzeug
Bestehende Formate legen Choreografie, Luftfahrzeug und Akku in ein Objekt — eine Show kann deshalb nicht länger dauern als eine Ladung. DSX trennt Rolle, Luftfahrzeug und Sortie. Gruppen landen, tauschen Akkus und starten wieder in dasselbe Stück. Zwei L2-Beispiele existieren: eine 42-Minuten-Show mit sechs Fluggeräten und ein generativer Zyklus für Dauerbetrieb.
20 von 25 Rotationsregeln haben einen ausführbaren Check. Sampling endloser Shows (duration_ms: null) ist noch undefiniert.
Sicherheit
Der Sicherheitsrahmen sind Daten, kein PDF daneben
Abbruchstufen, Geofences, Verhalten bei Verbindungsverlust, Vorgaben zur GNSS-Integrität und die Sperren der Nutzlasten sind Felder in der Datei. Sie gelten unabhängig von der Wiedergabe und lassen sich an Bord auswerten — auch dann, wenn die Verbindung zum Show-Player abgerissen ist.
Vier Abbruchstufen
- 1Anhalten (Hold)
Umkehrbar. Die Show bleibt stehen, wo sie ist.
- 2Koordinierter Rückflug (RTH)
Ein Rückflug, den die Datei für den jeweiligen Zeitpunkt entweder als durchführbar ausweist — oder ausdrücklich als nicht durchführbar.
- 3Sofort landen
Kontrollierter Sinkflug an Ort und Stelle.
- 4Abschalten (Disarm)
Nicht umkehrbar. Wo die Drohne danach aufkommt, muss der Sicherheitsbereich vorher abdecken.
Ein Handgriff pro Stufe
Diese Anforderung geht auf einen dokumentierten Unfall zurück: Ein Pilot ließ die Show weiterlaufen, während bereits Fluggeräte in die Menge fielen — weil das Anhalten zu viele Bedienschritte gekostet hätte. Ein Abbruchweg, der zu umständlich ist, um benutzt zu werden, ist kein Sicherheitsmerkmal. Deshalb gehört bei DSX auch die Frage, wie viele Handgriffe eine Stufe kostet, in die Datei.
Wann ein Rückflug überhaupt möglich ist
Ein koordinierter Rückflug ist nicht zu jedem Zeitpunkt einer Show durchführbar. DSX benennt die Zeitfenster, in denen er ausfällt — mit Begründung und mit den Stufen, die stattdessen zur Verfügung stehen. Statt dass die Bodenstation das unter Zeitdruck herausfinden muss.
Der Absturz muss abgedeckt sein
Der angegebene Sicherheitsbereich MUSS (MUST) die Absturzbahn einer Drohne mit abgeschalteten Motoren von jeder Position aus einschließen, die die Show erreicht. Die Stufe Abschalten ist nur dann nutzbar, wenn das vorher feststeht.
Weiche Blase, hartes Polygon
Die Datei trägt zwei Zäune, nicht einen. Der weiche Zaun ist eine mitwandernde Blase um die Sollposition; sie zu verlassen startet eine automatische Landung. Der harte Zaun ist ein festes Polygon; ihn zu verlassen schaltet die Motoren ab. Beide reisen mit der signierten Datei, eine Bodenstation kann die Zahl nicht still ändern.
Profile
Konformitätsstufen statt Funktionsliste
Ein Hersteller muss nicht alles umsetzen, um konform zu sein. Jede Stufe ist für sich eine vollständige und überprüfbare Zusage.
Nur Positionen und RGB, gleichwertig zu einer CSV-Datei. Das beherrscht jede Steuerung.
Segmenttrajektorien, Lichtprogramme, Flugbereichsgrenzen, Startraster und Rückflug.
Gierwinkel, Nutzlasten (Pyrotechnik, Rettungssystem, Abwurf), Mehrwellen-Rotation, mehrere Flotten, Ton-Synchronisation und Signatur.
Konformität
Was heute geprüft wird — und was nicht
Vorhanden und in Betrieb
- Sicherheit des Containers: Eintragsnamen, Grenzen beim Entpacken, Umgehung der Signatur
- Prüfung von .dsx, .dsxp und Termination gegen die JSON-Schemata — ohne Netzzugang
- Der normative Sampler gegen sechs von Hand gerechnete Testvektoren
- Vollständigkeit des Archivs: jede referenzierte Datei liegt bei, die Prüfsummen stimmen, die Signaturen lassen sich verifizieren
- Die inhaltlichen Regeln aus §10 zu Wellen- und Dauerbetrieb — 20 der 25 Regeln sind durch einen ausführbaren Test abgedeckt
- Referenzbeispiele für L0, L1 und zwei L2-Fälle
Noch nicht vorhanden
- Prüfungen auf verlustfreie Hin- und Rückkonvertierung sowie auf Determinismus — „DSX-konform“ ist deshalb noch keine Zusage, die jemand vollständig erwerben kann
- Benannte Konverter zu und von anderen Formaten (dsx-convert) — geplant; der Sampler ist der Importweg, der heute existiert
- Das binäre .dsb-Format, bisher nur eine Skizze
- Das Sampling-Verhalten für Shows ohne festes Ende (duration_ms: null)
- Ein Referenzbeispiel für Nutzlasten, Pyro-Sperren und die GNSS-Integritätsfelder — spezifiziert sind sie, belegt durch ein Beispiel nicht
- Geräteprofile von Herstellern — bisher hat kein Hersteller eines beigesteuert
- Ein einziger Flug. Es ist noch nie eine Drohne nach einer DSX-Datei geflogen.
Lizenzen
Bewusst so gewählt: Das Format muss sich in proprietärer Firmware umsetzen lassen
Spezifikation, Schemata, Beispiele, Geräteprofile
Community Specification License 1.0
Deren Patentlizenz deckt genau das ab, worum es hier geht: die Spezifikation umzusetzen. Eine reine Softwarelizenz leistet das nicht verlässlich.
Code, Referenzwerkzeuge, Konformitätstests
Apache-2.0
Lässt sich in proprietäre Firmware einbetten und bringt eine Patentlizenz mit, deren Reichweite zu Quellcode passt.
Der Name „DSX“ und die Endung .dsx
Keine Marke angemeldet, keine nötig
Ein Formatname ist eine technische Bezeichnung wie .zip oder .json. Jeder darf ihn umsetzen; was konform ist, entscheidet die öffentliche Testsuite und keine Marke.
Ausdrücklich nicht GPL: Eine Referenzimplementierung unter GPLv3 lässt sich nicht in die proprietäre Firmware einbetten, die das Format am Ende lesen muss. Ein Standard, dessen Referenzcode ausgerechnet seine Zielgruppe nicht einbinden darf, findet keine Verbreitung. Ausdrücklich nicht MIT: keine Patentlizenz. Und ausdrücklich nicht Apache-2.0 für den Text der Spezifikation: Deren Patentklausel bezieht sich auf die Weitergabe des Dokuments, nicht darauf, das Beschriebene umzusetzen.
Sie produzieren Shows und die Software steht Ihnen im Weg? Schreiben Sie uns ein Issue
Die Issues sind offen. Vorschläge werden diskutiert und nicht als „not planned“ geschlossen. Wer mitwirkt, wird in der Spezifikation namentlich genannt. Das ist eine Zusage, und sie steht hier, damit man uns daran messen kann.