TrackMyIndoorWorkout / TrackMyIndoorWorkout

Indoor fitness machine (bike, treadmill, rower, kayak / canoe / swim ergometer, elliptical) companion app to record virtual workouts with synthetic GPS track of simply circling on a track shape route
https://TrackMyIndoorWorkout.github.io
Apache License 2.0
30 stars 9 forks source link

Add support for Technogym Run #461

Closed MrCsabaToth closed 5 months ago

MrCsabaToth commented 8 months ago

This is not the MyRun, but the newest treadmill called simply "Run". I came across one at SDC23. The trick is that it advertises itself as an FTMS Treadmill, however it never provides standard Treadmill Data. It does have the RSC companion sensor service exposed though and that transmits. So we'd need to cherry pick and distinguish this particular treadmill, and then use only that sensor. If the app tries to handle it as a treamdill it stays mute, nothing happens. Due to this behavior standard apps like GymTrakr also mute got tricked and remain mute - I guess waiting for the "main" data as me.

I've been able to test some code (although some Samsung folks were very fearful when they realized I was debugging, next time I shouldn't be such a smart ass and vocal, just do the debug as secretively as possible).

I must add that using the Treadmill with Samsung Health is suuuper easy: just touch the Samsung watch at the NFC location and then it automatically connects and everything is recorded. The FTMS way is not overly hard, but not as convenient for sure.

MrCsabaToth commented 7 months ago

IMG_20231005_143657 IMG_20231005_143637

MrCsabaToth commented 7 months ago

Some logs: DebugLogs20231006T003451129937Z.txt

MrCsabaToth commented 7 months ago

nRF Connect screenshots: Screenshot_2023-10-05-18-01-03-47_3c2e989be58abe9ca7463ffb1e6967d2

Screenshot_2023-10-05-18-01-14-56_3c2e989be58abe9ca7463ffb1e6967d2

Screenshot_2023-10-05-18-01-54-88_3c2e989be58abe9ca7463ffb1e6967d2

Screenshot_2023-10-05-18-02-17-64_3c2e989be58abe9ca7463ffb1e6967d2

Screenshot_2023-10-05-18-02-39-38_3c2e989be58abe9ca7463ffb1e6967d2

Screenshot_2023-10-05-18-03-47-98_3c2e989be58abe9ca7463ffb1e6967d2

MrCsabaToth commented 7 months ago

I realized I must check model to not collide with Technogym's MyRun trainer, because that's the same manufacturer, but its Treadmill Data service is not mute.

MrCsabaToth commented 7 months ago

One last piece would be to add a preferences setting with which this workaround could be blocked or enforced. Name could be rsc_only_ftms_treadmill.

MrCsabaToth commented 5 months ago

Got released with the latest beta (build number 150)