emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
@ 2012-09-04 17:06 Jonathan Arkell
  2012-09-05  7:44 ` Torsten Wagner
  2012-09-05 13:45 ` joakim
  0 siblings, 2 replies; 9+ messages in thread
From: Jonathan Arkell @ 2012-09-04 17:06 UTC (permalink / raw)
  To: emacs-orgmode@gnu.org

Hi Orgers!

I recently picked up a Neruosky Mindwave, a consumer level EEG device (it
reads brainwaves).  Unfortunately, the software bundle doesn't include a
way to log the EEG levels.  Since I am fairly decent at Elisp, I thought I
would write a little library to interface with the mindwave, and store the
results.  Naturally I thought of using an org-mode buffer for this.

So I present, mindwave-emacs:
https://raw.github.com/jonnay/emagicians-starter-kit/master/extra/mindwave-
emacs.org

Mindwave-emacs.el really is just a low-level interface for emacs.  Inside
of the org file are 2 examples (actually, fully working programs) that
show you how to work with it.

  - gather-into-org.el :: allows you to write data into an org-mode file
  - solarized-mind.el  :: uses the "eSense" Attention and Meditation
measurements to provide feedback to the user on their brian state.

I am also working on a lower-level serial/binary connection to retrieve
data from the mindwave to help facilitate raw EEG logging.

I don't know if this is going to be useful to anyone, but I figured some
people may be interested.

Cheers!
__________________________________


Jonathan Arkell
Sr. Developer
Inspired By Drum & Bass, Scheme, Kawaii

p. 403.206.4377
1011 9th Ave SE, Suite 300

Calgary, AB, Canada T2G 0Y4

jonathana@criticalmass.com
criticalmass.com






The information contained in this message is confidential. It is intended to be read only by the individual or entity named above or their designee. If the reader of this message is not the intended recipient, you are hereby notified that any distribution of this message, in any form, is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete or destroy any copy of this message.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-04 17:06 Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer Jonathan Arkell
@ 2012-09-05  7:44 ` Torsten Wagner
  2012-09-05 13:45 ` joakim
  1 sibling, 0 replies; 9+ messages in thread
From: Torsten Wagner @ 2012-09-05  7:44 UTC (permalink / raw)
  To: Jonathan Arkell; +Cc: emacs-orgmode@gnu.org

Hi Jonathan,

does that mean we can mark the point

* TODO org-mode should read my mind

from the requested org-mode feature list ;)

I think your example is great but frighten to be very specific to
really get attention.
However, it might make a nice example for presentations etc.
Similar like the emacs coffee maker stuff.

On the other hand it might be very interesting to get a general idea
how to add data from devices to org-mode. Many measurement devices
utilize USB, RS232 or even network interfaces to communicate (beside
of the industrial standards). It would be great to have infos how e.g.
to read data from a serial port and add them to org-mode. The
internet-famous Arduino board could serve as an example. Communication
would be even more awesome.

Once I tried to use org-babel talking to a device connected via USB
(emulated serial port). The protocol was rather simple but could be
lengthy to type in over and over again.  I was hopping to define babel
blocks which serve as macro containers and combine them into bigger
scripts. However, this did not work as well, I guess partially because
of the bridge of org->shell->terminal->command

If you could help to describe e.g. a raw communication port for babel
that might be interesting.

#+begin_src: raw :port  /dev/tty1 :serpar 115200,8,1,N :results output
<command>
<command>
<command>
<command>
#+end_src
#+result
<response>
<response>
<response>
<response>

With the right set of parameters one could fetch real world data
directly into org-mode files.

Best regards

Torsten



On 5 September 2012 02:06, Jonathan Arkell <jonathana@criticalmass.com> wrote:
> Hi Orgers!
>
> I recently picked up a Neruosky Mindwave, a consumer level EEG device (it
> reads brainwaves).  Unfortunately, the software bundle doesn't include a
> way to log the EEG levels.  Since I am fairly decent at Elisp, I thought I
> would write a little library to interface with the mindwave, and store the
> results.  Naturally I thought of using an org-mode buffer for this.
>
> So I present, mindwave-emacs:
>
>
> Mindwave-emacs.el really is just a low-level interface for emacs.  Inside
> of the org file are 2 examples (actually, fully working programs) that
> show you how to work with it.
>
>   - gather-into-org.el :: allows you to write data into an org-mode file
>   - solarized-mind.el  :: uses the "eSense" Attention and Meditation
> measurements to provide feedback to the user on their brian state.
>
> I am also working on a lower-level serial/binary connection to retrieve
> data from the mindwave to help facilitate raw EEG logging.
>
> I don't know if this is going to be useful to anyone, but I figured some
> people may be interested.
>
> Cheers!
> __________________________________
>
>
> Jonathan Arkell
> Sr. Developer
> Inspired By Drum & Bass, Scheme, Kawaii
>
> p. 403.206.4377
> 1011 9th Ave SE, Suite 300
>
> Calgary, AB, Canada T2G 0Y4
>
> jonathana@criticalmass.com
> criticalmass.com
>
>
>
>
>
>
> The information contained in this message is confidential. It is intended to be read only by the individual or entity named above or their designee. If the reader of this message is not the intended recipient, you are hereby notified that any distribution of this message, in any form, is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete or destroy any copy of this message.
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-04 17:06 Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer Jonathan Arkell
  2012-09-05  7:44 ` Torsten Wagner
@ 2012-09-05 13:45 ` joakim
  2012-09-05 18:30   ` Kyle Machulis
  2012-09-05 22:40   ` brian powell
  1 sibling, 2 replies; 9+ messages in thread
From: joakim @ 2012-09-05 13:45 UTC (permalink / raw)
  To: emacs-orgmode

Jonathan Arkell <jonathana@criticalmass.com> writes:

> Hi Orgers!
>
> I recently picked up a Neruosky Mindwave, a consumer level EEG device (it
> reads brainwaves).  Unfortunately, the software bundle doesn't include a
> way to log the EEG levels.  Since I am fairly decent at Elisp, I thought I
> would write a little library to interface with the mindwave, and store the
> results.  Naturally I thought of using an org-mode buffer for this.
>
> So I present, mindwave-emacs:
> https://raw.github.com/jonnay/emagicians-starter-kit/master/extra/mindwave-emacs.org
>
> Mindwave-emacs.el really is just a low-level interface for emacs.  Inside
> of the org file are 2 examples (actually, fully working programs) that
> show you how to work with it.
>
>   - gather-into-org.el :: allows you to write data into an org-mode file
>   - solarized-mind.el  :: uses the "eSense" Attention and Meditation
> measurements to provide feedback to the user on their brian state.
>
> I am also working on a lower-level serial/binary connection to retrieve
> data from the mindwave to help facilitate raw EEG logging.
>
> I don't know if this is going to be useful to anyone, but I figured some
> people may be interested.

Cool!

I did some Neurosky Mindset integration for my zen.el package:
https://github.com/jave/zen-mode

Maybe I can integrate your package and mine, I'll have a look!


>
> Cheers!
> __________________________________
>
>
> Jonathan Arkell
> Sr. Developer
> Inspired By Drum & Bass, Scheme, Kawaii
>
> p. 403.206.4377
> 1011 9th Ave SE, Suite 300
>
> Calgary, AB, Canada T2G 0Y4
>
> jonathana@criticalmass.com
> criticalmass.com
>
>
>
>
>
>
> The information contained in this message is confidential. It is intended to be read only by the individual or entity named above or their designee. If the reader of this message is not the intended recipient, you are hereby notified that any distribution of this message, in any form, is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete or destroy any copy of this message.
>
>

-- 
Joakim Verona

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-05 13:45 ` joakim
@ 2012-09-05 18:30   ` Kyle Machulis
  2012-09-05 18:44     ` Nick Dokos
  2012-09-05 23:02     ` Jonathan Arkell
  2012-09-05 22:40   ` brian powell
  1 sibling, 2 replies; 9+ messages in thread
From: Kyle Machulis @ 2012-09-05 18:30 UTC (permalink / raw)
  To: emacs-orgmode

Something this thread might be interested in. I proposed a project a
couple of years ago called the Quantified Coder, basically looking at
hooking as many biometrics as possible into emacs. There's a small
presentation on it at

http://www.openyou.org/2011/05/13/the-quantified-coder/

Unfortunately it never got off the ground due to lots of reasons, but
I'd still love to get it going sometime. If anyone needs help with
getting devices talking (whether they have open drivers or not :) ),
that's pretty much what I do. :D

I still wonder if org is the right medium for this. Most of the
devices are going to give you a TON of data (the neurosky raw stream
is ~500hz update, emotiv is ~128hz, etc...). Pedometers and blood
pressure monitors that do one-time large dumps might be somewhat more
feasible.

On Wed, Sep 5, 2012 at 6:45 AM,  <joakim@verona.se> wrote:
> Jonathan Arkell <jonathana@criticalmass.com> writes:
>
>> Hi Orgers!
>>
>> I recently picked up a Neruosky Mindwave, a consumer level EEG device (it
>> reads brainwaves).  Unfortunately, the software bundle doesn't include a
>> way to log the EEG levels.  Since I am fairly decent at Elisp, I thought I
>> would write a little library to interface with the mindwave, and store the
>> results.  Naturally I thought of using an org-mode buffer for this.
>>
>> So I present, mindwave-emacs:
>> https://raw.github.com/jonnay/emagicians-starter-kit/master/extra/mindwave-emacs.org
>>
>> Mindwave-emacs.el really is just a low-level interface for emacs.  Inside
>> of the org file are 2 examples (actually, fully working programs) that
>> show you how to work with it.
>>
>>   - gather-into-org.el :: allows you to write data into an org-mode file
>>   - solarized-mind.el  :: uses the "eSense" Attention and Meditation
>> measurements to provide feedback to the user on their brian state.
>>
>> I am also working on a lower-level serial/binary connection to retrieve
>> data from the mindwave to help facilitate raw EEG logging.
>>
>> I don't know if this is going to be useful to anyone, but I figured some
>> people may be interested.
>
> Cool!
>
> I did some Neurosky Mindset integration for my zen.el package:
> https://github.com/jave/zen-mode
>
> Maybe I can integrate your package and mine, I'll have a look!
>
>
>>
>> Cheers!
>> __________________________________
>>
>>
>> Jonathan Arkell
>> Sr. Developer
>> Inspired By Drum & Bass, Scheme, Kawaii
>>
>> p. 403.206.4377
>> 1011 9th Ave SE, Suite 300
>>
>> Calgary, AB, Canada T2G 0Y4
>>
>> jonathana@criticalmass.com
>> criticalmass.com
>>
>>
>>
>>
>>
>>
>> The information contained in this message is confidential. It is intended to be read only by the individual or entity named above or their designee. If the reader of this message is not the intended recipient, you are hereby notified that any distribution of this message, in any form, is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete or destroy any copy of this message.
>>
>>
>
> --
> Joakim Verona
>
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-05 18:30   ` Kyle Machulis
@ 2012-09-05 18:44     ` Nick Dokos
  2012-09-05 23:02     ` Jonathan Arkell
  1 sibling, 0 replies; 9+ messages in thread
From: Nick Dokos @ 2012-09-05 18:44 UTC (permalink / raw)
  To: Kyle Machulis; +Cc: emacs-orgmode

Kyle Machulis <kyle@nonpolynomial.com> wrote:

> I still wonder if org is the right medium for this. Most of the
> devices are going to give you a TON of data (the neurosky raw stream
> is ~500hz update, emotiv is ~128hz, etc...). Pedometers and blood
> pressure monitors that do one-time large dumps might be somewhat more
> feasible.
> 

You can use a process that samples for a given amount of time and
produces a summary of the results (or perhaps a table, which then can
be summarized using babel/calc/R/etc.) That might be better suited to org's
MO.

Nick

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [OT] Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-05 13:45 ` joakim
  2012-09-05 18:30   ` Kyle Machulis
@ 2012-09-05 22:40   ` brian powell
  1 sibling, 0 replies; 9+ messages in thread
From: brian powell @ 2012-09-05 22:40 UTC (permalink / raw)
  To: joakim; +Cc: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 2627 bytes --]

I used to do brainwave research (using eeg's): Maybe make some software
(R?) to do some FFT (Fast Fourier Transforms) calcs on the brainwaves and
compute the "power wave" and have it report percentages or counts of
AlphaWaves, BetaWaves, ThetaWaves, etc?

Thanks Jonathan and Joakim (zen-mode) for the software!

On Wed, Sep 5, 2012 at 9:45 AM, <joakim@verona.se> wrote:

> Jonathan Arkell <jonathana@criticalmass.com> writes:
>
> > Hi Orgers!
> >
> > I recently picked up a Neruosky Mindwave, a consumer level EEG device (it
> > reads brainwaves).  Unfortunately, the software bundle doesn't include a
> > way to log the EEG levels.  Since I am fairly decent at Elisp, I thought
> I
> > would write a little library to interface with the mindwave, and store
> the
> > results.  Naturally I thought of using an org-mode buffer for this.
> >
> > So I present, mindwave-emacs:
> >
> https://raw.github.com/jonnay/emagicians-starter-kit/master/extra/mindwave-emacs.org
> >
> > Mindwave-emacs.el really is just a low-level interface for emacs.  Inside
> > of the org file are 2 examples (actually, fully working programs) that
> > show you how to work with it.
> >
> >   - gather-into-org.el :: allows you to write data into an org-mode file
> >   - solarized-mind.el  :: uses the "eSense" Attention and Meditation
> > measurements to provide feedback to the user on their brian state.
> >
> > I am also working on a lower-level serial/binary connection to retrieve
> > data from the mindwave to help facilitate raw EEG logging.
> >
> > I don't know if this is going to be useful to anyone, but I figured some
> > people may be interested.
>
> Cool!
>
> I did some Neurosky Mindset integration for my zen.el package:
> https://github.com/jave/zen-mode
>
> Maybe I can integrate your package and mine, I'll have a look!
>
>
> >
> > Cheers!
> > __________________________________
> >
> >
> > Jonathan Arkell
> > Sr. Developer
> > Inspired By Drum & Bass, Scheme, Kawaii
> >
> > p. 403.206.4377
> > 1011 9th Ave SE, Suite 300
> >
> > Calgary, AB, Canada T2G 0Y4
> >
> > jonathana@criticalmass.com
> > criticalmass.com
> >
> >
> >
> >
> >
> >
> > The information contained in this message is confidential. It is
> intended to be read only by the individual or entity named above or their
> designee. If the reader of this message is not the intended recipient, you
> are hereby notified that any distribution of this message, in any form, is
> strictly prohibited. If you have received this message in error, please
> immediately notify the sender and delete or destroy any copy of this
> message.
> >
> >
>
> --
> Joakim Verona
>
>
>

[-- Attachment #2: Type: text/html, Size: 3697 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-05 18:30   ` Kyle Machulis
  2012-09-05 18:44     ` Nick Dokos
@ 2012-09-05 23:02     ` Jonathan Arkell
  2012-09-07 11:19       ` [OT] " brian powell
  1 sibling, 1 reply; 9+ messages in thread
From: Jonathan Arkell @ 2012-09-05 23:02 UTC (permalink / raw)
  To: Kyle Machulis, emacs-orgmode

Hey Kyle

Right now I am working with the course-grained (1/sec) data sets from the
Mindwave.  They provide their eSense(tm) measurements as well as the
"eegPower", which seems to give a general overview of the different
brainwave levels in relation to each-other (but not much else).  This
actually works out really well, because you can dump the data to an org
table, and then as Nick said, use babel/calc/R to dow hat you need to do
with it.  There is a function inside of the data-gathering package that
handles that pretty nicely (albeit slowly) with calc.

Of course, this is all very course grained, but it is working nicely for
my current experiments!

My intention is to eventually connect to the lower level serial Neurosky
interface for the raw EEG wave data with emacs, and send the both the EEG
data and a timestamp straight to a file.  This might be a blind alley
however.

The idea of quantified coding sounds awesome!  The question is, how does
one marry up a line of code, with a particular neurological state,
especially since a given line of code isn't a static entity that one can
easily refer to?


__________________________________


Jonathan Arkell
Sr. Developer
Inspired By Drum & Bass, Scheme, Kawaii

p. 403.206.4377
1011 9th Ave SE, Suite 300

Calgary, AB, Canada T2G 0Y4

jonathana@criticalmass.com
criticalmass.com









On 5/09/12 12:30 PM, "Kyle Machulis" <kyle@nonpolynomial.com> wrote:

>Something this thread might be interested in. I proposed a project a
>couple of years ago called the Quantified Coder, basically looking at
>hooking as many biometrics as possible into emacs. There's a small
>presentation on it at
>
>http://www.openyou.org/2011/05/13/the-quantified-coder/
>
>Unfortunately it never got off the ground due to lots of reasons, but
>I'd still love to get it going sometime. If anyone needs help with
>getting devices talking (whether they have open drivers or not :) ),
>that's pretty much what I do. :D
>
>I still wonder if org is the right medium for this. Most of the
>devices are going to give you a TON of data (the neurosky raw stream
>is ~500hz update, emotiv is ~128hz, etc...). Pedometers and blood
>pressure monitors that do one-time large dumps might be somewhat more
>feasible.


The information contained in this message is confidential. It is intended to be read only by the individual or entity named above or their designee. If the reader of this message is not the intended recipient, you are hereby notified that any distribution of this message, in any form, is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete or destroy any copy of this message.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [OT] Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-05 23:02     ` Jonathan Arkell
@ 2012-09-07 11:19       ` brian powell
  2012-09-07 23:03         ` brian powell
  0 siblings, 1 reply; 9+ messages in thread
From: brian powell @ 2012-09-07 11:19 UTC (permalink / raw)
  To: Kyle Machulis; +Cc: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 920 bytes --]

> >I still wonder if org is the right medium for this. Most of the
> >devices are going to give you a TON of data (the neurosky raw stream
> >is ~500hz update, emotiv is ~128hz, etc...). Pedometers and blood
> >pressure monitors that do one-time large dumps might be somewhat more
> >feasible.
>
>
>
* EMACS OrgMode is one of the right mediums for this:

** can put massive amounts of data in a tiny icon on your screen (that you
can wave your mouse over to glimpse whats inside--which could be data or
notes, etc.

** can quickly fold and unfold the data in a tree-like structure.

* I used to work with brainwave data with EMACS and neuroscientists at NIH
would be amazed at what I could do with the data.

* EMACS is in MIT's top 20 of all-time developments in Artificial
Intelligence.

You can use EMACS to massage the data and EMACS OrgMode to study whats
interesting to you and/or present it to other researchers.

[-- Attachment #2: Type: text/html, Size: 1374 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [OT] Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer.
  2012-09-07 11:19       ` [OT] " brian powell
@ 2012-09-07 23:03         ` brian powell
  0 siblings, 0 replies; 9+ messages in thread
From: brian powell @ 2012-09-07 23:03 UTC (permalink / raw)
  To: Kyle Machulis; +Cc: emacs-orgmode

[-- Attachment #1: Type: text/plain, Size: 1367 bytes --]

* If you're worried about "a TON of data" filling the emacs buffer then
expand the max buffer size or you might want to look into QEmacs by Fabrice
Bellard (of Pi calculation fame, and creator of QEMU)

** I've used QEmacs to edit gigabyte+ size files.

*** I'm not sure that's what you're worried about; but, whatever.

On Fri, Sep 7, 2012 at 7:19 AM, brian powell <briangpowellms@gmail.com>wrote:

>
>
>> >I still wonder if org is the right medium for this. Most of the
>> >devices are going to give you a TON of data (the neurosky raw stream
>> >is ~500hz update, emotiv is ~128hz, etc...). Pedometers and blood
>> >pressure monitors that do one-time large dumps might be somewhat more
>> >feasible.
>>
>>
>>
> * EMACS OrgMode is one of the right mediums for this:
>
> ** can put massive amounts of data in a tiny icon on your screen (that you
> can wave your mouse over to glimpse whats inside--which could be data or
> notes, etc.
>
> ** can quickly fold and unfold the data in a tree-like structure.
>
> * I used to work with brainwave data with EMACS and neuroscientists at NIH
> would be amazed at what I could do with the data.
>
> * EMACS is in MIT's top 20 of all-time developments in Artificial
> Intelligence.
>
> You can use EMACS to massage the data and EMACS OrgMode to study whats
> interesting to you and/or present it to other researchers.
>
>
>
>

[-- Attachment #2: Type: text/html, Size: 2102 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2012-09-07 23:03 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-09-04 17:06 Mindwave Emacs. EEG reading and Data gathering in an org-mode buffer Jonathan Arkell
2012-09-05  7:44 ` Torsten Wagner
2012-09-05 13:45 ` joakim
2012-09-05 18:30   ` Kyle Machulis
2012-09-05 18:44     ` Nick Dokos
2012-09-05 23:02     ` Jonathan Arkell
2012-09-07 11:19       ` [OT] " brian powell
2012-09-07 23:03         ` brian powell
2012-09-05 22:40   ` brian powell

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).