The O2ring add-on doesn't display the data as obtained by the o2ring in the same way viHealth app does

After trying to use the o2ring add-on for 2 days, I decided to ditch its use and go back to using sonar. The next 4 days I used the ViHealth app that came with the o2ring and I found better graphing from it, in the way of accuracy.

I saw that for the 4 days of using the ViHealth app, the spO2 graph in the app showed that i had many instances of trasient drops that would raise red flags on my sleep, as the spO2 was going as low as 81. However, on the previous 2 days where I was using the o2ring add-on on SAA, the graphs did not even go lower than 90.

1 Like

Here is the graph showing the spO2 not going lower than 90

and the graph of ViHealth taken the next night, which shows spO2 dropping to the low 80s, albeit transiently:

  1. try to set 1 second interval in O2Ring addon
  2. you measured SpO2 2 days using SAA and NEXT 4 days using ViHealth. That was different days and does not mean that measurements are wrong.
    We can say that measurements are wrong only when they are measured at the same time and have differences in comparison. But you measured it in different days, so it’s just your guesses.
1 Like

There is no certainty in what I am saying, but I can say that it is certain that I can’t give you measurements on the same day for sure. It is physically impossible to do that having one o2ring, so the next best thing is to infer that when I took sleep data on 6 successive nights, I am likely to have readings that are consistent with my condition, and if one set should measure one way, the other should not stray far.

I’m done with my testing anyway, and if the SAA plus o2ring add-on plus sleepcloud is not displaying my spO2 correctly, I can just use the ViHealth app separately using another phone concurrently with SAA on another phone. It is slightly more work and bothersome, but I can’t have my sleep app giving me wrong graphs. If I’m having very low spO2 and the Sleepcloud graph isn’t displaying it as it should, that isn’t helping my health at all, is it?

But that is just me. Other users may feel perfectly fine with the way data is parsed.

I will try again setting the o2ring to collect data every second as your suggested, but I don’t necessarily agree with that approach as it’s very taxing on the o2ring. Won’t it wear out 10x as fast from its current default 10-second interval in the add-on? Won’t a 4-second sampling interval be okay as that would match the fixed sampling interval of the ViHealth app?

OTOH, it may be the case that ViHealth takes samples at one second intervals but only graphs the data at 4 second intervals. So I can set the o2ring to take samples at 1 second intervals as well since that is how it’s done by the native app. And as you said, it may get Sleepcloud to graph the data in a way similar to how the Vihealth app graphs it.

So maybe, the default add-in sampling rate of 10 seconds is the culprit, and merely changing the sampling rate to 1 second is the answer.

This is a bit confusing. The o2ring add on does not remove your ability to download o2ring data into vihealth after your sleep session. You can compare the data in both apps for the exact same days. As @den suggested, change the sample interval to 1second. Unless you do that, the data will not match.

1 Like

As I explained earlier, I could not get activity data thru sonar if I ran the O2Ring add-on even when I had set the wearables menu setting as automatic to allow for the possibility that the o2ring add on can run together with sonar enabled.

So I had to run SAA on sonar on background as it can do that, while I ran ViHealth on the foreground as it shuts off when it is on background.

I explained this already but if you don’t understand it, it’s probably easier to understand if you had done what I did. Still, I thought I explained it well but you were probably skimming through my explanation.

Sorry, I’m replying to your question on another thread and it showed up here. Weird.

I could not download the data to ViHealth at all. Perhaps the default sampling rate of 10 seconds of the add-on rendered it incompatible and unrecognizable by the ViHealth app as it is sampling and parsing data based on a 1-second sampling rate.

It may change if I change the sampling rate of the add-on, as Den had suggested.

Are you certain the o2ring add on service was stopped when you tried to download into vihealth? That would prevent vihealth from connecting to it. Nothing to do with the interval as it just reads from the ring - it doesn’t affect the stored data in any way. Make sure it is not running by stopping the o2ring addon service, exit then open it again to confirm.

1 Like

O2Ring always measure data with 1 second interval. You can not change that, this is how O2Ring firmware is developed.
But you can control how frequently data will be requested from ring and will be sent to SAA app (per 1 or per 10 seconds for example).

1 Like

I was still new to using ViHealth.

It downloaded many sessions, and of those I deleted those sessions that were short, which weren’t the night sleep sessions.

This was before I signed on to Viatom’s online backup trial, but even with backups, I don’t see a way to retrieve easily. I would see the sessions backed up to number 15, and I have 4, but no way I could intuitively retrieve the other 11 from their online backup.

Anyway, those 2 sessions associated with the add-on, I never saw them, otherwise I would have saved them.

Thanks for the clarification.

I recalled that I did fiddle with the add-one’s interval, and changed it to 4 from 10, and used the add-on on those two SAA sleep sessions.

I stopped at 4 then as for some reason I couldn’t move it lower. I thought then that was the minimum, so I left it at 4. But maybe there was something else going on with my phone.

When I get the chance, I’ll do a session with the interval set at 1, and I’ll let you know how it turns out.

I did a 30-minute nap in the afternoon, with the SAA wearable set at o2ring, wih the add-on set at a 1-second update interval. When I did a “test sensor” though of the o2ring, it connected to the o2ring although and flashed a message that the o2ring was set at a 10-second interval. It did not show a graph of the o2ring values, and eventually what came up was the sonar graph, giving me the impression that it was sonar that was connected, and not o2ring, although the subsequent commencement of a sleep session showed that the o2ring was indeed the sensor that was connected.

These are what I observed:

  1. The SAA actually displayed the spO2 values reaching as low as 85:

  1. But using the o2ring to update the ViHealth app with this sleep session, the app only received a truncated set of data, with only 3 minutes of the 30 minute data set uploaded. I don’t have to show a screenshot here. Nothing really to see (but this would explain why I deleted the first 2 sleep sessions (Sept 18 and 19) from the ViHealth app as they had incomplete data from truncated data sets).

  2. Sending the data to the SleepCloud, the graph that came out was once again flawed since it never showed spO2 reaching lower than 90:

Note that I reviewed the sleep session of Sep 18 and 19, and both their graphs showed no spO2 value being lower than 90.

I can say that changing the default update interval of the add-on to 1 second worked (even though the message that comes out when it was on “test sensor” at the wearable menu still says 10 seconds), as the SAA session screen showed values below 85.

However, sleepcloud still changed the data and its display did not accurately reflect the measured spO2 values.

1 Like


I don’t know why, but in syncing the ring and ViHealth at a later time, I was able to get the full data displayed on the ViHealth chart. So here it is:

So @Michael you are right. I can use the o2ring used in SAA to display the same session in ViHealth. So, in the future, if and when SAA has the ability to use both o2ring and sonar together, I could be able to pull data from the ring into the ViHealth app after using it in SAA to collect data.