SharKNX exportiert Daten in den folgenden Formaten, je nachdem, woher Sie exportieren:
| Format | Exportiert von | Verlängerung |
|---|---|---|
| Telegram XML (ETS) | Monitor, Shark Hunt-Monitor | .xml |
| Telegram CSV | Monitor, Shark Hunt-Monitor | .csv |
| Line Scan Text | Extras → Registerkarte Linienscan | .txt |
| Line Scan PDF | Extras → Registerkarte Linienscan | .pdf |
| Device Tables PDF | Extras → Registerkarte „Inspizieren“. | .pdf |
| Associations CSV / TXT | Extras → Registerkarte „Inspizieren“ → Sitzungsdetails | .csv, .txt |
| Group Address Table CSV | Extras → Registerkarte „Inspizieren“ → Sitzungsdetails | .csv |
| Shark Hunt JSON | Seite „Shark Hunts“. | .json |
Auf Mobilgeräten wird die exportierte Datei an das Freigabeblatt des Betriebssystems übergeben. Auf dem Desktop (Windows, macOS) wird ein nativer Dialog zum Speichern von Dateien oder Ordnern geöffnet.
Telegram-Exporte
Telegramme werden von der Monitorseite (** → Telegramme exportieren**) und von jeder Shark Hunt-Monitorseite (Export-Schaltfläche) exportiert. Beide öffnen dasselbe Exportblatt:
| Option | Standard | Beschreibung |
|---|---|---|
| Exportformat | XML | XML schreibt ein ETS-kompatibles Kommunikationsprotokoll; CSV schreibt die SharKNX Monitor Export v3-Tabelle. |
| Dateiname | Siehe unten | Bearbeitbar. Beim Formatwechsel wird die Erweiterung ausgetauscht und der eingegebene Name bleibt erhalten. |
| Exportlimit | Alle | Alle oder nur die neuesten Telegramme 100, 500 oder 1000. |
Welchen Grenzwert Sie auch wählen, die Datei listet die Telegramme in chronologischer Reihenfolge auf – die ältesten zuerst.
Dateiname
SharKNX_[Context_]{count}t_YYYY-MM-DD_HHMMSS.xml
Auf der Seite „Überwachen“ gibt es keinen Kontextteil; Bei einem Shark Hunt-Monitor ist der Kontext der Shark Hunt- und Aktionsname (bereinigt, max. 30 Zeichen). {count} ist die Anzahl der Telegramme, die beim Öffnen des Blattes verfügbar waren. Beispiel: SharKNX_1840t_2026-09-29_143022.xml.
Telegramm XML (ETS)
Der XML-Export verwendet das ETS-Kommunikationsprotokoll-Format (Namespace http://knx.org/xml/telegrams/01) – das gleiche Format, das ETS für seine Busmonitor- und Gruppenmonitoraufzeichnungen verwendet, sodass ein SharKNX-Export direkt in ETS geöffnet wird.
<?xml version="1.0" encoding="utf-8"?>
<CommunicationLog xmlns="http://knx.org/xml/telegrams/01">
<Telegram Timestamp="2026-09-29T14:30:22.410Z" Service="L_Data.ind" FrameFormat="CommonEmi" RawData="2900BCE011FA0801010080" />
...
</CommunicationLog>
| Attribut | Beschreibung |
|---|---|
Timestamp |
Zeitpunkt, zu dem das Telegramm beobachtet wurde, ISO 8601 in UTC |
Service |
L_Data.ind, L_Data.con oder L_Data.req für Tunnelverkehr; L_Busmon.ind für Busmonitorrahmen |
FrameFormat |
Immer CommonEmi |
RawData |
Der komplette cEMI-Rahmen als Hex-String – niemals nur die Nutzlast |
Im Busüberwachungsmodus erfasste Frames werden in ein <RecordStart Mode="Busmonitor" MediumType="Tp" /> … <RecordStop />-Paar verpackt, und ihr RawData trägt den Busüberwachungsstatus und den relativen Zeitstempel als zusätzliche cEMI-Informationen.
Beobachtungen, für die es kein ETS-Äquivalent gibt – etwa Lücken, in denen Telegramme verpasst wurden, oder Frames aus Medien, die ETS nicht darstellen kann – werden weggelassen. Die App sagt Ihnen, wie viele nach dem Export ausgelassen wurden.
Telegramm CSV
Der CSV-Export erfolgt im SharKNX Monitor Export v3-Format: eine feste Tabelle, die alle von SharKNX beobachteten Daten speichert, sodass eine Datei ohne Informationsverlust zurückimportiert werden kann.
Dateistruktur
- Zeile 1 – die Signatur
# SharKNX Monitor Export v3 - Zeile 2 – die Kopfzeile mit allen 46-Spaltennamen
- Eine Zeile pro Beobachtung danach in chronologischer Reihenfolge
Das Layout ist fest: immer durch Kommas getrennt, immer alle 46-Spalten in der gleichen Reihenfolge. Eine Zelle ist leer, wenn der Wert für diese Zeile nicht gilt oder nicht verfügbar war. Werte, die Kommas, Anführungszeichen oder Zeilenumbrüche enthalten, werden gemäß RFC 4180 in Anführungszeichen gesetzt.
Zeilenarten
Die Spalte kind gibt an, was jede Zeile darstellt. Neben normalen Telegrammen zeichnet der Monitor auch Ereignisse auf Busebene auf:
kind |
Bedeutung |
|---|---|
telegram |
Ein dekodiertes KNX-Telegramm |
bus_control |
Ein Bestätigungsrahmen für den Busmonitor (acknowledge, negative_acknowledge, busy, negative_acknowledge_busy) |
raw |
Ein Frame wurde von SharKNX empfangen, konnte aber nicht dekodiert werden – der Grund liegt in observation_reason |
invalid |
Ein deformierter Rahmen |
gap |
Zu diesem Zeitpunkt wurden Telegramme verpasst – siehe die Spalten gap_* |
Spalten
| Gruppe | Spalten |
|---|---|
| Identität und Zeit | id, observed_at_ms (Unix-Zeit in ms), observed_at_utc (ISO 8601), kind, session_generation, sequence |
| Rahmen | service, original_encoding (cemi oder tp1), medium, medium_code, original_bytes_hex |
| Busmonitor | bus_relative_timestamp, bus_status_hex |
| Adressierung | source_raw, destination_raw, destination_kind, source, destination, destination_name |
| Kontrollfeld | priority, hop_count |
| Transport- und Anwendungsschicht | tpci_code, tpci_service, tpci_sequence, apci_code, apci_service, apci_embedded_value, apci |
| Nutzlast und Wert | payload_hex, decoded_payload_hex, value, dpt_main, dpt_sub, numeric_value |
| KNX-Datensicher | data_secure_status, data_secure_sequence, data_secure_sender_authorization, data_secure_destination_raw, data_secure_rejection, data_secure_rejection_details_json |
| Busveranstaltungen | bus_control, observation_reason, observation_reason_code, gap_missed_count, gap_after_sequence, gap_source |
destination_name, value und die DPT-Spalten werden nur gefüllt, wenn ein ETS-Projekt geladen wird. Für gesicherte Gruppentelegramme ist data_secure_status eines von opened, ets_decrypted, key_unavailable oder rejected; Bei einer Ablehnung gibt data_secure_rejection den Grund und data_secure_rejection_details_json alle Details als JSON-Objekt an.
Telegramme importieren
Beide Telegrammformate können über das Menü ⋯ Aktionen wieder in die Monitor-Seite geladen werden:
| Menüpunkt | Akzeptiert |
|---|---|
| SharKNX-CSV importieren | SharKNX Monitor Export v3 nur CSV-Dateien. Dateien aus älteren App-Versionen (# SharKNX Export v1) werden nicht akzeptiert. |
| Import aus ETS-XML | ETS-Kommunikationsprotokolle (.xml) – Aufzeichnungen, die in ETS erstellt oder aus SharKNX exportiert wurden. Bis zu 5000 Beobachtungen; Größere Aufnahmen werden verworfen und nichts importiert. |
Beim Import wird die aktuelle Telegrammliste ersetzt. Die neuesten Telegramme werden bis zur maximalen Puffergröße von 5000 (20 im kostenlosen Plan) beibehalten und die Einstellung Telegramm-Puffergröße wird automatisch erhöht, wenn der Import mehr Platz benötigt.
Zeilenscan-Text
Wird nach Abschluss eines Scans aus Diagnose → ** über ** → Als Text exportieren exportiert.
Dateiname
line_scan_{area.line}_{YYYY-MM-DD}.txt
Beispiel: line_scan_1.1_2026-09-29.txt.
Dateistruktur
Der Bericht ist in drei Abschnitte unterteilt, die durch gestrichelte Linien getrennt sind.
Header-Block
Generated : 2026-09-29 14:30:22
ETS Project : My Building
Gateway : Secure Tunnel 192.168.2.7:3671 (1.1.0)
Line : 1.1
Medium : TP
Range : 0 - 255
Devices Found : 12
Duration : 38s
Geräteliste - kompakte nummerierte Tabelle:
[1] 1.1.1 MDT SCN-00.02 (0x0900)
[2] 1.1.5 Siemens 5WG1... (0xFFFF) [DataSecure]
...
Jede Zeile zeigt: Index, individuelle Adresse, Modellzeichenfolge, Deskriptor-Hexadezimalwert und ein [DataSecure]-Flag, wenn der Deskriptor 0xFFFF ist.
Detaillierte Ergebnisse – ein Block pro Gerät, mit vier Unterabschnitten:
| Unterabschnitt | Felder |
|---|---|
| Identität | Deskriptor, Geräterolle, Gerätename, DataSecure |
| Hardware | Seriennummer, Hersteller, Bestellinformationen, Firmware-Version, Hardwaretyp, maximale APDU-Länge |
| Anwendung | Ladestatus, Ausführungsstatus, App-Version, Ladestatus der Adresstabelle, Ladestatus der Zuordnungstabelle, Ladestatus der Gruppenobjekttabelle |
| Status | Programmiermodus, Fehlerflags, Gerätesteuerung |
Felder, die nicht gelesen wurden (z. B. wenn Info lesen für ein Gerät nicht ausgelöst wurde), werden als - angezeigt.
Beispieldatei: sample-line-scan.txt
Zeilenscan-PDF
Wird nach Abschluss eines Scans aus Diagnose → ** über ** → Als PDF exportieren exportiert.
Dateiname
line_scan_{area.line}_{YYYY-MM-DD}.pdf
Beispiel: line_scan_1.1_2026-09-29.pdf.
Inhalt
Das PDF enthält die gleichen Informationen wie der Line Scan Text-Bericht, formatiert als A4-Dokument mit dem SharKNX-Logo, Abschnittsbändern und abwechselnder Zeilenschattierung. Seitenzahlen und der Zeitstempel der Generierung erscheinen in der Fußzeile.
Beispieldatei: sample-line-scan.pdf
Gerätetabellen PDF
Wird aus **Diagnose → ** exportiert, sobald die Tabellen eines Geräts gelesen wurden:
- Ein Gerät – Öffnen Sie die Detailseite der Sitzung und tippen Sie in der oberen Leiste auf die Schaltfläche Teilen.
- Alle Geräte – Tippen Sie auf der Registerkarte „Inspizieren“ auf Exportieren, um ein PDF pro abgeschlossener Sitzung zu erstellen. Auf dem Desktop werden sie in einem von Ihnen gewählten Ordner gespeichert; Auf Mobilgeräten werden sie als Stapel geteilt.
Dateiname
device_tables_{individual_address}_{YYYY-MM-DD}.pdf
Beispiel: device_tables_1.1.5_2026-09-29.pdf.
Abschnitte
| Abschnitt | Inhalt |
|---|---|
| Kopfzeile + Info | Geräteadresse, Zeitstempel der Generierung, Gerätemodell, Hersteller, Bestellinformationen, Seriennummer, Firmware, Geräterolle, Datensicherheitsstatus sowie Gruppenadresse und Linkanzahl |
| Kommunikationsobjekte | Eine Zeile pro Kommunikationsobjekt mit dessen Nummer, Name (sofern in der ETS verfügbar), Größe, Flags, Priorität und verknüpften Gruppenadressen |
| Adress-Tabelle | Einträge in der Rohadresstabelle: Index, 3-Ebene, 2-Ebene und Hexadezimalwert |
| Geräteinfo | Felder „Identität“, „Hardware“, „Anwendung“ und „Status“ (wie Zeilenscantext) – nur vorhanden, wenn Info lesen vor dem Export durchgeführt wurde |
Jeder Abschnitt beginnt auf einer neuen Seite, sodass Berichte mit mehreren Abschnitten sauber paginiert werden.
Beispieldatei: sample-device-tables.pdf
Assoziationen CSV/TXT
Wird von der Detailseite einer Sitzung in **Diagnose → ** über die Schaltflächen Export CSV und Export TXT über der Zuordnungsliste exportiert. Beide enthalten pro Kommunikationsobjekt einen Eintrag mit seinen Flags und verknüpften Gruppenadressen.
Dateiname
associations_ia-{area-line-device}_{YYYY-MM-DD}.csv
associations_ia-{area-line-device}_{YYYY-MM-DD}.txt
Beispiel: associations_ia-1-1-5_2026-09-29.csv.
CSV-Struktur
comm_object,c,r,w,t,u,i,size,group_addresses
0,1,0,1,0,0,0,1 bit,1/1/1
1,1,1,0,1,0,0,1 bit,"1/2/1, 1/2/9"
Die Flag-Spalten sind 1 (gesetzt) oder 0 (nicht gesetzt): Communication, Lead, Write, Üransmit, Apdate und read on Init. Wenn ein Objekt mit mehreren Gruppenadressen verknüpft ist, teilen sie sich eine in Anführungszeichen gesetzte, durch Kommas getrennte Zelle.
TXT-Struktur
Comm. Object 1
Flags: C=1 R=1 W=0 T=1 U=0 I=0
Size: 1 bit
Group Addresses:
1/2/1
1/2/9
Gruppenadresstabelle CSV
Wird von der Detailseite einer Sitzung in **Diagnose → ** über die Schaltfläche Export CSV über der Gruppenadresstabelle exportiert.
Dateiname
group_address_table_ia-{area-line-device}_{YYYY-MM-DD}.csv
Struktur
tsap,3-level,2-level,hex
1,1/1/1,1/257,0x0901
2,1/2/1,1/513,0x0A01
tsap ist der Index des Eintrags in der Adresstabelle des Geräts.
Shark Hunt JSON
Exportiert von der Seite „Shark Hunts“ – Alle Hunts exportieren für jede Shark Hunt oder das eigene Menü einer Shark Hunt für eine einzelne.
Dateiname
- Einzeljagd: der Jagdname (bereinigt, max. 50 Zeichen), z. B.
HVAC_Diagnostics.json - Alle Shark Hunts:
SharKNX_Export_YYYY-MM-DD.json
Dateistruktur
Die Datei ist ein JSON-Objekt mit einem metadata-Block und einem hunts-Array. Single-Hunt- und All-Hunt-Exporte verwenden dieselbe Struktur, sodass jeder Export importiert werden kann.
{
"metadata": {
"version": "1.0.0",
"exportedAt": "2026-09-29T14:30:22.000Z",
"huntCount": 1,
"appVersion": "1.2.0",
"exportedBy": "SharKNX"
},
"hunts": [
{
"id": "e3224ab9-...",
"name": "HVAC Diagnostics",
"description": "Fan coils and heat pump",
"actions": [
{
"id": "fe00f896-...",
"name": "Fan coil setpoint",
"type": "sendFixed",
"commands": [
{ "groupAddress": "11/0/1", "value": "21", "dpt": "9.001", "delayMs": 0, "isRead": false }
]
}
]
}
]
}
Der type jeder Aktion ist einer von sendFixed, sendSequence, sendVariable, sendCommObject, sendAndMonitor, monitorSpace, monitorDevice, monitorGaRange, monitorDeviceRange, monitorThreshold oder monitorCustom; Die übrigen Felder hängen vom Typ ab.
Beispieldatei: sample-shark-hunt.json
Importieren
Auf der Shark Hunts-Seite akzeptiert Hunts importieren jeden SharKNX-Shark Hunt-Export. Importierte Shark Hunts werden zu Ihrer bestehenden Liste hinzugefügt und erhalten neue IDs, sodass sie niemals eine bereits bestehende Shark Hunt überschreiben. Suchvorgänge, die den Grenzwerte unterbrechen – mehr als 25-Aktionen oder mehr als 15-Befehle in einer Aktion – werden übersprungen und der Import wird abgelehnt, wenn er Sie über gespeicherte 25-Suchvorgänge hinausführen würde.