Thursday, November 26, 2009

Detailed Signal Format (from Dr T. Collins)

The 16 bit sample values are stored as unsigned integers with a range from 0 to 1023.

A zero volt signal is sampled as 512.

As 1023 is the maximum, the six most significant bits are never used and so are always zero.


High Byte Low Byte
000000XX XXXXXXXX
MSB

Where X= 1/0

The EEG digital board samples at a rate of 256 samples per second so a frame of samples is transmitted every 1/256 seconds.

As there are 17 bytes in each frame packet this means that 256x17 = 4352 bytes are transmitted every second.

5 comments:

  1. "The 16 bit sample values are stored as unsigned integers with a range from 0 to 1023."


    Could you clarify what exactly you were referring to as the "16 bit sample values"?

    My understanding is: we have 8 bits in 1 byte and 17 bytes in one frame packet (do we agree on this?)

    ReplyDelete
  2. Bayo:

    Each Channel sends 2 x 8 bit bytes which should be combined to give a 16bit binary number.

    In our case we want CH1 & 2 :
    Bytes 5-6 and 7-8.

    The last 6 digits of this 16 bit number will always be zero though, so the possible values are from 0 to 1023.

    ReplyDelete
  3. I have downloaded Signal lab which is a tool box for visual studio, it makes signal processing and graph plotting really simple. However I have had some problems trying to map EEG data to it, also cannot get to the source code with the free licence.

    http://www.mitov.com/html/download_signallab.html

    ReplyDelete
  4. This might also be useful for someone,
    A VIRTUAL SERIAL PORT EMULATOR, I am thinking of using this so I can port data between Matlab and Vb for signal processing...

    http://www.eterlogic.com/Downloads.html

    ReplyDelete