Testing Health Connect and Sleep Cloud in beta 20250922

The beta finally reads SpO2 from HC. Here’s some log from the crash report:
My phone is OnePlus Watch 3.

I[25Sep 08:12:20.464, DefaultDispatcher-worker-1]: HealthConnect-api: readSPO2Data records 1000
I[25Sep 08:12:20.464, DefaultDispatcher-worker-1]: HealthConnect-api: readSPO2Data record SPO2=98.0%
I[25Sep 08:12:20.465, DefaultDispatcher-worker-1]: HealthConnect-api: readSPO2Data record SPO2=98.0%
I[25Sep 08:12:20.465, DefaultDispatcher-worker-1]: HealthConnect-api: readSPO2Data record SPO2=97.0%
I[25Sep 08:12:20.465, DefaultDispatcher-worker-1]: HealthConnect-api: readSPO2Data record SPO2=98.0%

However, the sleep graph does not show the imported data, only HR and HRV data from the phone:

Do you wonder why the sleep duration is 16:57? Well, I used two phones to monitor my sleep, one with the OnePlus Watch 3 and other with a ring Go2Sleep 3. The ring recorded HR, Sp02 and HRV but no activity (known problem). See the pic:

And once I uploaded and downloaded both sessions from the Sleep Cloud, the data were not combined, instead the sleep duration became 16 hours.

It would be nice if the data could be combined :roll_eyes:

I would like to share with you a tool which allows to read data from the HC. It is called Health Connect Toolbox

My watch writes many stuff but not HRV though. SAA could actually share the data with other apps. See the HCT in action:



For developers: if you need full logs of synchronization and the sleep session, let me know. As I noticed, there were few disconnects with a watch in the graph.

Hello @RolandasR big thanks for sharing this… would you also share teh full log with me… I have tried the following test when testing the fixes in SPO2 sync:

  1. I did add several SPO2 values in a period after my sleep record…
  2. I have edited my sleep record and choosed the option to add sleep after
  3. after adding an hour of sleep HC sync is trigged and my test SPO2 has been imported into that new sleep record…

Hello @petr-urbandroid
Here is the file.
Regarding the SpO2, it seems I was lucky that time. Now I do not get the data again. Even HRV from my watch. I did some investigation, since some other my apps behave almost the same. Like, MedM Health, Withings app. I noticed this: once I reinstall Health Connect, the apps get SpO2 after a day and working well for 2-3 days. Then stop again.
I asked AI what did happen after all. I noticed that MedM has an option to synchronize every 4 hrs. Also, if I try to download SpO2 it shows an error that the quota exceeded and notifies me to try again later. AI explained that SpO2 data were quite huge and developers have to implement retrieval of data by pages, each page download requires page token for authorization. You have to make a 15 mins pause before getting the next page. Otherwise, it is treated as an abuse and you get the quota exceeded error. I own MedM already for 3 days and it still cannot download SpO2. Withings app also stopped reading SpO2 and the only way is to reinstall HC, set all permissions again. It really pissed me off :).
P.S. One more thing I noticed: MedM app had no problems getting Respiratory Rate data from HC, although my watch sends them continuously as SpO2, and there are a lot of them.