SPO2 Review and Assistant Alternative (OSX, Linux, Windows)

SPO2 Review and SPO2 Assistant are pulse and blood oxygen monitoring software for Windows platforms only. Thankfully, there is an open source alternative for Mac OSX, Ubuntu, and Windows XP/Vista/7/8/9/10. The package can also be compiled from source to work on other Linux variations.

This software is called SleepyHead [download]. It’s made by Mark Watkins and primarily designed for reviewing and exploring data produced by sleep apnea machines (CPAP).

To get started with your SPO2 Monitor on “SleepyHead”, you will first need to download the software. If you haven’t already,  you will also need Drivers for your SPO2 Monitor cable. They can be found here.

oximeterywizardAfter Installing SleepyHead and the applicable drivers, open the Oximetry Wizard from the home screen of SleepyHead.

You will be given the following information about SleepyHead’s Oximetry Importing.

Welcome to the Oximeter Import Wizard

Pulse Oximeters are medical devices used to measure blood oxygen saturation. During extended Apnea events and abnormal breathing patterns, blood oxygen saturation levels can drop significantly, and can indicate issues that need medical attention.

SleepyHead gives you the ability to track Oximetry data alongside CPAP session data, which can give valuable insight into the effectiveness of CPAP treatment. It will also work standalone with your Pulse Oximeter, allowing you to store, track and review your recorded data.

SleepyHead is currently compatible with Contec CMS50D+, CMS50E, CMS50F and CMS50I serial oximeters.
(Note: Direct importing from bluetooth models is probaby not possible yet)

You may wish to note, other companies, such as Pulox, simply rebadge Contec CMS50’s under new names, such as the Pulox PO-200, PO-300, PO-400. These should also work.

It also can read from ChoiceMMed MD300W1 oximeter .dat files.

Please remember: If you are trying to sync oximetery and CPAP data, please make sure you imported your CPAP sessions first before proceeding!

Important Notes: For SleepyHead to be able to locate and read directly from your Oximeter device, you need to ensure the correct device drivers (eg. USB to Serial UART) have been installed on your computer. For more information about this, click here*.

Contec CMS50D+ devices do not have an internal clock, and do not record a starting time. If you do not have a CPAP session to link a recording to, you will have to enter the start time manually after the import process is completed.

Even for devices with an internal clock, it is still recommended to get into the habit of starting oximeter records at the same time as CPAP sessions, because CPAP internal clocks tend to drift over time, and not all can be reset easily.

After continuing from the information page, you can select how you would like to collect the data. If you import the data directly from the on-device recording, you will get the SPO2 and Heart Rate data. If you are able to record the data while attached, you can also get the plethysmograph of individual heart beats.

oximeter-import-wizard

Importing:

First, make sure you have the proper drivers installed (referenced above). The software will then automatically connect to your oximeter and wait for data. You need to turn the oximeter on and enter the menu screen. You may need to turn recording off for the upload to begin. Be sure the software displays the message below before turning recording off or you may loose data!

Scanning for compatible oximeters

Connecting to Oximeter

You need to tell your oximeter to begin sending data to the computer.

Please connect your oximeter, enter it’s menu and select upload to commence data transfer…

Once the import completes, select the time your recording started (when you first turned on the oximeter device for the last session). Save and Finish and you can begin to review your data under the “Daily” tab of SleepyHead. Unfortunately, with the import wizard, you will only get SPO2 and Pulse Rate. No plethysmogram.

Live Recording:

With your SPO2 monitor all hooked up and ready to go (drivers installed). Click “Record attached to computer overnight”. You will then get a real-time graph of your heart rate (plethysmogram).

spo2-live-recording

After you end recording, you can get the full details and browsable history of your Plethysmogram, SPO2, and Heart Rate:

pulse-rate-spo2-plethy

Questions and Comments Below! Happy Data Collecting!

13 thoughts on “SPO2 Review and Assistant Alternative (OSX, Linux, Windows)”

  1. Hello,
    Do you have anything available for the Contec CMS50-K? We were getting sleep reports with the attached finger probe but they have stopped. I am trying to get oxygen and heart rate info as my husband is having seizures without movement and I am trying to find a way to get data while he is in an EEG lab next week so I might be able to find some link between oxygen levels heart rate etc and the recorded seizures so we can fine tune his medicines. If the CMS50-K doesn’t work with sleepyhead etc – what would be your recommendation for a different oximetry device?
    Thank you!
    Sharie

    Reply
  2. Despite installing SleepyHead and the Silicon Lab USB serial lab software on my iMac (macOS mHigh Sierra Ver 10.13.5) and still unable to get SleeppyHead’s wizard to find my wrist pulse oximeter (CMSF50). Any additional tips thoughts or work arounds would be much appreciated.
    Thanks

    Reply
  3. I have been trying to get Sleepyhead/SiLabsUSBDriver to import my CMS50+ data on my MacBook Pro (10.11.6) to no avail. I think the connection is functioning but there is no way on the CMS50+ to start the transfer–at least I haven’t found it– and it doesn’t start by itself.

    Sleepyhead:
    Scanning for compatible oximeters
    Connecting to Oximeter
    You need to tell your oximeter to begin sending data to the computer.
    Please connect your oximeter, enter it’s menu and select upload to commence data transfer… <>

    Terminal:
    me$ ls /dev/tty.*
    /dev/tty.Bluetooth-Incoming-Port /dev/tty.SLAB_USBtoUART
    me$ ls /dev/cu.*
    /dev/cu.Bluetooth-Incoming-Port /dev/cu.SLAB_USBtoUART

    Reply
  4. I am also unable to get the device to mount. Using CMS50D+ and it doesn’t mount in Macbook Air, running El Capitan 10.11.6 and Parallels. When I plug in the oximeter, ls /dev/tty.* and /dev/cu.* give the same results.
    /dev/tty.Bluetooth-Incoming-Port /dev/tty.KimsiPad-WirelessiAP /dev/tty.inReach62418050-SerialP
    /dev/tty.KimsMacBookAir-Bluetoot /dev/tty.SCSDRAGON7400-SerialPort
    I also get the following error in syslog:
    8/6/18 10:25:19.000 AM kernel[0]: 208397.755110 HS02@14200000: AppleUSB20XHCIPort::resetAndCreateDevice: failed to create device, disabling port

    Any help??

    Reply
  5. Please help me! I have the CMS50D+ and have downloaded from disk SP)2 Assistant and Sleepyhead software. I can get the Assistant to work but cannot get data to Sleepyhead no matter what I try. I will not connect at all. There is no menu option to upload data on it that I can find. Also it will not find/open the files once saved! Please help! Thank you so very much!

    Reply
      • I have a v 4.6 that I cannot get Sleepyhead to recognize (via ubuntu 18.04). The cable driver appears correct, and the unit runs under Windows 10 with the official SpO2 Assistant…

        Reply
        • I was having a difficult time getting my ComtecCMS50D+ to be recognized by SleepyHead on both my Mac and PC. I’ve been working at this for several hours. I finally installed SP02 Assistant and the other 2. Only the Assistant recognized it, so I knew I had the driver at least. I had rebooted a couple of times. Still, SleepyHead would not recognize it. The “Never give up” troubleshooter in me decided to set the oximeter to the first choice of CMS50F, which mine isn’t, and voila, it detected it and downloaded the recorded file. I then went back to my Mac and chose the first item there as well and again, it showed up. The CMS50F is a wristwatch model. That’s not what I have, but it read it. If you haven’t tried one of the other devices, and you still are not seeing it, try a device that isn’t yours and see if it works.

          Reply
    • In SleepyHead, where you have the dropdown to choose your device when you run the wizard, choose the first or last option. Mine is a CMS50D+ as well, but I had to choose CMS50F and it worked.

      Reply
  6. Is it possible to save the data on the computer and analyze them with other softwares or can I only use this software?

    Reply
  7. Am I right that (per small note on the main driver download page) the linux drivers are now included in the kernel; no need for driver installation going forward?

    Reply

Leave a Comment