From a497c0f3174f0d5f3b01fd7d36d18e5554902892 Mon Sep 17 00:00:00 2001 From: sawinglogz <3787776-sawinglogz@users.noreply.gitlab.com> Date: Fri, 7 Feb 2020 13:54:28 -0500 Subject: [PATCH] Update Viatom loader based on newly observed O2Ring data in the header. --- oscar/SleepLib/loader_plugins/viatom_loader.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/oscar/SleepLib/loader_plugins/viatom_loader.cpp b/oscar/SleepLib/loader_plugins/viatom_loader.cpp index fdd41e7b..d6570c10 100644 --- a/oscar/SleepLib/loader_plugins/viatom_loader.cpp +++ b/oscar/SleepLib/loader_plugins/viatom_loader.cpp @@ -297,10 +297,12 @@ bool ViatomFile::ParseHeader() //int spo2_avg = header[17]; //int spo2_min = header[18]; //int spo2_3pct = header[19]; // number of events - //int spo2_4pct = header[20]; // number of events - CHECK_VALUE(header[21], 0); - //int time_under_90pct = header[22]; // in seconds - CHECK_VALUE(header[23], 0); + int spo2_4pct = header[20]; // number of events + if (header[21] > spo2_4pct) { + //CHECK_VALUE(header[21], 0); // sometimes nonzero; maybe spo2_5pct or something like that? + UNEXPECTED_VALUE(header[21], "< drops over 4%"); + } + //int time_under_90pct = header[22] | (header[23] << 8); // in seconds //int events_under_90pct = header[24]; // number of distinct events //float o2_score = header[25] * 0.1; CHECK_VALUE(header[26], 0);