Erfahrung mit ANT+

Hallo,

ich habe mir einen TACX Rollentrainer für das Indoortraining zugelegt. Trainiert wird mit einer Software Namen "Zwift". Die Verbindung zwischen PC und Rollentrainer erfolgt über ANT+. ANT+ USB-Dongle am PC.

Funktioniert super. Der aufgestellte Ventilator bläst konstant - nicht so toll. Stufenlos evtl. über Fernbedienung am Rad ganz nett. Viel schöner wäre die Lüftersteuerung angepasst an die Last bzw. Belastung und damit der Körpererwärmung. Von der Fa. Wahoo gibt es ein Lüfter für sage und schriebe ~230€. Die bieten auch eine Bergsimulator (Rad wird gesenkt oder angehoben) für runde 550€ an.

Würde mir gerne selbst einen "Wattgesteuerten" Lüfter ggf. in Verbindung mit Raumtemperatur und Herzfrequenz selbt bauen.
Nun meine Frage. Hat jemand Erfahrung mit ANT+ in Verbindung mit Arduino, Vorzugsweise ESP32?

  • welchen Sender/Empfänger gibt es?
  • gibt es bereits Libraries?
  • Kennt jemand das Protokoll zwischen Zwift und Tacx Radtrainer, sowie Garmin Brustgurt?

Freue mich auf Antwort Arduino4Fun

ich glaub das wird nichts.. Die Sicherheit ist durch eine 64-Bit-Verschlüsselung sichergestellt. Darüber hinaus gibt es eine zyklische Blockprüfung (CRC). Der Hersteller vergibt nur Lizenzen heraus und hat die hoheit für ANT+ also so gut wie unmöglich da an eine Programmstruktur / Code zu kommen.

eventuell mit Reverse Engineering.

du musst dir wohl eher die Sensoren selbst besorgen und dann eine Steuerung schreiben dafür.

dazu wird es wohl kaum eine Library geben, da der Hersteller diese erfindung für sich behält. kei Opersourcecode

Danke für die Antwort.

Denke dass jedoch der eine oder andere Hersteller Interesse an der Offenlegung der Daten hat, damit ihr Produkt weitere Verbreitung und Einsatz bringt. Habe einen Beitrag über Suchmaschine gefunden - jedoch mit Raspi, mit dem kenne ich mich nicht aus/keine Erfahrung, der den Einsatz von ANT+ beschreibt. Mit meinem Ansatz würde ich jedoch gerne ESP32 basiert bleiben. Werde weiter recherchieren.

Gruß Arduino4Fun

https://www.thisisant.com/resources/ant-message-protocol-and-usage
ist zwar der vorgänger "ANT" vlt hilft es... kann mich da nicht einlesen.. viel zu grosses PDF und Thema ohne vorkentnisse...

oder:

oder ein Hack darüber:

Beschreibung eines buches. leider nur auszugsweise.. über die verwendeten Chips und prozessoren:
https://books.google.ch/books?id=zSB4DwAAQBAJ&pg=PT276&lpg=PT276&dq=ant%2B+protokoll&source=bl&ots=_vyJ64IWtn&sig=_K_3sbteuplAJslzWkr1tlFZNKo&hl=de&sa=X&ved=2ahUKEwiXxPf9s7PfAhWNZVAKHdUZDmo4ChDoATANegQIChAB#v=onepage&q=ant%2B%20protokoll&f=false

Hallo,

bin schon etwas weiter gekommen. Etwas anderer Ansatz. Über JavaScript Zugriff auf Zwift.

Leider kenne ich mich noch nicht mit JS aus, auch nicht mit der Verwendung im Zusammenspiel PC/Microcontroller z.B. ESP32. Die gefunden Ansätze sehen jedoch sehr vielversprechend aus - vorausgesetzt ich bekomme die Portierung hin :slightly_frowning_face:
Ansatz 1: Internet Connected Fan for Zwift mit Photon
Ansatz 2: FanControl
Ansatz 3: Stufenlos gereglter Lüfter für Zwift mit Raspi

Mir ist noch nicht klar in welcher Umgebung der JS-Code läuft .. mal sehen.

Gruß Arduino4Fun

Hi

JavaScript wird auf dem aufrufendem Gerät ausgeführt und muß dort zugelassen sein - oder worauf zielte Deine Frage?

MfG

Hi

mir ist der "Mechanismus" noch nicht klar. Meine derzeitige Vorstellung: Zwift lauft auf PC, auf PC läuft JS --> Script welches ebenfalls JS "zwift-mobile-api" nutzt und stellt die Daten über Netzwerk bereit. ESP32 kann per WLAN darauf zugreifen.

Mit ist unklar, in welcher Umgebung das JS läuft "Interpreter?" und wie ich dann auf die Daten per ESP32 zugreifen kann. Hier fehlt ebenfalls ein wenig Netzwerkerfahrung.

Gruß Arduino4Fun

postmaster-ino:
JavaScript wird auf dem aufrufendem Gerät ausgeführt und muß dort zugelassen sein

Nicht zwingend. Mit Node.js steht auch eine Runtime für serverseitige Implementationen zur Verfügung.

Gruß Tommy

Ist eigentlich das falsche Forum für diese Fragen, aber zum Schluß möchte ich die Verbindung zu Zwift über ESP32 oder Wemos 8266 per Arduino Programm vornehmen.

Frage
Zuerst Node.js installieren
dann die zwift-mobile-api

dann sollte zumindest ein Zugriff auf die Zwift internen Größen (wie Geschwindigkeit, Leistung, Herzfrequenz) möglich sein z.B. wie Internet connected Fan

dann fehlt mir noch die Bereitstellung der Daten im heimischen Netz bzw. der Empfang mit dem ESP32 bzw. Wemos

Korrekt?

Gruß Arduino4Fun