Zeo shutting down: export your data!

Does anyone know if it’s possible to replace headband battery? I only have one left, unfortunately, so when its battery degrades I will be out of luck. I guess I’ll find out the hard way then by taking the thing apart, nothing to lose :slight_smile:

Hi woodinblack,

Thank you for offering to share your app with the community. Any thoughts on making it open source so others can build on your efforts?

I think the weekly ZEO plots were more insightful than the daily sleep plots. Even so it was hard to get a clear picture on drivers of sleep quality. I think it may take more specific information and a better display of data to see the connections. For example:

  • Rx and coffee may need a specific time consumed instead of that day or evening.
  • The absorption rate and decay rate in the body of the Rx and its byproducts.
  • Too much ZEO “time to sleep” can indicate insomnia (or too much coffee)
  • Too little time to sleep can indicate sleep deprivation.

I am looking at Heart Rate combined with ZEO data (see ZEO HR Overlay.pdf).

There is also research on Heart Rate Variability and Breathing (Cardiopulmonary Coupling) as a measure of sleep quality:

http://www.sleepimage.com/index.cfm/id/67/What-is-SleepImage/

Hi OP Engr,

This is the kind of stuff I an looking for in the discussion thread in APP and Tools section of the forum. If you have any ideas please feel free to post them there also. As I read everyone’s post I plan on looking for things like this to add to my discussion.


Has anyone tried using MyFitnessCompanion to record data from their Bluetooth biomonitors. I use it because it can take single entries that I can type in and it can do a continuous 5sec and up polling feed from your Bluetooth device if it is supported. I am talking with the guy who made the app and he is about come out with a revamped version of it. He needs beta testers and feedback. It can link to a couple app websites through APIs and it can upload to Microsoft HealthVault. It can export the data in a csv text file also and along with that it can monitor multiple devices at once.

I’m about to purchase my first Zeo Mobile Pro+ to use with my Android smartphone.

I’d like to ensure it was not one of the first built (as it might have H/W bugs that were ironed out in the final builds). I have no idea if it has been sitting around for in the shop before I go to buy it. Can somebody who recently purchased a Zeo (direct from the mfg before they shut up shop) give me an idea what serial number (or range +/-say 10) they have ?

@woodinblack:
I have also been kick-starting the prototyping of such an application from my side and provided some insights on this page:
http://www.scanx.org/fredqs/main/sleepgatheringprocess.html
It is just a prototype so far, but could be worth exchanging some ideas.

@OP_Engr:
Which application did you use for combining Heart Rate and ZEO data on the same graph?
A bit off-topic here (we can continue by PM), but I am also very interested by this issue, what is your setting for monitoring your HR at night? (by the way, the Zephyr BioHarness 3 mentioned by MichaelDKester in another thread seems an excellent candidate for combining Zeo data with breathing rhythms as well).

Otherwise, about research on Heart Rate Variability:
1/ I was also wondering if the algorithm used by sleepimage for computing cardiopulmonary coupling frequencies was somehow supported by the software Kubios (would be interesting to figure this out, and if only HR data is used as input of such an algorithm or if the actigraphy recorded by the sleepimage device would be required as well). You could also check how your HR data can be imported in the software.
Kubios HRV website: http://kubios.uef.fi/KubiosHRV/

2/ Related to this topic, I am surprised that nobody on this forum has mentioned “beddit” so far. Indeed, I have not really figured out when this product could be available, but it seems promising. It relies on a non intrusive set of sensors simply tied around your mattress, and “the sleep staging is carried out by an algorithm that utilizes heart rate variation, respiratory variation and activity information” for computing and displaying in a user-friendly way the following information: sleep staging (wake, light/REM/deep sleep), stress reactions (based on heart rate variability), heart rate curve and average heart rate, and “restlessness index”.
Check out their website: http://www.beddit.com
I also recommend a very nice article presenting the whole approach in detail (“Unobtrusive Online Monitoring of Sleep at Home”, J. Paalasmaa, M. Waris, H. Toivonen, L. Leppakorpi, and M. Partinen, 2012).

Hi Frederic,

These are all topics that I plan on hitting at some point in my thread. Thank you for further information that I can use and for others as well. I plan on referencing this post in my Zeo marketability thread. Slowly, but surely I plan of filling it out. So far it seems more like a monologue than a discussion, but I have hopes that as it fills out it will be come a springboard for similar discussions on other devices, apps, websites, and software we use.

I used the ZEODatadecoder to process the raw unencrypted ZEO data into XML format, copied out the base hypnogram data, imported that into Excel, transposed into column data, sorted the sleep states into individual columns (changing the value to make it easier to plot), created a chart with each column a different data series and color (secondary Y axis), set 5% gap between columns, hid secondary axis text, collected HR data using Garmin FR60 & heart rate strap (I am still working out the bugs with this approach, so not recommended at this time), exported from Garmin connect as CSV, imported into excel, plotted on primary Y axis.

Zephyr BioHarness is interesting but expensive.

I am looking at plotting some measure of HRV data along with the ZEO data. At this point I am using Kubios to do the processing. It is cumbersome since Kubios limits the data size to less than 30 min.

The sleepimage 3D plots look like a MatLab output. I believe you can compile the Matlab routine as a stand alone application when you get it working the way you want it to.

Thank you for the Beddit link.

Enjoy

Hi sershe,

I have been wondering the same thing. I hope you will take some pictures and share insights on opening it up. If mine goes first I will do the same. I don’t see a specific battery measurement in the resulting ZEO Bedside XML data file. It will probably show up as reduced RSSI values and/or a decline during the night when compared to what you are seeing now.

Using all the data streams available from the Zeo (raw, filtered etc), how difficult would it be to identify an arousal that lasts for only say 5 to 20 seconds, i.e. less than the 30 second default reporting period used by the Zeo? I’d like to correlate artifacts in my breathing with arousals.

These artifacts aren’t necessarily classified as central or obstructive apneas but RERAs (Respiratory Effort Relates Arousals) and can only properly be identified when associated with a definitive arousal event.

An arousal by definition in sleep medicine is :

an abrupt shift of EEG frequency during sleep, including alpha, beta, theta and/or higher frequencies for > 3 seconds and preceded by at least 10 seconds of sleep. Arousals can occur during NREM and REM sleep

So do we have access to the filtered data prior to it being averaged, or do we only have access to the raw data (@128Hz) and the filtered+averaged data at 30 second intervals?

After reading this post, specifically I need access to the sleep phase that Zeo calculates every two seconds. Is that accessible in the non encrypted data downloadable from the Zeo ?!?

Hi wire_weaver,

The “Zeo Data Decoder Documentation.doc” file specifies 30 sec intervals for the base_hypnogram and 5 min intervals for the display_hypnogram. I think you would need to process the raw data for shorter time intervals.

There is a strong connection between heart rate and breathing. Have you considered monitoring heart rate or heart Rate variability (HRV). My Garmin band outputs heart pulses at what appears to be 1 msec resolution which is sufficient for HRV. Also the downloaded Garnmin heart rate is at 5 second intervals. It doesn’t work for HRV, but it is easy to detect a 10% change in heart rate over a 5 sec interval as an indication of something going on. The bad news is problems getting consistent measurement during sleep from Garmin.

Interesting reading on the Zeo blog about what they were doing behind the scenes to give us sleep results. They pointed out that combining multiple data sources gave better results than Zeo alone.

Hope this helps.

[quote=“OP_Engr, post:111, topic:561”]
The “Zeo Data Decoder Documentation.doc” file specifies 30 sec intervals for the base_hypnogram and 5 min intervals for the display_hypnogram. I think you would need to process the raw data for shorter time intervals.[/quote]

I suspect I will have to. I’m an electrical engineer+programmer with plenty of experience in S/W filtering routines - but the catch is I’m very short on spare time !!

I already monitor HR with an Oximeter connected to either an ApneaLink or a Flow Generator, and yes I certainly notice a strong correlation between respiratory events and HR increases. The problem is that I don’t know if I arouse at those points in time or not. Arousals in SDB are not remembered by the sufferer and constitute brief transitions between sleep stages and not necessarily to fully awake. My PSG scored a majority of RERAs and I want to replicate these measurements without a clinical take-home EEG (like an Embletta for example).

I am using these measurement techniques to evaluate the effectiveness of various treatments I am trying out for my SDB. A ‘general’ decrease in daytime symptoms is too non specific a metric for me and no commercial Flow Generator can accurately score RERAs, so I am after an EEG signal to score RERAs myself.

I am so happy to find these. I’ve been procrastinating on the firmware upgrade, and of course, now Zeo’s website is gone. Thanks for posting them!

Hi wire_weaver,

I am overlaying my heart rate with ZEO data (30 sec base hypnogram) and noticing many heart rate spikes do not match an awake condition in the ZEO base hypnogram. From reading the blog link you provided it appears that one 30 sec increment of awake makes the entire 5 min segment (for the display hypnogram) register as awake. I am not sure if the same rules apply to the 30 sec increment based on the 2 second sleep state calculations.

I am still looking at heart rate variability during sleep as an indicator. Multiple challenges collecting and processing that data at this time.

Good luck

[quote=“OP_Engr, post:114, topic:561”]
I am overlaying my heart rate with ZEO data (30 sec base hypnogram) and noticing many heart rate spikes do not match an awake condition in the ZEO base hypnogram. From reading the blog link you provided it appears that one 30 sec increment of awake makes the entire 5 min segment (for the display hypnogram) register as awake. I am not sure if the same rules apply to the 30 sec increment based on the 2 second sleep state calculations.[/quote]

Hello OP Engr and Wire Weaver,

It looks like they are saying one reported 30 sec interval of wake scores the entire 5 minutes as wake, but to be reported as a 30 sec interval of wake, Zeo must see at least 1.5 minutes of actual awake?

From the last paragraph of the linked blog, “As you can see, both sleep and sleep scoring is more nuanced. Depending on the exact situation, a 1.5 minute awakening could be reported perfectly, strangely (a bit of Wake here and there in the 30 second sleep graph), or not at all. As such, the rule of thumb is that it generally takes two minutes of Wake to be noticed, though we may sometimes report awakenings that are a bit shorter than 2 minutes.”

You may want to visit maxdarkside @ cpaptalk.com who has this blog: http://wiredapneic.blogspot.com/ for other ideas on sleep data collection.

Jay

[quote=“OP_Engr, post:114, topic:561”]
I am still looking at heart rate variability during sleep as an indicator. Multiple challenges collecting and processing that data at this time.[/quote]

OP Engr, what are you trying to identify or correlate with your HRV ? Have others done this too ?

BTW I bought my Zeo today. Last one in the shop ! Get 'em while they’re hot.


[quote=“Jay_Aitchsee, post:115, topic:561”]
You may want to visit maxdarkside @ cpaptalk.com who has this blog: http://wiredapneic.blogspot.com/ for other ideas on sleep data collection.[/quote]

Thanks Jay. Interesting blog. In another 5+ years that could have nearly been me, thankfully I was diagnosed recently with SDB before it got that bad. I used to get Atrial Fibrillation due to my SDB (there is a clinical correlation with SDB and AF) along with many other things that I’ll write about one day. I read that maxdarkside went in to Ventricular Fibrillation one day before being diagnosed with SDB. That is scary.

The native/default scoring done by Zeo is not over a short enough time base to correlate with changes in HR. You really need either the raw data or the 2 second averages of sleep state. maxdarkside is using the 128Hz raw data in his plots which is fine if you know how to interpret the data !! The time consuming thing is that one must know how to interpret it in order to create this 2sec sleep state data. Not enough hours in the day I tell you !

One of my dogs is snoring so I have to go and stretch out his neck as his nose is tucked into his chest.

[quote=“wire_weaver, post:116, topic:561”]
The native/default scoring done by Zeo is not over a short enough time base to correlate with changes in HR. You really need either the raw data or the 2 second averages of sleep state. maxdarkside is using the 128Hz raw data in his plots which is fine if you know how to interpret the data !! The time consuming thing is that one must know how to interpret it in order to create this 2sec sleep state data…[/quote]

Wire Weaver,
Unfortunately, I haven’t come across a way to extract the 2 second data. Perhaps you might find this paper useful (I’ve only access to the abstract).
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=1617036
“Detection of Arousals in Patients with Respiratory Sleep Disorders Using a Single Channel EEG”
Jay

Hi wire_weaver,

Several articles describe different levels of heart rate variations during different stages of sleep. I use the ZEO to identify the sleep stages. The two challenges I see are:

  1. Can I measure HRV on myself during sleep.
  2. Can I use the results to inform my decisions about my health choices.

ZEO Bedside or mobile?

@Jay. Thanks for a link to that paper. even though it was written well before the Zeo emerged it would undoubtedly be an informative read.
The process of converting the raw EEG data into a sleep state is well understood and documented, I just haven’t read up on the finer details with a view to implementing the filtering and algorithms. It comes down to not enough spare time right now. If I can’t find somebody else in the public domain who has done it then it would be quicker for me to pay an ex-employee of Zeo to tell me how to access this 2 second sleep state data as calculated by the Zeo and do so either in real time or have it saved to the SD card.

@OP Engr. I bought the mobile Zeo and I haven’t even had time to open it yet !! 20 years ago it would have been the first thing I did after buying it, but at my age one has less time with all the added responsibilities and competing interests plus one also has a bit more disposable income.

Just a glimpse into my busy world: this weekend after opening up my 8 year old microwave oven yet again I decided it was not worth repairing for the 5th time and a new one was on order, that took time to research brands&models again and then haggle with the salesman. I made some more yoghurt , took the dogs and kids to the leash free park, cycled with them, pulling the youngest in a bike trailer, made a few moves in my online chess games, sat in the sun, cooked dinner, fixed a sound system, signed off on a new constitution, played soccer in the front yard with my boys, changed the mercury tilt switch in a kitchen bin alarm I designed to stop my dogs getting into the bin, discovered why the old one wore out (un-suppressed arcing which calls for a snubbing cct.) etc etc.

Hi all,

I am new to this forum and I arrived here looking for info about the zeo bedside manager. I am trying to read EEG data online from the bedside manager and using an arduino to make sense of the data.

Since all the forums of zeo.com are down (and there is where I was getting info about it while I started this project), I was wondering if any one knows about

  1. getting the raw data from the zeo bedside manager (using the port at the back)
  2. how to update the firmware of the bedside manager (so that the data is not encrypted)
  3. info about the format of the data

any help would be greatly appreciated!

Many thanks!

Zeoleth,

You first need to update the firmware to write unencrypted data to the SD card and allow data collection at the port. This is done with firmware update v2.6.3R. See my previous post in this topic, for the steps to update the firmware.

After the firmware is updated, you must make up a cable to capture the real-time data from the port. See instructions here: http://www.sleepstreamonline.com/rdl/starting.html