polarofficial / polar-ble-sdk

Repository includes SDK and code examples. More info https://polar.com/en/developers
Other
447 stars 147 forks source link

On SDK Mode listOfflineRecordings does not work #374

Closed merschel closed 10 months ago

merschel commented 1 year ago

Platform on which you observed the bug:

Device on which you observed the bug:

Describe the bug

Hi,

On SDK mode the function listOfflineRecordings response always in responseError(errorCode: 202).

In the normal mode listOfflineRecordings works fine.

Verty Sense Firmware is 2.1.0 SDK Version is 5.1.0

jimmyzumthurm commented 1 year ago

Hi @merschel

Error 202 is telling me that you are trying to read or list the files from one of those 3 states :

1) Device was booted in exercise mode (also called internal recording). You would need to reboot your device in sensor mode (the "heart") 2) Device was booted in swim mode. Same as 1) 3) SDK mode is enabled. Currently you need to disable SDK mode to be able to get your files.

We will add documentation to explain better these limitations. Note that the first 2 will probably remain like that, but we will discuss internally if we could allow syncing of files from SDK mode.

merschel commented 1 year ago

Hi @jimmyzumthurm,

thank you for clarifying. In my case, the SDK Mode is enabled.

I find it counterintuitive that you need to switch to normal mode first in order to retrieve the data recorded in SDK mode, so I reported it as a bug.

jimmyzumthurm commented 1 year ago

@merschel I agree with you that is not intuitive and also missing from documentation, that will be added. These is historical reason for that block, which may not be valid anymore since we introduced the offline recording feature.

jimmyzumthurm commented 10 months ago

@merschel FYI, in next release (can't give any ETA yet), it will be possible to fetch recordings from SDK mode.

Also note that there is similar "SYSTEM BUSY" block when device is in exercise mode / swim mode. Unfortunately these blocks will need to remain, because this is needed to prevent sync with Flow service during exercise