purpledot / polar-rcx5-datalink

Command-line program to export Polar RCX5 training sessions or upload them to Strava
The Unlicense
16 stars 2 forks source link

polarpersonaltrainer.com ended #2

Closed h4nc closed 5 years ago

h4nc commented 5 years ago

@purpledot I found your project searching for possibilities to use my CS500 after polar ends the service.

Will your project still work after they shut down their servers.

Polar-rcx5-datalink ... will this also work with two CS500?

purpledot commented 5 years ago

Will your project still work after they shut down their servers.

Yes. It has nothing to do with any Polar services.

will this also work with two CS500?

Most likely no since CS500 has a different protocol. Even RCX3 (RCX5's sibling model) won't work without certain changes (https://github.com/purpledot/polar-rcx5-datalink/issues/1).

h4nc commented 5 years ago

Would it be possible to work this out for other devices. I think there are several people looking for something like this.

How did you reverse engineer the protocol. Is this possible for noobs like me?

purpledot commented 5 years ago

Would it be possible to work this out for other devices

Yes.

How did you reverse engineer the protocol.

Wireshark helped to figure out how to connect the watch and export encoded training sessions. Then you take .hrm and .gpx files of these sessions (https://support.polar.com/au-en/support/tips/Data_Export_from_RCX5_CS500_to_ProTrainer_5) and try to make sense of the binary data you have exported.

Is this possible for noobs like me?

Before this project I had no idea how this whole thing works. So I would say yes, it is possible.

h4nc commented 5 years ago

Unfortunately the link to wireshark isn’t valid or is it a user on git?

So where should I start?

purpledot commented 5 years ago

I've edited the link, it should work now.

So where should I start?

Lean how to reverse engineer usb devices in general. Then try to understand how this software works.

On a side note, did you consider converting .hrm and .gpx files using services like polarconverter and upload them to your Strava account?

h4nc commented 5 years ago

The goal would be to have it at some online service. I don’t have a strava account right now. I just want to keep the ability to pull the data from my device, because it looks like polar won’t give us something to use the data locally.

Edit: I heard from those hrm and gpx giles the first time now.

So yes uploading to strava would be ok for me.

purpledot commented 5 years ago

Then you definitely should try it first.

1) Export .hrm and .gpx files. 2) Convert them into .tcx files. 3) Upload to your Strava account.

h4nc commented 5 years ago

Ok, so I tried those steps and it worked.

The CS500 only exports a .hrm file because it has no gps.

Is the software websync still needed with your project. I didn't get that yet. Or is it a stand alone thing.

Best thing would be to install this project on raspberry pi zero w and plud the datalink in and have everythin automated. Is this possible? Or do we have to export the files from polar every time manually?

purpledot commented 5 years ago

Is the software websync still needed with your project.

No you only need your watch and the DataLink.

Best thing would be to install this project on raspberry pi zero w and plud the datalink in and have everythin automated.

Not sure about that since a have no experience with Raspberry Pi. But I think it is possible.

Or do we have to export the files from polar every time manually?

No you don't need to do that.

h4nc commented 5 years ago

@purpledot did you already hear from this one, I found this on a german page about the ending of polarpersonaltrainer.com

https://www.polar.com/accesslink-api/

EDIT: I don't know if this is only about Flowlink and not Datalink

purpledot commented 5 years ago

Yeah I know about it. Didn't find it useful.

h4nc commented 5 years ago

@purpledot can you point me in some direction on how you analysed the output of wireshark?

I already tried it but I could not see what the received package actually do. How did you reverse engineer that? Guessing? Trial&Error?

Could a wrong sent code probably destroy the cs500?