Feature #141
geschlossenBleFtmsTester 1.3.1: Diagnosemodus --dienste, Tacx Vortex ohne FTMS im Advertisement
0%
Beschreibung
BleFtmsTester 1.3.1: Neuer Diagnosemodus --dienste <Adresse>, der sich mit einem BLE-Gerät verbindet und alle GATT-Dienste und -Merkmale mit ihren Eigenschaften auflistet. Er schreibt nichts ins Gerät und abonniert nichts. Anlass ist ein Tacx Vortex, das FTMS nicht bewirbt: Ob es den Dienst im Gerät trotzdem hat, lässt sich nur durch Verbinden klären.
Hintergrund¶
Folgeticket zu #140. Das --alle-Log eines externen Testers zeigt ein "Tacx Vortex 02869" (Adresse DEA636F33D3B, -66 dBm, verbindbar). Es bewirbt in der Scan Response Cycling Power (0x1818), Cycling Speed and Cadence (0x1816) und zwei Tacx-eigene 128-Bit-Dienste (6e40fec1-b5a3-f393-e0a9-e50e24dcca9e, 669aa305-0c08-969e-e211-86ad5062675f), aber kein FTMS (0x1826). Der Tester und die Geräteauswahl in ErControl filtern auf die Kennung im Advertisement und sehen das Gerät deshalb nicht als FTMS-Gerät. Ein Gerät kann einen Dienst anbieten, ohne ihn im Advertisement zu nennen; das zeigt erst der Dienstabruf nach dem Verbinden.
Technische Details¶
- Aufruf:
BleFtmsTester.exe --dienste DEA636F33D3B(Adresse aus dem--alle-Log, mit oder ohne:/-). - Ablauf: Scan bis zu 20 s auf das Advertisement der Adresse, dann
BluetoothLEDevice.FromBluetoothAddressAsync(address, addressType)mit dem gesehenen Adresstyp. Das Warten auf das Advertisement ist nötig, weil Windows für Geräte mit Zufallsadresse sonstnullliefert (siehe #133). - Danach
GetGattServicesAsyncund je DienstGetCharacteristicsAsync(beide ungepuffert). Ausgegeben werden Dienst-UUID (Standard-UUIDs kurz mit Namen, zum Beispiel0x1826 (Fitness Machine (FTMS))), Merkmal-UUID und Eigenschaften (Read, Write, Notify und so weiter) sowie am Ende eine Zeile "FTMS (0x1826): vorhanden / nicht vorhanden". - Die Kurzform der UUIDs ist in einer Hilfsfunktion zusammengefasst, die auch das Logging von
--allenutzt. - Version 1.3.1 in
BleFtmsTester.csprojund im Kommentar inDirectory.Build.props.
Hinweis zum Test¶
Noch nicht an echter Hardware gelaufen. Es steht kein Tacx zur Verfügung. Der externe Tester, der das Vortex hat, bekommt 1.3.1 und schickt das Log von --dienste zurück. Auch unklar: ob Windows beim Verbinden einen Kopplungsdialog anzeigt.
Recherche zum Tacx Vortex (08.10.2026)¶
Tacx FE-C über Bluetooth (Tacx, "FE-C over BLE - Simple how-to for engineers", v1.0.0, 2015; Kopie unter github.com/jedla22/BleTrainerControl):
- Dienst
6E40FEC1-B5A3-F393-E0A9-E50E24DCCA9E, genau die Kennung aus dem--alle-Log. Das Vortex bietet diesen Weg also an. - Zwei Merkmale wie eine serielle Schnittstelle:
6E40FEC2-…(Notify, Trainer zum Host) und6E40FEC3-…(Write/WriteWithoutResponse, Host zum Trainer). - Inhalt ist eine vollständige ANT-Nachricht: Sync
0xA4, Länge, Typ (0x4EBroadcast, acknowledged möglich), Kanal (beim Senden ignoriert), 8 Datenbytes, Prüfsumme. Beispiel aus dem Dokument:A4 09 4E 05 10 19 04 00 00 00 FF 24 30. - Die Prüfsumme ist das XOR aller Bytes inklusive
0xA4(am Beispiel nachgerechnet:0x30). Der Text im Dokument spricht von "Summe ohne Sync", das passt nicht zum Beispiel. - Empfohlene Rate 4 Hz. Die Daten sind die FE-C-Seiten (0x10, 0x19, 0x31), die ErControl über ANT+ schon kennt.
- Das Dokument wurde nicht gegen echte Hardware geprüft. Offen: ob das Vortex vor der Steuerung weitere Schritte verlangt.
Fähigkeiten des Vortex Smart T2180 (nur Händler- und Drittquellen, nicht der Hersteller): ANT+ FE-C und Bluetooth Smart. FTMS ist für das Vortex nicht belegt. Mehrere Quellen (bikethe.world, DC Rainmaker 2019) berichten, Tacx habe FTMS bei den Nicht-NEO-Modellen per Firmware-Update nachgeliefert. Die Vermutung, dass das Vortex FTMS nur wegen alter Firmware nicht bewirbt, hat sich nicht bestätigt (siehe Ergebnis unten: Firmware aktuell, FTMS nicht vorhanden). Garmins Tacx-Seite (developer.garmin.com/tacx-trainer) soll eine FTMS-Tabelle je Trainer enthalten, ließ sich nicht laden. Die Bedeutung des zweiten Tacx-Dienstes 669aa305-0c08-969e-e211-86ad5062675f ist unbekannt.
Ergebnis von --dienste und Firmware (09.10.2026, externer Tester)¶
BleFtmsTester 1.3.1 verbindet sich mit dem "Tacx Vortex 02869" (DEA636F33D3B, Adresstyp Random, Advertisement nach 1,2 s gesehen) und liest 8 Dienste. Ein Screenshot der Tacx-Training-App ("Software-Update") zeigt: Deine Software 3.1.22 / 1.1.3, Aktuellste Version 3.1.22 / 1.1.3. Die Firmware ist aktuell.
| Dienst | Merkmale (Eigenschaften) |
|---|---|
0x1800 Generic Access |
2A00, 2A01, 2A04 (Read) |
0x1801 Generic Attribute |
2A05 (Indicate) |
0x180A Device Information |
2A26 (Read) |
669aa305-0c08-969e-e211-86ad5062675f (Tacx, unbekannt) |
669aab01 (Write), 669aab02 (Notify), 669aab21 (WriteWithoutResponse, Write), 669aab22 (Notify) |
669aa501-0c08-969e-e211-86ad5062675f (Tacx, unbekannt) |
669aac01 (Read, Write) |
0x1816 Cycling Speed and Cadence |
2A5B (Notify), 2A5C, 2A5D (Read), 2A55 (Write, Indicate) |
0x1818 Cycling Power |
2A63 (Notify), 2A65, 2A5D (Read), 2A66 (Write, Indicate) |
6e40fec1-b5a3-f393-e0a9-e50e24dcca9e (Tacx FE-C über BLE) |
6e40fec2 (Notify), 6e40fec3 (WriteWithoutResponse, Write) |
Schluss des Logs: "8 Dienste. FTMS (0x1826): nicht vorhanden."
Folgerungen:
- Dieses Vortex hat bei aktueller Firmware kein FTMS, auch nicht verdeckt. Über den Bluetooth-FTMS-Weg von ErControl ist es nicht ansteuerbar, und ein Update ändert daran nichts.
- Der Tacx-Dienst für FE-C über Bluetooth ist vorhanden und entspricht der Beschreibung von Tacx genau:
…FEC2Notify (Trainer zum Host),…FEC3WriteWithoutResponse und Write (Host zum Trainer). Das ist der naheliegende Bluetooth-Weg für dieses Gerät. - Cycling Power (
0x1818) und Cycling Speed and Cadence (0x1816) liefern Messwerte (2A63,2A5BNotify). Die Merkmale mit Write und Indicate (2A66,2A55) sind Steuerpunkte des jeweiligen Standard-Dienstes, nicht für eine Zielleistung. - Die beiden
669aa…-Dienste (vermutlich ein älteres Tacx-Protokoll) sind unbekannt und werden nicht weiter untersucht.
Nächste Schritte¶
- Entscheidung, ob ein eigenes Feature "Tacx FE-C über Bluetooth" kommt. Vorschlag für den ersten Schritt: ein lesender Test im BleFtmsTester (Notifications auf
…FEC2abonnieren und die FE-C-Seiten 0x10/0x19 dekodieren, ohne zu schreiben), analog zum früheren Vorgehen bei FTMS, bevor es in ErControl eingebaut wird. - Alternativ ANT+ FE-C mit dem Stick (wartet auf einen Hardware-Test, #138).
- FTMS im Gerät, aber nicht im Advertisement: trifft für dieses Gerät nicht zu. Die Änderung an der Geräteauswahl ist deshalb nicht nötig.
JH Von Julius Haman vor 5 Tagen aktualisiert
- Status wurde von Neu zu Erledigt geändert
JH Von Julius Haman vor 5 Tagen aktualisiert
- Beschreibung aktualisiert (Vergleich)
Recherche zum Tacx Vortex ergänzt: FE-C über BLE (Tacx-Dokument), Gerätefähigkeiten, Firmware-Hinweis.
JH Von Julius Haman vor 4 Tagen aktualisiert
- Beschreibung aktualisiert (Vergleich)
Ergebnis von --dienste und Firmware-Stand ergänzt: kein FTMS, FE-C über BLE vorhanden.