It’s on my to-do list

I constantly have new ideas for this site and I’m starting to get worried I will forget them. As such I am starting this blog post and I will add to it as a think of new features to add. I will strike them through as I complete them. Please let me know of any items I should consider adding.

  1. Basic chatroom where users can view eachother’s brainwaves and sleep data
  2. REM alarm
  3. Multiple-user REM alarm
  4. “I’m awake!” button to override Zeo’s sleepstage decision
  5. Ability to add comments to a sleep record during the night
  6. Ability to add a Summary of a record (possible dream journal usage?)
  7. Fix the problem with signing-out users before they wake up (aka longer session timeouts)
  8. Add a redirect to a maintenance page for use when updating the site
  9. Make the site more modular so individual aspects can be updated separately (ongoing)
  10. Remodel databases and implement simple FFT compression to allow storing of the waveform data & more accurate frequency data
  11. Fix autocomplete issue with login on Firefox
  12. Allow sign-in form submission with enter key instead of button
  13. Convert login to use more secure openID instead of homemade system
  14. Change from flash to HTML5
Posted in Goals, Status | 9 Comments

Tech Fails and Administrative Successes

I have been working with Zeo for a while now to get a blog post up on their site. Yesterday was the day that blog post was to go live…

Tech Fails

I had noticed that the last couple times I’ve used the site, the session times out and logs me out before I wake up in the morning. I attempted to fix it this morning (still working on a fix). Attempting this fix on the same day the site was to go truly public, was a bad idea to say the least.

What followed was a series of errors, crashes, and completely nonsensical mess ups on several of the website’s systems. Don’t worry, none of the data was messed up and all of the site’s content remained intact. The problems were mostly aesthetic and login oriented.

I wound up having to skip a couple classes to fix all the errors before the site went live. After several hours of furious coding, it is back up and better than ever!

After this issue, I may want to consider creating a “site undergoing maintenance” page to put up when I’m trying to fix things…

Administrative Successes

I have made several great strides on the administrative side of the site.

  1. The blog post on Zeo’s site. I’ve decided the site is at a point where I feel comfortable advertising it to the world!
  2. There is now a donate button on the bottom of the page. I want to try my best to keep this site free and up to date. Your contributions will help!
  3. Speaking of keeping the site free, Zeo has agreed to sponsor the site by covering server costs and helping to get me some shiny new development tools.
  4. Finally, I have entered into an affiliation program with Zeo. So if you are considering buying a Zeo, please buy through the links on this website to support Sleep Stream Online. Such as the one at the bottom of the page.

This site has certainly kept me busy, but I definitely think it was worth it!

Side note: Don’t worry, although I’ve been caught up with classes and administrative stuff I have been brainstorming how a multiple-user chat/brainwave interface would work. I like to map out how an idea would work before beginning implementation. More features ARE in the works!

Posted in Status | Comments Off

Back in a flash!

Hi everyone!

Instead of doing my DSP (Digital Signals Processing) homework, I took the day to revamp the site a bit. Don’t worry, I’ll get the homework done tomorrow.

I was having some issues, especially in chrome, where the javascript constantly refreshing the images caused issues with the browser. It would either slow down the site’s responsiveness or actually crash the browser. My solution: use flash. At first I found flash quite counter-intuitive compared to the more raw text-based programming languages I’ve grown accustomed to. After playing around with it for a bit though, I can see the potential. I have created a small viewer swf file using actionscript 3.

I’ll be running a test tonight viewing data in Firefox, Chrome, and IE. Hope fully it will work! I will certainly update this post once I know if it will work.

There are two very cool side-effects of this update:

1. The graphs update a bit cleaner since flash can load the image and wait to switch what is displayed until it is fully loaded.

2. It is now incredibly easy to embed your viewer into any website! Of course this requires you to put your username and view password in the HTML code, but for those who don’t mind sharing the data (like myself) this is an awesome feature!

To show this, I’ve embedded a viewer of my data below. As you can see it is quite large…not even fitting into this blog form, but for now it is pretty nifty! In case you are curious, you might be able to catch my data after around 11:30pm EST on most nights.

If the test goes smoothly tonight, the next feature will be some REM alarms for lucid dreaming experiments!

EDIT: All three browsers ran smoothly all night long! This was a triumph I’m making a note here: HUGE SUCCESS

Posted in Status | Comments Off

Getting off the ground

Welcome to the Sleep Stream Online Blog!

This is the official blog for the world’s first sleep streaming website. You can stream, record, and share data from your Zeo using this website and the Raw Data Library I created as an intern for Zeo. It is also a long-term goal to support inter-dream communication using REM and eye movement detection.

The reason for this blog is two fold.

-The first and immediately useful function is to help me catalog what I’ve done so far and track my own progress. It is so easy to forget where a project started.

-The second reason directly follows the first. Once a user base is started, the blog will serve as the place to find out about all new updates to the site. This is especially crucial while the site is still in a development stage. I want users to know what is new, what has been changed, and why. It’ll also be a great way to get an idea from comments what users want without relying on emails.

That being said why don’t we go ahead and put up an initial status:
The site is currently written entirely in php and html, using a mysql database to stream and store all of the data. It uses a small python script that uses pyserial and the RDL to stream the data over HTTP. Currently a single 8-9hr night takes up about 1.5mb worth of data. The site supports streaming/viewing your own data, recording sessions of data, and giving a read-only view password to others to allow them to view your stream/past data.

So far there have been some web browser compatibility issues, notably with IE, but I believe they have been resolved. I am also unhappy with the javascript code that refreshes the graphs at 4hz. Currently I am leaning towards reimplementing viewing in pure Flash, but I want to tackle some more basic functionality before a full revamp of the site.

Current plan and goals:
*Initialize a REM alarm for a single user with some basic settings (such as how long you have to be in REM)
*Initialize REM alarm for multiple users
-at the same time as this I need to get multiple user viewing capabilities working
*Add a “I’m awake button” to override Zeo’s decision if you wake up
*Add some more features to the Dream Sharing section
*Update the site’s style/art

Posted in Goals, Introduction, Status | 1 Comment