MindPulse 1.5 Avaliable Now! Wednesday, Jan 28 2009 

Just a quick note, Apple has approved MindPulse 1.5 and it is avaliable now at the iTunes App Store.

Somewhat related, I spoke yesterday with a reporter from The Washington Post about my BodyPulse and MindPulse apps.  The article should appear next Tuesday in the (free registration required) health section.

MindPulse 1.5 Monday, Jan 26 2009 

MindPulse (my MindMachine/BrainMachine/Brainwave Entrainment App for the iPhone and iPod Touch) has been updated to version 1.5 and submitted to Apple for approval.  The approval process for updates seems to take about a week; sometimes more, occasionally less.

Version 1.5 brings the most often-requested features:

  • Volume Control
  • Fade-out of the audio at the end of a session
MindPulse 1.5

MindPulse 1.5

In addition I’ve added a few things that haven’t been specifically requested, but that I felt were in order:

  • Updated UI
  • Smoother transition in and out of the visual stimulator
  • The app keeps track of where you are in a session (how many minutes are remaining), that way if you interrupt the session, you can pick up where you left off

There were a couple of additions I had planned for this release that did not make the cut this time, the main one was the ability to run the app in “audio-only” mode, to be able to jump back and forth from the visualizer without stopping the session.  I think this would be useful when you can’t partake in the full experience (for example, at the office), but you would still like to use the audio portion of the program.  It took me a long time to come up with a design that I was satisfied with for this function, but I wasn’t able to get it working satisfactorily before my code-freeze deadline.

Another feature that hasn’t been requested directly but indirectly is the ability to accompany the binarual stimulation with music from the iPod application.  I don’t like the approach other apps have taken of adding “canned” music or sound effects to the application because I think that it’s important that the user have a connection with the audio that accompanies the beats, and the chances of selecting a handful of tracks that will have meaning to the thousands of users of this application is low.  Instead, I would like to simply allow the iPod to continue playing while MindPulse runs, this way the user can select anything they like to go along with the entrainment program.  I don’t think there is a technical (or contractual) hurdle here, but I haven’t verified this because this feature was below the others in priority up to this point.  This is definately something I’ll be looking into for the next release.

The third item I’m seriously pursuing is customization to the visualizer.  The simplest form this may take is allowing for different colors of light to be used (currently the light is pure white), perhaps connected with a particular program or user-selected.  A more complex option would be to provide images in addition to colored light, perhaps even user-supplied images.  I’m not aware of any science that indicates the benefit of using images instead of pure light, but it has been requested and I don’t see the harm in it, as long as the priority of more compelling features are respected.

A few other loose ends reguarding MindPulse.  The first is that I wanted to mention that one of the biggest factors delaying the release of this update was my struggle with the user interface, and how to incorporate the changes without mucking up the cleanliness of the original interface.  I was never satisfied even with the original, and when I started working on adding controls (specifically the volume control) everything that I came up with frustrated me.

I’m not a graphic designer, but I’m a competent user interface designer; however, sometimes you need graphic design skill to implement a user interface and it is at this point that I struggle the most.  Someday I’ll simply engage a designer who I can work with collaboratively on these issues but in the meantime I have to try and struggle through it myself when the UI demands it and this is an area where vast amounts of my time are absorbed.

After several flawed revisions I finally came upon what you see here (actually, something slightly more sophisticated but I couldn’t quite put it together in time to make my deadline, but you’ll see it in the next release).  For many reasons I would have prefered to have released this update months ago, but the design simply would not present itself, and I felt in my gut that it was better to hold off until I had something that at least I was comfortable with.

One final note and then we’ll put this topic to bed until the update is actually avaliable.  I’m playing with the idea of releasing a “Lite” version of the app for free.  Something that would provide a limited taste of the experience to those who are curious about brainwave entrainment but not quite ready to invest financially in it.  What I have in mind is one-program (most likely Alpha) app that runs for a fixed amount of time (probably three minutes), enough for you to take the thing for a spin and see what it does for you.

If you have any thoughts on this I would encourage your feedback.

An iPhone app in under an hour? Saturday, Dec 13 2008 

9:41PM – Firing up Xcode

9:56 – First build, fails

9:58 – Second build, fails

10:03 – Third build, fails

10:08 – Fourth build, success! (needed to add the audiotoolbox framework)

10:10 – Build and Run on device, runs but doesn’t work

10:25 – Runs and “works”, but update is too fast and sound is too long, I have to reboot the phone to make the hurting stop

10:33 – Shorter sound

10:38 – Tuning accelerometer sensitivity

10:42 – Sensitivity and interval are good, sound might need work but is good enough. Time to make it look like something

11:00 – We have a main screen and an icon, now for the flip side copy

11:09 – Not too bad, it took a little longer than I had expected but I had to screw around with the audio bits longer than I thought it would take.

MindPulse 1.0 Friday, Nov 14 2008 

My latest iPhone application MindPulse is available now on the iTunes App Store.

The inspiration for MindPulse came from a number of places including an article about The Brain Machine in Make Magazine, my own study and research of flicker frequency, possibly from re-reading William Grey Walter’s The Living Brain and certainly the desire to reduce the time I waste unconscious.

MindPulse main view

MindPulse main view

I took a look at a few of the existing binaural beats applications available for the iPhone but none of them included what I consider to be the basic requirements of an entrainment device: synchronized audio and visual stimulation. Worse yet, most of them add the complexity of masking the frequency controls as “fancy” program names such as “creative thought enhancer” and “quit smoking”?

So for this first release I had two requirements:

  1. Synchronized audio and visual stimulation
  2. Provide the four most interesting “modes” recognized by EEG standards

From this came the two views of MindPulse, the main “menu” (as shown above) and the flashing visual stimulator screen.

There were several technical challenges faced once I was ready to start coding the app. The first is that I was unable to find any built-in support for audio synthesis on the phone; this was surprise. For awhile I noodled on the idea of writing a custom synthesis module but eventually I realized this was unnecessary for the application (at least, for this release) so I opted to synthesize the necessary tones using my computer and sample these sounds to include in the application. This has the added benefit of reducing power consumption on playback which is important as I suspend “sleep mode” on the device while we’re running.

The next challenge was getting the visual stimulation to work exactly how I wanted. In the end I had to comprimise on one aspect (controlling the brightness), but overall I was able to get what I wanted working.

So far the application has done well and most encouragingly the feature requests i have received have been items that I’ve already had on the list for future releases. I’m planning at least one update before the end of the year and perhaps two depending on how long it takes to get the features I feel are critical working to my satisfaction.

I’m also considering a “lite” version I’m calling “MindPulseSolo” that would provide only one “mode” at a reduced cost to make it easier for more people to give the technology a try and see if it works for them before investing in a more “complete” application. I’m just not sure yet if the overhead of maintaining a separate code base is worthwhile, and I’d rather focus on improving MindPulse than spinning off additional applications.

For now I’m gathering feedback and suggestions so if you use MindPulse or are curious about what it does and how it works feel free to comment here to get in touch.