EEG Advancement
I’m very excited to announce that the Android version of the Lucid Dreaming App will work with Zeo wireless ElectroEncephaloGram (EEG) headband for sleep phase tracking. This enables the app to monitor your brainwaves with the EEG headband and make very accurate predictions about when you are dreaming and not.

Image courtesy of shinyTV http://www.shinyshiny.tv/2011/09/how-to-get-a-better-nights-sleep-zeo-manager.html
Why this is significant
I could not dream about having access to EEG data on a mobile device 5 years ago. Now it is a reality. Up to date, most dreaming masks relied on EOG – ElectroOculoGram to measure the movements of the eyes to detect REM. This technology required precise positioning of the mask to be able to detect REM. Zeo’s headband monitors brainwaves directly and scores them as sleep, wake , deep sleep or REM sleep. Once this information is available to a cell phone app, the possibilites are very broad. For the first update, I will simply add Zeo as a source of data and let the app work the same.
-
Requires no calibration
-
Provides sleep statistics
-
Customizable light, vibration and audio reminders when REM is detected
To use the Zeo Wireless headband, you will need:![]()
- Zeo Wireless headband from Amazon.com
- Zeo Sleep Manager App from the Android Market
- Charge up the headband for 3 hours before first use
- follow instructions in the Zeo Sleep manager app to pair the headband with the Android phone
- When the headband is paired and working, you will see a headband on head icon in the status bar
- The Zeo Sleep Manager will say “Now tracking, you can go to sleep”
- Hold down the Home key to switch between recent apps
- Select the “Lucid Dreaming App” – it must be on top and active to deliver reminders
- To configure the app to work with Zeo:
- Open the menu within the Lucid Dreaming App using the menu button on your Android phone
- Tap on “Preferences“
- Tap on “REM prediction preferences”
- Tap on “Select Smart Timer configuration file”
- Pick your configuration file from the list provided
- Now you can edit the Smart timer events.
- Tap on the event you want to use with the Zeo Headband
- Ensure the event is active
- Scroll down to see the “Use Zeo Headband” checkbox
- Make sure the checkbox is checked
- Commit the changes you made to the event
- Repeat to configure other events
- The clock screen must be on top to process Zeo Events
If you consider buying a Zeo headband for use with the lucid dreaming app, please consider using the link below. I collect affiliate marketing revenue for sales made through Amazon.com.


Pingback: Singularity Experience, a professional iPhone app for Lucid Dreamers
Woooow!! Dude, are we getting this for the iphone app as well? This definately rocks man!!
Right now there’s only an API for the Android version – Android lets applications share data, while on iPhone each app plays in its own “Sandbox”. It might take some time for the iPhone version of the API to get released… Unless Zeo is willing to let other apps pair with their headband and use it as they see fit.
v0.8 is not available for download from the android market! When will it be available?
I will be testing the app the weekend of Feb-19. If it works, I will release the update asap!
Pingback: Singularity Experience, a professional iPhone app for Lucid Dreamers
Hello, I just bought the zeo alarm clock is there any way to use the sleep data with your app?
Thank you
You may try to download the Zeo sleep manager and see if it recognizes the alarm clock’s headband. I’ve never seen any mention of the alarm clock headband being able to interact with the mobile tracker though.
After I few tests, it seems it’s not working^^ Thanks for your quick answer.
I am excited about this release… I am ready to start experimenting but I need a little more info. Can you explain how the ZEO’s EEG input alters the operation of your app? I’d like to ignore motion detection and just use ZEOs EEG data to trigger reminders / alarms.
Questions:
1. Is it possible to have a single event period that is active for 4 or 5 hours and triggers a reminder every time ZEOs REM data is detected?
2. Does the ZEOs trigger only a single reminder during an event period?
Using Zeo makes the app ignore regular motion detection during those time intervals. There’s only one reminder per REM episode. With Zeo it would be easy to estimate when your REM is.
I will add a simple interface to use Zeo’s REM after 4 hours of sleep. ETA for this update is unknown, I’m swamped with work :/
Fantastic!
Just to be 100% clear. The DILD setting in “When to play reminder” is now triggered by ZEOs REM data. Is this correct?
Is the dream recall option in “When to play reminder” triggered by ZEO’s data?
I too am a lucid dreamer and very interested in your work on this app. At some time in the future I might like to discuss some type of collaboration?
Zeo sleep data is used for all events.
At event start = light sleep turning into 10 minutes of REM
After movement = 10 minutes of REM, followed by awakening episode
At event end = 10 minutes of REM, going back to light sleep
Collaboration would be good, I have too many projects hanging about. Send and email to bug report or info, and I’ll reply
Congratulations!!! I’m a huge fan of your app, thanks a lot for the effort and for sharing. We are proud for this succeed. It seems like I need a Zeo now ^^ congrats and greetings from Mexico
I just got the ZEO headband, and I would like to see some sort of simple “quick start” functionality with the app. With a new baby in the house, I don’t have any kind of predictable sleep cycle to edit or use with the app. I would love to load a mode where it just ignores any of the smart timers or event configurations, and simply either plays a sound or flashes a notification (or both) ANYTIME the ZEO headband detects 10 minutes of REM sleep.
Good idea. I’ll see if I can make a quick app like that at one point in the future
I bought the Zeo headband and checkmarked all the REM events to work with the headband. It seems like my DILD reminders never ring. Even before the headband, my DILD reminders (on movement) never ever ring. I don’t understand why. I have my REM activity threshhold set on 11 units, because I think thats what the default is. I need help, I feel like I’m doing someting wrong. I’ve had the app since May 2011 and I believe only 1 time my DILD reminder rang around July 2011.
tl;dr My DILD reminders never go off ever.
Never used this app… well not yet..
I just got my Zeo headband, and configured four WILD events and checked the checkbox for them to work with headband. In the morning I figured out that all my timers went off right at their start time, completely ignoring all headband data (all four times I was in either deep or light sleep, far from my REM). Alexander, as you had written above, WILD timers should go off after light sleep turning to REM. Am I doing somethig wrong or is it a bug in your app?
Anyone else tried the app with Zeo?
Please help.
Dmitry,
Zeo headband works with smart timer events. WILD timer is intended for short term (4,8,12 minute timers that would go off at their exact times to keep you awake as you are trying to induce WILD). Please configure the app with the Smart Timer events, and report back.
Sorry for leaving the Zeo option available for the WILD timers, it does not work with them.
Ok, maybe I didn’t make myself clear.
I created four smart timer events, scheduled to trigger at event start (WILD, WBTB). As you said above to Kevin, it means that timer will trigger after “At event start = light sleep turning into 10 minutes of REM” . As I understand that means that as soon as your app detects Zeo event going from light sleep to REM, and the REM phase lasts for ten minutes the timer immediately will go off. Well, if I got it right, this doesnt work, because all timers went off on the period start, even if I wasnt even close to REM.
tl;dr
I don’t remember exact numbers, but let’s say first event started after 3 hours of my sleep, and lasted for 30 minutes. Timer went off right after 3 hours since me falling asleep, despite, according to Zeo, I was in the middle of my deep sleep. Am I doing something wrong? I started Zeo, paired my headband, put it on, switched to your app, started it and went to sleep.
Because it would be nice to wake up at REM start to try entering back to dream using WILD, while your braint chemistry had already been set up for dreaming. That’s the point.
BTW I have couple ideas about your “inception” project i.e. complete idiot proof solution to include audio cues right in the dream. It can be an ultimate LD inducing device. If you are interested, I can drop you an e-mail with more details.
I used your app with zeo for some time, but I find limiting the constraint of 10 minutes of REM sleep after the ligh one in order to start the reminder. In fact my sleep cycles are fairly regular, so I can locate the beginning of the period of REM with a margin of half an hour, but my rem phase length is quite short, so I want to use it fully. It would be a good thing if it were possible to set the lenght of time (eg. 0.5, 1, 2, 3… minutes) REM takes the reminder, rather than fix it in 10 minutes.
Hi Alexander, can you confirm that when used with the Zeo headset your app modifies the reminders so that they can be timed relative to REM episodes detected by the Zeo? Or does your app simply record what the Zeo is sensing so that you can more accurately place the reminders that are otherwise triggered by movement and sound?
I’m interested in buying the Zeo mobile, but want to understand how your app integrates the data first.
Thanks.
If you configure your REM detection windows, and check the “use Zeo” checkmark, the app will be monitoring the Zeo’s 5 minute sleep stage status to decide when to play reminders. I believe it will advance the episodes, so their spacing still matters. One of these days I will publish a plain Zeo app. But it might take a while.
I bought the Zeo mobile headband. It’s a very neat unit!
I’ve used it on it’s own a few times and with your App.
One thing I have noticed is that on it’s own it works fine, but when your app is running it tends to drop out and have gaps in the Zeo graph.
I am suspicious that the phone gets so warm. Can it really be because it is having to work hard? That surprises me. Is there in fact a problem that causes more power dissipation than there should be?
Anyway, there are a number of things that also don’t seem to work quite right, but then maybe it’s just me not quite setting it up correctly.
Are you going to be able to get back to developping this app?
I would be happy to do some testing and give you feedback if you are.
I would certainly start charging for the app. there are a lot of people who would pay for it, even if it’s only a nominal fee – better than nothing!
Would it be possible to request Arduino event support. i.e. a bluetooth linked arduino to flash led’s in a sleep mask to give light stimulus for stage lucid cue.
I am about to buy a Zeo Mobile Sleep manager for my Android phone, but there is more than one model number available. There is the ZOEMBL1, which is the unit you are linked to on Amazon, but there is also the ZEO301 Mobile Sleep Manager, which seems to be much easier to find and more affordable. Will the ZEO301 work with your app?
One more question. Some of the ZEO301 packaging and descriptions say they are for iphone and makes no mention of android and some ZEO301 packaging mentiones both iphone and android on the box. Will any ZEO301 work, whether it mentions android or not?
Thanks!
I’m not familiar with the other model. I got the one that I linked on the site, and it works.
Hi there!
I’ve a question: when using zeo headband to detect rem episodes, does the time rem window that I configure still matter ? What it does ?
I configure a smart timer that starts a +3 and lasts 1 hour. Does the app looks at zeo rem status only during that time window? That would suggest me to set 4-5 timers each one of 1 hour lenght like +2.30, + 4.00 + 5.30, +7.00.
You are correct, the timing still matters.
I put in Zeo headband pretty quickly, and used existing interface to use it for reminder delivery. This is why it is still clunky. Setting 4-5 reminders is the correct approach.
I used the application a couple of times and I definitively say it doesn’t work with zeo. As Dmitry says in precedent post, events trigger very far from the REM phases, during light sleep or when I was asleep! Zeo chart and raw data comfirmed that the events triggered in the wrong moments. I listened to some friends and they confirmed that the application doesn’t work with zeo
So I’m starting with a Zeo (just reviewed one on my blog) and was looking to see if there was a lucid dreaming app that went with it. So coming from the Zeo perspective to the app, all the “event” stuff is a little confusing. If I want the Zeo to take over and tell the app when I’m actually dreaming so it can alert me, do I select one event? Or all of them? Would be great to just skip the event stuff if one is using the zeo head band but I’m not sure how to do this.
Thanks for all your work with this, looking forward to trying it once I can figure out how to use it! Sorry to be a bit clueless.
Hello, I used your app last night for the first time. I used it on my Android tablet along with the Zero sleep manager app.
I followed your tutorial on setting the events and recorded the message “you are dreaming, you are asleep” and looped it to play for 60 seconds during each event. The events were spaced 90 min apart throughout the night to coincide with the average sleep phase length.
Results:
The events triggered properly and in comparing the Zero data to your app data they line up well with the events falling generally before the REM cycle midway point.
There seems to be a lot of grumbling here but if the instructions are followed faithfully, they are not that complicated, this app is a valuable tool for lucid dreaming.
Nice job on this app!!
Steve.
I gave it a chance last night, These are the events I put on the app:
REM event at [03:31]
duration: 60 min; [Active]
Sound:/mnt/sdcard/Recordings/zeo.mp3
No vibration
No light
At event start (WILD, WBTB)
REM event at [04:32]
duration: 80 min; [Active]
Sound:/mnt/sdcard/Recordings/zeo.mp3
No vibration
No light
At event start (WILD, WBTB)
I had according to zeo a REM phase from 04:10 to 5:05. In effect I woke up at the end of the REM phase, so I was awake when reminder triggered, ad 5:10.
Maybe Shephen Allen can tell me what part of my configuration is wrong.
I finally found the bug: I looked directly at the file SmartTimerConfig.txt.gzip and I found the events coded like this:
“{”vibrateMessage”:”morse morse”,”reminderFilepath”:”/mnt/sdcard/Recordings/zeo.mp3”,”flashMessage”:”morse morse”,”nextEventDelayMinute”:0,”flashDotDuration”:360,”reminderSet”:true,”startMinute”:120,”duration”:59,”useStrobe”:false,”useVibrateReminder”:false,”useVoiceReminder”:true,”useZeo”:false,”vibrateDotDuration”:120,”deliveryMode”:0}”
The bug consists in the “false” value set for useZeo field. Nevertheless the app shows me the “Use Zeo Headband” checked, the config file doesn’t report that setting. I think there is a bug in updating the config file after changes (only for the useZeo value).
This bug has been reported to me by other people, i hope Alexander could correct it.
I think, but I could wrong, that the problem happens when creating a new event and setting the “use zeo” option at the same time: the correct setting is not transferred to the config file. Probably creating a new event without the “use zeo” option, saving the config, and then changing the “use zeo” option could be a good workaround.
I tryed changing manually the “usezeo” field in the smarttimerconfig.txt file but nothing seems to happen: now the app has ceased to trigger the reminder at all.
I disinstalled and reinstalled the app, deleting fisically the folder with config data, but the bug persists: the app show me the “use zeo headband” checked but the config file report usezeo:false. I give up.
I have the same bug. The reminder stop working since I used the Zeo. No reinstall was able to sort the problem.
Obviously, the developer of this cool app doesnt have time to maintain the app anymore
Hi,
just a question. Do you even care about fixing bugs? the reminder bug after using zeo headband still persists. but obviously you quit maintaining your interesting software?
hmm, so I will write my own……
If I don’t have to worry about making a living, I would continue working on my free projects. But as of right now, the lucid dreaming app for android makes nothing. There’s another app already out on the Android market which supposedly sends you cues when Zeo signals REM sleep. I suggest you check it out before putting hundreds of hours into writing our own app.
I would definitely pay for your cool APP!
And it seems that you have a Buch of followers here as well. I guess they would pay too.
Put a PayPal donation link here!
The thing is, I dont want to use Zeo all the time due to the 2.6 GHz radiation. So I would like to continue to use your app just using the reminder and the movement detection. Unfortunately, there is this bug
.
Anyway, I wish you all the best with your stuff and hope you will find some time in the future to manage your projects again