diff --git a/Htmldocs/release_notes.html b/Htmldocs/release_notes.html
index af6fd8dc..4abb7abb 100644
--- a/Htmldocs/release_notes.html
+++ b/Htmldocs/release_notes.html
@@ -12,9 +12,10 @@
http://www.apneaboard.com/wiki/index.php/OSCAR_Release_Notes
Changes and fixes in OSCAR v1.4.1-xxxx
-
Portions of OSCAR are © 2019-2022 by
+
Portions of OSCAR are © 2019-2023 by
The OSCAR Team
+ - [new] Fisher & Paykel Sleepstyle now reports Obestructive and Central apneas separately.
-
- [fix] Allow Graph and Event combo boxes to remain open after changes.
-
- [fix] Overview display of ResMed Oximeter events now works.
-
diff --git a/oscar/SleepLib/loader_plugins/sleepstyle_loader.cpp b/oscar/SleepLib/loader_plugins/sleepstyle_loader.cpp
index 8aae96e3..8236c07b 100644
--- a/oscar/SleepLib/loader_plugins/sleepstyle_loader.cpp
+++ b/oscar/SleepLib/loader_plugins/sleepstyle_loader.cpp
@@ -924,7 +924,8 @@ bool SleepStyleLoader::OpenDetail(Machine *mach, const QString & filename)
//fastleak EventList *LK = sess->AddEventList(CPAP_LeakTotal, EVL_Event, 1);
EventList *PR = sess->AddEventList(CPAP_Pressure, EVL_Event, 0.1F);
- EventList *A = sess->AddEventList(CPAP_AllApnea, EVL_Event);
+ EventList *OA = sess->AddEventList(CPAP_Obstructive, EVL_Event);
+ EventList *CA = sess->AddEventList(CPAP_ClearAirway, EVL_Event);
EventList *H = sess->AddEventList(CPAP_Hypopnea, EVL_Event);
EventList *FL = sess->AddEventList(CPAP_FlowLimit, EVL_Event);
EventList *SA = sess->AddEventList(CPAP_SensAwake, EVL_Event);
@@ -966,8 +967,8 @@ bool SleepStyleLoader::OpenDetail(Machine *mach, const QString & filename)
bitmask = 1;
for (int k = 0; k < 6; k++) { // There are 6 flag sets per 2 minutes
// TODO: Modify if all four channels are to be reported separately
- if (a1 & bitmask) { A->AddEvent(ti+60000, 0); } // Grouped by F&P as A
- if (a2 & bitmask) { A->AddEvent(ti+60000, 0); } // Grouped by F&P as A
+ if (a1 & bitmask) { OA->AddEvent(ti+60000, 0); } // Grouped by F&P as A
+ if (a2 & bitmask) { CA->AddEvent(ti+60000, 0); } // Grouped by F&P as A
if (a3 & bitmask) { H->AddEvent(ti+60000, 0); } // Grouped by F&P as H
if (a4 & bitmask) { H->AddEvent(ti+60000, 0); } // Grouped by F&P as H
if (a5 & bitmask) { FL->AddEvent(ti+60000, 0); }
diff --git a/oscar/SleepLib/loader_plugins/sleepstyle_loader.h b/oscar/SleepLib/loader_plugins/sleepstyle_loader.h
index 68615bae..e0c6f33c 100644
--- a/oscar/SleepLib/loader_plugins/sleepstyle_loader.h
+++ b/oscar/SleepLib/loader_plugins/sleepstyle_loader.h
@@ -21,7 +21,7 @@
//********************************************************************************************
// Please INCREMENT the following value when making changes to this loaders implementation.
//
-const int sleepstyle_data_version = 1;
+const int sleepstyle_data_version = 2;
//
//********************************************************************************************