Difference between revisions of "Files & Formats"

From Neuroelectric's Wiki
Jump to: navigation, search
(The .easy data format (ASCII))
(The .easy data format (ASCII))
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
Neuroelectrics devices generate a series of files and formats. Proprietary ones are in bold:  
+
==Neuroelectrics devices generate a series of files and formats. Proprietary ones are in bold:==
 
  - The '''.''easy''''' data format (ASCII, plain text) (Enobio & Starstim)
 
  - The '''.''easy''''' data format (ASCII, plain text) (Enobio & Starstim)
 
  - The '''.''info''''' file (ASCII, plain text) (Enobio & Starstim)  
 
  - The '''.''info''''' file (ASCII, plain text) (Enobio & Starstim)  
  - The .'''edf''' (EDF+) and '''".nedf"''' data formats (binary) (Enobio)
+
  - The '''.''sdeeg''''' SD card data format (binary) (Enobio & Starstim)
  - The '''.''stim''''' file (ASCII, plain text) (Starstim)
+
  - The '''.''.nedf''''' (binary) data format (Enobio & Starstim)
- The '''.''sdeeg''''' SD card data format (binary) (Enobio)
 
  
 
In general, time keeping is given with time stamps per sample in ms since Jan 1st 1970 ([http://en.wikipedia.org/wiki/Unix_time Unix time]).
 
In general, time keeping is given with time stamps per sample in ms since Jan 1st 1970 ([http://en.wikipedia.org/wiki/Unix_time Unix time]).
Line 82: Line 81:
 
   8
 
   8
 
   9
 
   9
 
== the .'''stim''' file ==
 
 
This ASCII file contains a record of the currents at each electrode. This file is only available in previous versions of NIC2.0.9
 
 
There is a row per time sample with one column per channel (units in uA).
 
 
The last column contains the time stamps per sample in ms since Jan 1st 1970 ([https://en.wikipedia.org/wiki/Unix_time Unix time]).
 
 
Here is the typical content of a .stim file. There are 8 columns (one per channel). Channels with a constant value of -1 identify channels not used for stimulation.  The first two columns provide injected current in uA, with a + sign indicating injection of current into the scalp. The last column is the Unix timestamp (ms).
 
 
246 -246 -1 -1 -1 -1 -1 -1 1381762713753
 
246 -246 -1 -1 -1 -1 -1 -1 1381762713754
 
246 -246 -1 -1 -1 -1 -1 -1 1381762713755
 
246 -246 -1 -1 -1 -1 -1 -1 1381762713756
 
246 -246 -1 -1 -1 -1 -1 -1 1381762713757
 
247 -247 -1 -1 -1 -1 -1 -1 1381762713758
 
247 -247 -1 -1 -1 -1 -1 -1 1381762713759
 
247 -247 -1 -1 -1 -1 -1 -1 1381762713760
 
247 -247 -1 -1 -1 -1 -1 -1 1381762713761
 
247 -247 -1 -1 -1 -1 -1 -1 1381762713762
 
247 -247 -1 -1 -1 -1 -1 -1 1381762713763
 
248 -248 -1 -1 -1 -1 -1 -1 1381762713764
 
248 -248 -1 -1 -1 -1 -1 -1 1381762713765
 
  
 
= EEG data files and formats =  
 
= EEG data files and formats =  
Line 195: Line 170:
 
Here is an example from a StarStim device (8 Channels) where the first 2 channels are used for stimulation (with "-1"s), and with accelerometer data (3 columns), markers (with a marker sent (5) in the last sample) and timestamp:
 
Here is an example from a StarStim device (8 Channels) where the first 2 channels are used for stimulation (with "-1"s), and with accelerometer data (3 columns), markers (with a marker sent (5) in the last sample) and timestamp:
  
  -1 -1  8999110  29602960 27793792  19921829  -3670597 18110801   -2745  9561 -912  0  1353011252736
+
  -1 -1  8999110  29602960 27793792  19921829  -3670597 18110801 -2745  9561 -912  0  1353011252736
  -1 -1  8902360  29539254 27764085  19818737  -3924179 18143799   -2745  9561 -912  0  1353011252738
+
  -1 -1  8902360  29539254 27764085  19818737  -3924179 18143797  -2745  9561 -912  0  1353011252738
  -1 -1  8827496  29457477 27727511  19748117  -4140377 18101551   -2745  9561 -912  0  1353011252740
+
  -1 -1  8827496  29457477 27727511  19748117  -4140377 18101551 -2745  9561 -912  0  1353011252740
  -1 -1  8779812  29376462 27720311  19705727  -4315472 18054868   -2745  9561 -912  5  1353011252742 <-- Reception of the marker #300
+
  -1 -1  8779812  29376462 27720311  19705727  -4315472 18054868 -2745  9561 -912  5  1353011252742 <-- Reception of the marker #5
  
 
Here is an example from a StarStim device (8 Channels) using all the channels to record EEG, and with accelerometer data (3 columns), markers and timestamp:
 
Here is an example from a StarStim device (8 Channels) using all the channels to record EEG, and with accelerometer data (3 columns), markers and timestamp:
Line 206: Line 181:
 
  198187 237426  8827496  29457477 27727511  19748117  -4140377 18101551   -2745  9561 -912  0  1353011252740
 
  198187 237426  8827496  29457477 27727511  19748117  -4140377 18101551   -2745  9561 -912  0  1353011252740
 
  772031 389240  8779812  29376462 27720311  19705727  -4315472 18054868   -2745  9561 -912  0  1353011252742
 
  772031 389240  8779812  29376462 27720311  19705727  -4315472 18054868   -2745  9561 -912  0  1353011252742
 +
 +
 +
Regarding the 3D image of the accelerometer, here the image of an Enobio 8-channels or a Starstim 8-channels:
 +
 +
    [[File:Accelerometer device.PNG|600px]]
  
 
== The .'''edf''' (binary, EDF+)  data format ==
 
== The .'''edf''' (binary, EDF+)  data format ==

Latest revision as of 08:38, 29 August 2018

Neuroelectrics devices generate a series of files and formats. Proprietary ones are in bold:

- The .easy data format (ASCII, plain text) (Enobio & Starstim)
- The .info file (ASCII, plain text) (Enobio & Starstim) 
- The .sdeeg SD card data format (binary) (Enobio & Starstim)
- The ..nedf (binary) data format (Enobio & Starstim)

In general, time keeping is given with time stamps per sample in ms since Jan 1st 1970 (Unix time).

Neuroelectrics generated files

Neuroelectrics devices generate specific files as well as EEG data for Enobio devices.

the .info file associated with a stimulation session

Here is an example of the ASCII data file associated to a stimulation session. The name of the file would be something like '20130220112635_Patient01.info:

StartDate (first EEG timestamp): 1361377909087 
Device class: StarStim
Device Mac: 00:07:80:58:9C:1A
NIC version: v1.1.9
Firmware version: 699
Line filter status: OFF
Additional channel status:OFF
Number of records of Stimulation: 46 (1 second/record)

Total number of channels: 8

Number of EEG channels: 6
Number of stimulation channels: 1
Stimulation sampling rate: 500 Samples/second
Stimulation units: uA
Ramp up duration (s): 15
Ramp down duration (s): 15
Shamp ramp duration (s): OFF
Stimulation duration (s): 1200
Type of stimulation: tACS
Stimulation parameters:
Channel 1: 
 Position: C3
 Type: EEG Recording
 Channel 2: 
 Position: C4
 Type: Stimulation Anodal
 Amplitude (uA): 100
 Offset (uA): 0
 Frequency (Hz): 10
 Channel 3: 
 Position: Ch3
 Type: EEG Recording
Channel 4: 
 Position: Ch4
 Type: Return
 Percentage return: 100%
Channel 5: 
 Position: Ch5
 Type: EEG Recording
 Channel 6: 
 Position: Ch6
 Type: EEG Recording
Channel 7: 
 Position: Ch7
 Type: EEG Recording
 Channel 8: 
 Position: Ch8
 Type: EEG Recording
Trigger information:
 Code	Description
 1	Subject moved
 2	Eyes opened
 3	Eyes closed
 4	sleeping
 5	EEG signals are noisy
 6	
 7	
 8	
 9

EEG data files and formats

the .info file associated with an EEG only session

Here is an example of what this plain text file contains. The name of the file would be something like '20131011141257_demo.info:

StartDate (first EEG timestamp): 1381493577260
Device class: Enobio20
Device MAC: 00:07:80:63:F0:CD
NIC version: v1.2.9
Firmware version: 699
Line filter status: 60 Hz
Additional channel status: OFF
Total number of channels: 20
Number of EEG channels: 20
Number of records of EEG: 15381
Number of packets lost: 0(0.00%)
EEG sampling rate: 500 Samples/second
EEG units: nV
EEG montage:
 Channel 1: P7
 Channel 2: P4
 Channel 3: Cz
 Channel 4: Pz
 Channel 5: P3
 Channel 6: P8
 Channel 7: O1
 Channel 8: O2
 Channel 9: T8
 Channel 10: F8
 Channel 11: C4
 Channel 12: F4
 Channel 13: Fp2
 Channel 14: Fz
 Channel 15: C3
 Channel 16: F3
 Channel 17: Fp1
 Channel 18: T7
 Channel 19: F7
 Channel 20: EXT
Number of records of Accelerometer: 30 (1 second/record)
Number of channels of Accelerometer: 3
Accelerometer sampling rate: 100 Samples/second
Accelerometer units: mm/s^2
Trigger information:
 Code	Description
 1	EventA
 2	EventB
 3	Movement
 4	Eyeblink
 5	
 6	
 7	
 8	
 9

The .easy data format (ASCII)

 ABOUT THE NE ASCII DATA FORMAT (July 2012): 
       NE ASCII files contain one line per time sample (Sampling rate: 500 SPS). Each line contains first the EEG data (8,20 or 32 
       channels, depending on the device, with units in nV), followed by  three acceleration channels (aX,aY,aZ in mm/s^2-
       millimeters per second squared), a trigger flag (int32) and, finally, a timestamp in      
       Unix time (ms from Jan 1 1970):

 Ch1(nV) ... Ch8,20or32(nV) aX(mg) aY(mg) aZ(mg) AddSensor Flags(int32) TimeStamp (ms)
   
 Therefore Enobio8/StarStim8 will have a minimum of 8+4 (12) columns + timestamp

   Enobio8: 8 columns (EEG data) + 3 acceleration channels + trigger column + timestamp
        
   Enobio20: 20 columns (EEG data) + 3 acceleration channels + trigger column + timestamp
   Enobio 32: 32 columns (EEG data) + 3 acceleration channels + trigger column + timestamp
   Starstim 8: 8 columns (EEG data or not used channel to record EEG) + 3 acceleration channels + trigger column + timestamp
   Starstim 20: 20 columns (EEG data or not used channel to record EEG) + 3 acceleration channels + trigger column + timestamp
   Starstim 32: 32 columns (EEG data or not used channel to record EEG) + 3 acceleration channels + trigger column + timestamp
 

[Note: the accelerometer uses 13 bits for a range of +/- 16g, thus 3.9 mg/LSB]


Here is an example from a StarStim device (8 Channels) where the first 2 channels are used for stimulation (with "-1"s), and with accelerometer data (3 columns), markers (with a marker sent (5) in the last sample) and timestamp:

-1 -1  8999110  29602960 27793792  19921829  -3670597	18110801  -2745  9561	 -912  0  1353011252736
-1 -1  8902360  29539254 27764085  19818737  -3924179	18143797  -2745  9561	 -912  0  1353011252738
-1 -1  8827496  29457477 27727511  19748117  -4140377	18101551  -2745  9561	 -912  0  1353011252740
-1 -1  8779812  29376462 27720311  19705727  -4315472	18054868  -2745  9561	 -912  5  1353011252742 <-- Reception of the marker #5

Here is an example from a StarStim device (8 Channels) using all the channels to record EEG, and with accelerometer data (3 columns), markers and timestamp:

899394	182343   8999110  29602960	 27793792  19921829  -3670597	18110801	  -2745  9561	 -912  0  1353011252736
197056	789249   8902360  29539254	 27764085  19818737  -3924179	18143799	  -2745  9561	 -912  0  1353011252738
198187	237426   8827496  29457477	 27727511  19748117  -4140377	18101551	  -2745  9561	 -912  0  1353011252740
772031	389240   8779812  29376462	 27720311  19705727  -4315472	18054868	  -2745  9561	 -912  0  1353011252742


Regarding the 3D image of the accelerometer, here the image of an Enobio 8-channels or a Starstim 8-channels:

    Accelerometer device.PNG

The .edf (binary, EDF+) data format

This is the standard | EDF data format. Files in this format can be opened from EDF data readers. The EDF+ format has only 16 bits of quantization. To avoid any distortion of the signal the EDF+ files are pre-processed including:

- High pass filtering of the signal at 0.1 Hz

The .nedf (binary) data format

This is Neuroelectrics proprietary data format (NEDF). It is lossless (full 24 bit) binary. It can be opened by NIC Offline and exported/saved into any of the other NE formats.

The .sdeeg SD card data

This is another proprietary, binary data format. It can be opened with NIC Offline software and exported/saved into any of the other NE formats.