diff --git a/scenarios/p300-tactile-0-signal-monitoring.xml b/scenarios/p300-tactile-0-signal-monitoring.xml
new file mode 100644
index 0000000..e757dd9
--- /dev/null
+++ b/scenarios/p300-tactile-0-signal-monitoring.xml
@@ -0,0 +1,656 @@
+
+ 2
+ OpenViBE Designer
+ 3.1.0
+
+
+
+
+
+ (0x000014bf, 0x000034db)
+ Identity
+ (0x5dffe431, 0x35215c50)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input stream 1
+
+
+ (0x5ba36127, 0x195feae1)
+ Input stream 2
+
+
+ (0x6f752dd0, 0x082a321e)
+ Input stream 3
+
+
+
+
+
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 384
+
+
+ (0x207c9054, 0x3c841b63)
+ 928
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xa8ffe2a3, 0x27038f03)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xac367a9c, 0x2da95abe)
+ 6
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00003f1b, 0x00003c78)
+ Signal Decimation
+ (0x012f4bea, 0x3be37c66)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+
+
+
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Decimation factor
+ 8
+ ${SIGNAL_DECIMATION_FACTOR}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 288
+
+
+ (0x207c9054, 0x3c841b63)
+ 848
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x5082af41, 0xd0fbf4cb)
+
+
+
+
+ (0x0000556f, 0x000055f8)
+ Temporal filter
+ (0xb4f9d042, 0x9d79f2e5)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+
+
+
+
+
+ (0x2f2c606c, 0x8512ed68)
+ Filter method
+ Butterworth
+ ${FILTER_METHOD}
+ false
+
+
+ (0xfa20178e, 0x4cba62e9)
+ Filter type
+ Low pass
+ ${FILTER_TYPE}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Filter order
+ 4
+ ${FILTER_ORDER}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Low cut frequency (Hz)
+ 29
+ ${LOW_CUT_FREQUENCY}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ High cut frequency (Hz)
+ 40
+ ${HIGH_CUT_FREQUENCY}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Pass band ripple (dB)
+ 0.5
+ ${PASS_BAND_RIPPLE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 224
+
+
+ (0x207c9054, 0x3c841b63)
+ 848
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x27a4ceec, 0x876d6384)
+
+
+
+
+ (0x00005c5c, 0x00007610)
+ Raw
+ (0x0055be5f, 0x087bdd12)
+
+
+ (0x5ba36127, 0x195feae1)
+ Data
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+ (0x6ab26b81, 0x0f8c02f3)
+ Channel Units
+
+
+
+
+ (0x5de046a6, 0x086340aa)
+ Display Mode
+ Scan
+ Scan
+ false
+
+
+ (0x33a30739, 0x00d5299b)
+ Auto vertical scale
+ Per channel
+ Per channel
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Scale refresh interval (secs)
+ 5
+ 5
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Scale
+ 100
+ 100
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Offset
+ 0
+ 0
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Time Scale
+ 10
+ 10
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Horizontal ruler
+ true
+ true
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Vertical ruler
+ false
+ false
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Multiview
+ false
+ false
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 512
+
+
+ (0x207c9054, 0x3c841b63)
+ 1024
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x92c056a7, 0x2dc71aff)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xce18836a, 0x9c0eb403)
+ 9
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 3
+
+
+
+
+ (0x00006b6d, 0x00002690)
+ Acquisition client
+ (0x35d225cb, 0x3e6e3a5f)
+
+
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ Acquisition server hostname
+ ${AcquisitionServer_HostName}
+ ${ACQUISITION_SERVER_HOST_NAME}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Acquisition server port
+ 1024
+ ${ACQUISITION_SERVER_PORT}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 128
+
+
+ (0x207c9054, 0x3c841b63)
+ 928
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x0d4656c0, 0xc95b1fa8)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xc80ce8af, 0xf699f813)
+ 5
+
+
+ (0xce18836a, 0x9c0eb403)
+ 2
+
+
+
+
+ (0x00007e4e, 0x00006b7b)
+ Filtered
+ (0x0055be5f, 0x087bdd12)
+
+
+ (0x5ba36127, 0x195feae1)
+ Data
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+ (0x6ab26b81, 0x0f8c02f3)
+ Channel Units
+
+
+
+
+ (0x5de046a6, 0x086340aa)
+ Display Mode
+ Scan
+ Scan
+ false
+
+
+ (0x33a30739, 0x00d5299b)
+ Auto vertical scale
+ Per channel
+ Per channel
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Scale refresh interval (secs)
+ 5
+ 5
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Scale
+ 100
+ 100
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Offset
+ 0
+ 0
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Time Scale
+ 10
+ 10
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Horizontal ruler
+ true
+ true
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Vertical ruler
+ false
+ false
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Multiview
+ false
+ false
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 512
+
+
+ (0x207c9054, 0x3c841b63)
+ 832
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x92c056a7, 0x2dc71aff)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xce18836a, 0x9c0eb403)
+ 9
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 3
+
+
+
+
+
+
+ (0x000003a7, 0x000034db)
+
+ (0x000014bf, 0x000034db)
+ 2
+
+
+ (0x00005c5c, 0x00007610)
+ 1
+
+
+
+ (0x00000554, 0x0000661a)
+
+ (0x000014bf, 0x000034db)
+ 2
+
+
+ (0x00007e4e, 0x00006b7b)
+ 1
+
+
+
+ (0x00001d33, 0x00002bb0)
+
+ (0x00006b6d, 0x00002690)
+ 2
+
+
+ (0x000014bf, 0x000034db)
+ 2
+
+
+
+ (0x00003f04, 0x000045c3)
+
+ (0x000014bf, 0x000034db)
+ 1
+
+
+ (0x00005c5c, 0x00007610)
+ 0
+
+
+
+ (0x00004b11, 0x00006a43)
+
+ (0x00003f1b, 0x00003c78)
+ 0
+
+
+ (0x000014bf, 0x000034db)
+ 0
+
+
+
+ (0x000056fd, 0x00004795)
+
+ (0x000014bf, 0x000034db)
+ 0
+
+
+ (0x00007e4e, 0x00006b7b)
+ 0
+
+
+
+ (0x000057ad, 0x000024cb)
+
+ (0x0000556f, 0x000055f8)
+ 0
+
+
+ (0x00003f1b, 0x00003c78)
+ 0
+
+
+
+ (0x00005e38, 0x00005c99)
+
+ (0x00006b6d, 0x00002690)
+ 1
+
+
+ (0x000014bf, 0x000034db)
+ 1
+
+
+
+ (0x000073ac, 0x0000581b)
+
+ (0x00006b6d, 0x00002690)
+ 1
+
+
+ (0x0000556f, 0x000055f8)
+ 0
+
+
+
+
+
+ (0x000028e8, 0x00003dee)
+ <u><b><big>Scenario Overview</big></b></u>
+
+This scenario can be used in order
+to check the quality of the signals
+before starting an experiment.
+
+One should <u>definitely</u>
+check the quality of the signals
+and ensure that :
+
+- <b>eye blinks</b> are visible
+- <b>jaw clenching</b> are visible
+- <b>alpha waves</b> are visible when closing eyes
+
+Two Signals are displayed, one is the raw EEG-Signal
+and the other one is the filtered signal.
+The filtered signal is the one, that will actually be used
+in other scenarios.
+
+
+ (0x473d9a43, 0x97fc0a97)
+ 576
+
+
+ (0x7234b86b, 0x2b8651a5)
+ 272
+
+
+
+
+
+
+ (0x0000775c, 0x000078ff)
+ (0x3bcce5d2, 0x43f2d968)
+ [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"height":635,"identifier":"(0x000077ee, 0x0000254d)","name":"default","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":783},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00004579, 0x00005fcb)","index":0,"name":"Default tab","parentIdentifier":"(0x000077ee, 0x0000254d)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"dividerPosition":293,"identifier":"(0x00005446, 0x000043a1)","index":0,"maxDividerPosition":590,"name":"Vertical split","parentIdentifier":"(0x00004579, 0x00005fcb)","type":4},{"boxIdentifier":"(0x00005c5c, 0x00007610)","childCount":0,"identifier":"(0x00000e42, 0x000074b8)","index":0,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7b)","childCount":0,"identifier":"(0x00005db7, 0x000032ad)","index":1,"parentIdentifier":"(0x00005446, 0x000043a1)","type":3}]
+
+
+
+
+ (0x790d75b8, 0x3bb90c33)
+ Yann Renard
+
+
+ (0x8c1fc55b, 0x7b433dc2)
+
+
+
+ (0x9f5c4075, 0x4a0d3666)
+ Signal Monitoring
+
+
+ (0xf36a1567, 0xd13c53da)
+ http://openvibe.inria.fr/p300-speller-xdawn/
+
+
+ (0xf6b2e3fa, 0x7bd43926)
+ xDAWN P300 Speller
+
+
+ (0xf8034a49, 0x8b3f37cc)
+ INRIA
+
+
+
\ No newline at end of file
diff --git a/scenarios/p300-tactile-1-acquisition.xml b/scenarios/p300-tactile-1-acquisition.xml
new file mode 100644
index 0000000..158f52b
--- /dev/null
+++ b/scenarios/p300-tactile-1-acquisition.xml
@@ -0,0 +1,1202 @@
+
+ 2
+ OpenViBE Designer
+ 3.2.0
+
+
+
+
+
+ (0x00002c69, 0x00000b43)
+ P300 Speller Visualization
+ (0x195e41d6, 0x6e684d47)
+
+
+ (0x6f752dd0, 0x082a321e)
+ Sequence stimulations
+
+
+ (0x6f752dd0, 0x082a321e)
+ Target stimulations
+
+
+ (0x6f752dd0, 0x082a321e)
+ Row selection stimulations
+
+
+ (0x6f752dd0, 0x082a321e)
+ Column selection stimulations
+
+
+
+
+
+
+
+ (0x330306dd, 0x74a95f98)
+ Interface filename
+ ${Path_Data}/plugins/simple-visualization/p300-speller.glade
+ ${TACTILE_UI}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Row stimulation base
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Column stimulation base
+ OVTK_StimulationId_Label_07
+ ${COL_BASE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Flash background color
+ 10,10,10
+ ${FLASH_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Flash foreground color
+ 100,100,100
+ ${FLASH_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Flash font size
+ 100
+ ${FLASH_FONT_SIZE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ No flash background color
+ 0,0,0
+ ${NO_FLASH_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ No flash foreground color
+ 50,50,50
+ ${NO_FLASH_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ No flash font size
+ 75
+ ${NO_FLASH_FONT_SIZE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Target background color
+ 10,40,10
+ ${TARGET_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Target foreground color
+ 60,100,60
+ ${TARGET_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Target font size
+ 100
+ ${TARGET_FONT_SIZE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Selected background color
+ 70,20,20
+ ${SELECTED_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Selected foreground color
+ 30,10,10
+ ${SELECTED_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Selected font size
+ 100
+ ${SELECTED_FONT_SIZE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 416
+
+
+ (0x207c9054, 0x3c841b63)
+ 640
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x8d89d30c, 0xa939693a)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x07e64d8b)
+
+
+
+
+ (0x0000356c, 0x00004381)
+ Generic stream writer
+ (0x09c92218, 0x7c1216f8)
+
+
+ (0x403488e7, 0x565d70b6)
+ Input stream 1
+
+
+ (0x5ba36127, 0x195feae1)
+ Input stream 2
+
+
+ (0x6f752dd0, 0x082a321e)
+ Input stream 3
+
+
+
+
+ (0x330306dd, 0x74a95f98)
+ Filename
+
+ ${OUTPUT_FILE_NAME}
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Use compression
+ false
+ false
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 752
+
+
+ (0x207c9054, 0x3c841b63)
+ 592
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x89a08108, 0xc8d1fac1)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x0350a9f0)
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00003f1b, 0x00003c78)
+ Signal Decimation
+ (0x012f4bea, 0x3be37c66)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+
+
+
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Decimation factor
+ 8
+ ${SIGNAL_DECIMATION_FACTOR}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 640
+
+
+ (0x207c9054, 0x3c841b63)
+ 544
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x5082af41, 0xd0fbf4cb)
+
+
+
+
+ (0x00004633, 0x00007270)
+ UDPStimcodeSender
+ (0xc326e786, 0xcd512965)
+
+
+ (0x6f752dd0, 0x082a321e)
+ StimcodeIn
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ FeatherIP
+ 192.168.4.1
+ ${FEATHER_IP}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ FeatherPort
+ 8888
+ ${FEATHER_PORT}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ RowStimulationBase
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 320
+
+
+ (0x207c9054, 0x3c841b63)
+ 752
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xc475930f, 0xbea8aabd)
+
+
+ (0x666fffff, 0x666fffff)
+
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 3
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+
+
+ (0x0000470b, 0x00001b1d)
+ Tactile Stimulator
+ (0x0b5a2787, 0x02750621)
+
+
+
+
+
+ (0xb0d0db45, 0x49cbc34a)
+ Lua Script
+
+ ${SCRIPT_TACTILE_STIMULATOR}
+ false
+
+
+ (0x00000000, 0xbae13066)
+ (0x2c132d6e, 0x44ab0d97)
+ Row Stimulation Base
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+ (0x00000000, 0x5518f982)
+ (0x2c132d6e, 0x44ab0d97)
+ Column Stimulation Base
+ OVTK_StimulationId_Label_07
+ ${COL_BASE}
+ false
+
+
+ (0x00000000, 0xc152613d)
+ (0x007deef9, 0x2f3e95c6)
+ Number of Tactilos
+ 6
+ ${N_TACTILOS}
+ false
+
+
+ (0x00000000, 0xa0308929)
+ (0x007deef9, 0x2f3e95c6)
+ Number of Repetitions
+ 6
+ ${N_REPETITIONS}
+ false
+
+
+ (0x00000000, 0xcde95a6f)
+ (0x007deef9, 0x2f3e95c6)
+ Number of Trials
+ 6
+ ${N_TRIALS}
+ false
+
+
+ (0x00000000, 0x9b3f9b7b)
+ (0x512a166f, 0x5c3ef83f)
+ Stimulus Duration (in sec)
+ 0.2
+ ${STIM_DURATION}
+ false
+
+
+ (0x00000000, 0x583ad367)
+ (0x512a166f, 0x5c3ef83f)
+ No Stimulus Duration (in sec)
+ 0.1
+ ${NO_STIM_DURATION}
+ false
+
+
+ (0x00000000, 0xfc1c2fb6)
+ (0x512a166f, 0x5c3ef83f)
+ Inter-Repetition Delay (in sec)
+ 1.0
+ ${INTER_REPETITION_DELAY}
+ false
+
+
+ (0x00000000, 0x0d9a1e18)
+ (0x512a166f, 0x5c3ef83f)
+ Inter-Trial Delay (in sec)
+ 3.0
+ ${INTER_TRIAL_DELAY}
+ false
+
+
+ (0x00000000, 0xaeefd500)
+ (0x2c132d6e, 0x44ab0d97)
+ Start Stimulation
+ OVTK_StimulationId_Label_00
+ ${START_STIMULATION}
+ false
+
+
+ (0x00000000, 0xef5eb0e5)
+ (0x2cdb2f0b, 0x12f231ea)
+ Free Spelling
+ false
+ false
+ false
+
+
+ (0x00000000, 0x4ead155d)
+ (0x007deef9, 0x2f3e95c6)
+ Start Delay
+ 20
+ ${START_DELAY}
+ false
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 160
+
+
+ (0x207c9054, 0x3c841b63)
+ 624
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xd6e3f48b, 0xbee3523a)
+
+
+ (0x61d11811, 0x71e65362)
+
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00004b47, 0x00000cbb)
+ UDPStimcodeSender
+ (0xc326e786, 0xcd512965)
+
+
+ (0x6f752dd0, 0x082a321e)
+ StimcodeIn
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ FeatherIP
+ 192.168.4.1
+ ${FEATHER_IP}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ FeatherPort
+ 8888
+ ${FEATHER_PORT}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ RowStimulationBase
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 288
+
+
+ (0x207c9054, 0x3c841b63)
+ 576
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xc475930f, 0xbea8aabd)
+
+
+ (0x666fffff, 0x666fffff)
+
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 3
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+
+
+ (0x00004eca, 0x00003f33)
+ Player Controller
+ (0x5f426dce, 0x08456e13)
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Stimulation name
+ OVTK_StimulationId_Label_00
+ OVTK_StimulationId_ExperimentStop
+ false
+
+
+ (0xcc14d8d6, 0xf27ecb73)
+ Action to perform
+ Pause
+ Stop
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 592
+
+
+ (0x207c9054, 0x3c841b63)
+ 720
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x568d148e, 0x650792b3)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x01070ba6)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xce18836a, 0x9c0eb403)
+ 2
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+
+
+ (0x0000556f, 0x000055f8)
+ Temporal filter
+ (0xb4f9d042, 0x9d79f2e5)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+
+
+
+
+
+ (0x2f2c606c, 0x8512ed68)
+ Filter method
+ Butterworth
+ ${FILTER_METHOD}
+ false
+
+
+ (0xfa20178e, 0x4cba62e9)
+ Filter type
+ Low pass
+ ${FILTER_TYPE}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Filter order
+ 4
+ ${FILTER_ORDER}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Low cut frequency (Hz)
+ 29
+ ${LOW_CUT_FREQUENCY}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ High cut frequency (Hz)
+ 40
+ ${HIGH_CUT_FREQUENCY}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Pass band ripple (dB)
+ 0.5
+ ${PASS_BAND_RIPPLE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 576
+
+
+ (0x207c9054, 0x3c841b63)
+ 544
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x27a4ceec, 0x876d6384)
+
+
+
+
+ (0x0000599b, 0x000026ba)
+ Acquisition client
+ (0x35d225cb, 0x3e6e3a5f)
+
+
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ Acquisition server hostname
+ ${AcquisitionServer_HostName}
+ ${ACQUISITION_SERVER_HOST_NAME}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Acquisition server port
+ 1024
+ ${ACQUISITION_SERVER_PORT}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 512
+
+
+ (0x207c9054, 0x3c841b63)
+ 624
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x0d4656c0, 0xc95b1fa8)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x02909b75)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xc80ce8af, 0xf699f813)
+ 5
+
+
+ (0xce18836a, 0x9c0eb403)
+ 2
+
+
+
+
+ (0x00006d0d, 0x000031d9)
+ Tactile Target Generation
+ (0x0b5a2787, 0x02750621)
+
+
+ (0x6f752dd0, 0x082a321e)
+ New input
+
+
+
+
+
+
+
+ (0xb0d0db45, 0x49cbc34a)
+ Lua Script
+
+ ${SCRIPT_TARGET_GENERATION}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Row Stimulation Base
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+ (0x00000000, 0x7534ff4f)
+ (0x2c132d6e, 0x44ab0d97)
+ Column Stimulation Base
+ OVTK_StimulationId_Label_07
+ ${COL_BASE}
+ false
+
+
+ (0x00000000, 0xeb4fffa2)
+ (0x007deef9, 0x2f3e95c6)
+ Delay Before Sending (in sec)
+ 2
+ ${SEND_DELAY}
+ false
+
+
+ (0xf33dddda, 0xfd2c04a3)
+ (0x2cdb2f0b, 0x12f231ea)
+ Free Spelling
+ false
+ false
+ false
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 256
+
+
+ (0x207c9054, 0x3c841b63)
+ 752
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xd6e3f48b, 0xbee3523a)
+
+
+ (0x61d11811, 0x71e65362)
+
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x0334c6b7)
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00007e4e, 0x00006b7c)
+ EEG Signal
+ (0x0055be5f, 0x087bdd12)
+
+
+ (0x5ba36127, 0x195feae1)
+ Data
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+ (0x6ab26b81, 0x0f8c02f3)
+ Channel Units
+
+
+
+
+ (0x5de046a6, 0x086340aa)
+ Display Mode
+ Scan
+ Scan
+ false
+
+
+ (0x33a30739, 0x00d5299b)
+ Auto vertical scale
+ Per channel
+ Per channel
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Scale refresh interval (secs)
+ 5
+ 5
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Scale
+ 100
+ 100
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Offset
+ 0
+ 0
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Time Scale
+ 10
+ 10
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Horizontal ruler
+ true
+ true
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Vertical ruler
+ false
+ false
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Multiview
+ false
+ false
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 752
+
+
+ (0x207c9054, 0x3c841b63)
+ 720
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x92c056a7, 0x2dc71aff)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xce18836a, 0x9c0eb403)
+ 9
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 3
+
+
+
+
+
+
+ (0x00001e35, 0x00003016)
+
+ (0x0000599b, 0x000026ba)
+ 2
+
+
+ (0x00004eca, 0x00003f33)
+ 0
+
+
+
+ (0x00002e8c, 0x000055e7)
+
+ (0x00006d0d, 0x000031d9)
+ 0
+
+
+ (0x00004633, 0x00007270)
+ 0
+
+
+
+ (0x0000324b, 0x00002a9b)
+
+ (0x00003f1b, 0x00003c78)
+ 0
+
+
+ (0x0000356c, 0x00004381)
+ 1
+
+
+
+ (0x00003351, 0x0000567c)
+
+ (0x00003f1b, 0x00003c78)
+ 0
+
+
+ (0x00007e4e, 0x00006b7c)
+ 0
+
+
+
+ (0x00003382, 0x0000629a)
+
+ (0x00004633, 0x00007270)
+ 0
+
+
+ (0x00002c69, 0x00000b43)
+ 1
+
+
+
+ (0x00003cf9, 0x000006e0)
+
+ (0x00004b47, 0x00000cbb)
+ 0
+
+
+ (0x00002c69, 0x00000b43)
+ 0
+
+
+
+ (0x000057ad, 0x000024cb)
+
+ (0x0000556f, 0x000055f8)
+ 0
+
+
+ (0x00003f1b, 0x00003c78)
+ 0
+
+
+
+ (0x000057e7, 0x00005c61)
+
+ (0x0000470b, 0x00001b1d)
+ 0
+
+
+ (0x00006d0d, 0x000031d9)
+ 0
+
+
+
+ (0x0000596f, 0x00002d26)
+
+ (0x0000599b, 0x000026ba)
+ 1
+
+
+ (0x0000556f, 0x000055f8)
+ 0
+
+
+
+ (0x00006fcb, 0x000065c4)
+
+ (0x0000599b, 0x000026ba)
+ 2
+
+
+ (0x00007e4e, 0x00006b7c)
+ 1
+
+
+
+ (0x0000784c, 0x000039d2)
+
+ (0x0000599b, 0x000026ba)
+ 2
+
+
+ (0x0000356c, 0x00004381)
+ 2
+
+
+
+ (0x00007912, 0x00002579)
+
+ (0x0000470b, 0x00001b1d)
+ 0
+
+
+ (0x00004b47, 0x00000cbb)
+ 0
+
+
+
+
+
+ (0x0000363f, 0x00001c2b)
+ The P300 Speller Visualization
+sends the markers (stimulations) directly to
+Acquisition Server using TCP Tagging.
+
+
+ (0x473d9a43, 0x97fc0a97)
+ 864
+
+
+ (0x7234b86b, 0x2b8651a5)
+ 400
+
+
+
+
+ (0x19b8795c, 0x039f26f7)
+ <u><b><big>Scenario Overview</big></b></u>
+
+This scenario is used as a first step to
+collect some training data. The data
+will later be used to train a spatial
+filter and a classifier for online use of
+the Tactile BCI System.
+
+Spelling automatically starts delayed to the start
+of scenario execution.
+
+First the target Tactilo will vibrate and flash in the
+<i>Speller Visualization</i>(Copy Spelling Only).
+After that you have to Focus on your chosen
+(or the predetermined Target), while all Tactilos
+will vibrate (flash) several times.
+This will be repeated for a defined number of trials.
+After each Trial, the detected Tactilo will be presented
+in the <i>Speller Visualization</i>
+
+
+ (0x473d9a43, 0x97fc0a97)
+ 320
+
+
+ (0x7234b86b, 0x2b8651a5)
+ 288
+
+
+
+
+
+
+ (0x0000775c, 0x000078ff)
+ (0x3bcce5d2, 0x43f2d968)
+ [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"height":320,"identifier":"(0x00003bb5, 0x00006280)","name":"Acquisition","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":475},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x0000339c, 0x00002646)","index":0,"name":"Tactile Visualization","parentIdentifier":"(0x00003bb5, 0x00006280)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00003667, 0x00007632)","index":1,"name":"EEG Signal","parentIdentifier":"(0x00003bb5, 0x00006280)","type":2},{"boxIdentifier":"(0x00002c69, 0x00000b43)","childCount":0,"identifier":"(0x0000742d, 0x000050d7)","index":0,"parentIdentifier":"(0x0000339c, 0x00002646)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7c)","childCount":0,"identifier":"(0x00004ac1, 0x000015aa)","index":0,"parentIdentifier":"(0x00003667, 0x00007632)","type":3}]
+
+
+
+
+ (0x790d75b8, 0x3bb90c33)
+ Yann Renard, Jussi T. Lindgren
+
+
+ (0x8c1fc55b, 0x7b433dc2)
+
+
+
+ (0x9f5c4075, 0x4a0d3666)
+ Data Acquisition
+
+
+ (0xf36a1567, 0xd13c53da)
+ http://openvibe.inria.fr/p300-speller-xdawn/
+
+
+ (0xf6b2e3fa, 0x7bd43926)
+ xDAWN P300 Speller
+
+
+ (0xf8034a49, 0x8b3f37cc)
+ INRIA
+
+
+
\ No newline at end of file
diff --git a/scenarios/p300-tactile-3-train-classifier.xml b/scenarios/p300-tactile-3-train-classifier.xml
new file mode 100644
index 0000000..8d838dc
--- /dev/null
+++ b/scenarios/p300-tactile-3-train-classifier.xml
@@ -0,0 +1,898 @@
+
+ 2
+ OpenViBE Designer
+ 3.2.0
+
+
+
+
+
+ (0x00000b2d, 0x00006d61)
+ Feature aggregator
+ (0x00682417, 0x453635f9)
+
+
+ (0x544a003e, 0x6dcba5f6)
+ Input stream 1
+
+
+
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 240
+
+
+ (0x207c9054, 0x3c841b63)
+ 336
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xb5d15cc9, 0x6c8c28fb)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002bb807)
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00000d41, 0x000013b7)
+ Feature aggregator
+ (0x00682417, 0x453635f9)
+
+
+ (0x544a003e, 0x6dcba5f6)
+ Input stream 1
+
+
+
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 240
+
+
+ (0x207c9054, 0x3c841b63)
+ 528
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xb5d15cc9, 0x6c8c28fb)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002b7d6e)
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00001f83, 0x00004e32)
+ Generic stream reader
+ (0x6468099f, 0x0370095a)
+
+
+
+
+
+
+
+ (0x330306dd, 0x74a95f98)
+ Filename
+
+ ${INPUT_FILE_NAME}
+ false
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ -160
+
+
+ (0x207c9054, 0x3c841b63)
+ 400
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xf37b8e7a, 0x1bc33e4e)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x008e34c7)
+
+
+
+
+ (0x00002c8b, 0x000001d5)
+ Player Controller
+ (0x5f426dce, 0x08456e13)
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Stimulation name
+ OVTK_StimulationId_Label_00
+ OVTK_StimulationId_TrainCompleted
+ false
+
+
+ (0xcc14d8d6, 0xf27ecb73)
+ Action to perform
+ Pause
+ Stop
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 416
+
+
+ (0x207c9054, 0x3c841b63)
+ 448
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x568d148e, 0x650792b3)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x00301c7f)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xce18836a, 0x9c0eb403)
+ 2
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+
+
+ (0x00002f94, 0x00000341)
+ Non Target Selection
+ (0x426163d1, 0x324237b0)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+ (0x6f752dd0, 0x082a321e)
+ Input stimulations
+
+
+
+
+
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Epoch duration (in sec)
+ 1
+ 0.600000
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Epoch offset (in sec)
+ 0.5
+ 0.000000
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Stimulation to epoch from
+ OVTK_GDF_VEP
+ OVTK_StimulationId_NonTarget
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 112
+
+
+ (0x207c9054, 0x3c841b63)
+ 528
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xa79941ae, 0x80708445)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002bbddf)
+
+
+
+
+ (0x000063a5, 0x0000197c)
+ Target Selection
+ (0x426163d1, 0x324237b0)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+ (0x6f752dd0, 0x082a321e)
+ Input stimulations
+
+
+
+
+
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Epoch duration (in sec)
+ 1
+ 0.600000
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Epoch offset (in sec)
+ 0.5
+ 0.000000
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Stimulation to epoch from
+ OVTK_GDF_VEP
+ OVTK_StimulationId_Target
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 112
+
+
+ (0x207c9054, 0x3c841b63)
+ 336
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xa79941ae, 0x80708445)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002b4e91)
+
+
+
+
+ (0x000078d0, 0x000029bc)
+ Epoch average
+ (0x21283d9f, 0xe76ff640)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input epochs
+
+
+
+
+
+
+
+ (0x6530bdb1, 0xd057bbfe)
+ Averaging type
+ Epoch block average
+ Epoch block average
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Epoch count
+ 4
+ 1
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 176
+
+
+ (0x207c9054, 0x3c841b63)
+ 336
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xb73cee83, 0xf7215d60)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0x8d21ff41, 0xdf6afe7e)
+ ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002b5470)
+
+
+
+
+ (0x000078f9, 0x000063eb)
+ xDAWN Spatial Filter
+ (0xdd332c6c, 0x195b4fd4)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input Signal
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ Spatial Filter Coefficients
+ 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1
+ 9.970221e-001 -3.729500e-002 -1.177390e-002 2.814447e-002 -3.772446e-003 3.371324e-002 -5.480030e-003 8.893039e-003 -1.565213e-002 -9.956694e-003 -2.347757e-002 -2.312669e-003 -1.847227e-002 -7.550644e-004 -8.423513e-003 3.243223e-002 2.079848e-002 5.079737e-001 -2.835127e-002 8.259231e-002 -3.621803e-001 -2.004259e-001 -2.432480e-001 -1.861558e-001 -3.798139e-001 9.614762e-002 3.407766e-001 -2.158597e-001 3.720552e-001 7.500469e-002 -8.628774e-002 -3.182367e-002 5.923482e-002 4.124707e-001 2.083913e-001 -2.629501e-001 2.023081e-001 -2.658446e-001 4.022738e-001 -1.785569e-001 4.450742e-001 3.549239e-001 1.550204e-002 3.750389e-002 3.114249e-002 9.273764e-002 -7.093797e-002 -2.610929e-001
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Number of Output Channels
+ 4
+ 3
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Number of Input Channels
+ 4
+ 16
+ false
+
+
+ (0x330306dd, 0x74a95f98)
+ Filter matrix file
+
+
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ -32
+
+
+ (0x207c9054, 0x3c841b63)
+ 304
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x81db9bf9, 0xf1cf4ed7)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0x8d21ff41, 0xdf6afe7e)
+ ${SPATIAL_FILTER_CONFIG}
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002b601f)
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 3
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+
+
+ (0x00007b56, 0x000033f9)
+ Epoch average
+ (0x21283d9f, 0xe76ff640)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input epochs
+
+
+
+
+
+
+
+ (0x6530bdb1, 0xd057bbfe)
+ Averaging type
+ Epoch block average
+ Epoch block average
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Epoch count
+ 4
+ 1
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 176
+
+
+ (0x207c9054, 0x3c841b63)
+ 528
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xb73cee83, 0xf7215d60)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0x8d21ff41, 0xdf6afe7e)
+ ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002c2168)
+
+
+
+
+ (0x0a5a6a4a, 0x1d92a778)
+ Classifier trainer
+ (0xf3dae8a8, 0x3b444154)
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+ (0x17341935, 0x152ff448)
+ Features for class 1
+
+
+ (0x17341935, 0x152ff448)
+ Features for class 2
+
+
+
+
+
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Train trigger
+ OVTK_StimulationId_Train
+ ${CLASSIFIER_TRAIN_TRIGGER}
+ false
+
+
+ (0x330306dd, 0x74a95f98)
+ Filename to save configuration to
+ ${Path_UserData}/my-classifier.xml
+ ${CLASSIFIER_CONFIG}
+ false
+
+
+ (0xbe9eba5c, 0xa8415d37)
+ Multiclass strategy to apply
+ Native
+ ${MULTICLASS_STRATEGY}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Class 1 label
+ OVTK_StimulationId_Label_01
+ ${CLASS_1}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Class 2 label
+ OVTK_StimulationId_Label_02
+ ${CLASS_2}
+ false
+
+
+ (0xd765a736, 0xed708c65)
+ Algorithm to use
+ Linear Discrimimant Analysis (LDA)
+ ${ALGORITHM}
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Use shrinkage
+ false
+ ${USE_SHRINKAGE}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Shrinkage coefficient (-1 == auto)
+ -1.000000
+ ${SHRINKAGE_COEFFICIENT}
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Shrinkage: Force diagonal cov (DDA)
+ false
+ ${SHRINKAGE_FORCE_DIAGONAL_COV}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Number of partitions for k-fold cross-validation test
+ 10
+ ${N_PARTITIONS}
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Balance classes
+ false
+ ${CLASS_BALANCE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 336
+
+
+ (0x207c9054, 0x3c841b63)
+ 448
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x9de21779, 0x37776c89)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 6
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 3
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+
+
+ (0x00000004, 0x00007d3a)
+
+ (0x000078f9, 0x000063eb)
+ 0
+
+
+ (0x000063a5, 0x0000197c)
+ 0
+
+
+
+ (0x00000192, 0x0000714e)
+
+ (0x00001f83, 0x00004e32)
+ 1
+
+
+ (0x000078f9, 0x000063eb)
+ 0
+
+
+
+ (0x00001717, 0x00003cf9)
+
+ (0x000078d0, 0x000029bc)
+ 0
+
+
+ (0x00000b2d, 0x00006d61)
+ 0
+
+
+
+ (0x00001770, 0x00000ded)
+
+ (0x00001f83, 0x00004e32)
+ 2
+
+
+ (0x000063a5, 0x0000197c)
+ 1
+
+
+
+ (0x0000227f, 0x00003a6f)
+
+ (0x000078f9, 0x000063eb)
+ 0
+
+
+ (0x00002f94, 0x00000341)
+ 0
+
+
+
+ (0x00002599, 0x0000329b)
+
+ (0x000063a5, 0x0000197c)
+ 0
+
+
+ (0x000078d0, 0x000029bc)
+ 0
+
+
+
+ (0x00004098, 0x00007e81)
+
+ (0x00002f94, 0x00000341)
+ 0
+
+
+ (0x00007b56, 0x000033f9)
+ 0
+
+
+
+ (0x00004674, 0x000061af)
+
+ (0x00007b56, 0x000033f9)
+ 0
+
+
+ (0x00000d41, 0x000013b7)
+ 0
+
+
+
+ (0x00006821, 0x00000c75)
+
+ (0x00001f83, 0x00004e32)
+ 2
+
+
+ (0x00002f94, 0x00000341)
+ 1
+
+
+
+ (0x175e412c, 0x0692f4ee)
+
+ (0x00000d41, 0x000013b7)
+ 0
+
+
+ (0x0a5a6a4a, 0x1d92a778)
+ 2
+
+
+
+ (0x5a67b7d8, 0x1cf07f9a)
+
+ (0x00001f83, 0x00004e32)
+ 2
+
+
+ (0x0a5a6a4a, 0x1d92a778)
+ 0
+
+
+
+ (0x616495af, 0x5c020b32)
+
+ (0x0a5a6a4a, 0x1d92a778)
+ 0
+
+
+ (0x00002c8b, 0x000001d5)
+ 0
+
+
+
+ (0x63fa63da, 0x0e447c5b)
+
+ (0x00000b2d, 0x00006d61)
+ 0
+
+
+ (0x0a5a6a4a, 0x1d92a778)
+ 1
+
+
+
+
+
+ (0x00005277, 0x00007fbe)
+ <u><b><big>Scenario Overview</big></b></u>
+
+This scenario should be used to train
+the LDA classifier.
+
+At the end of the training, you will have an estimation
+of the classifier performance printed in the console.
+If this performance is lower than 70%, just run a new
+<i>4-online</i> session to have better results.
+
+<u><b>Note:</b></u> in order to run this scenario,
+the spatial filter should have been trained using
+<i>2-train-xDAWN</i> !
+
+
+ (0x473d9a43, 0x97fc0a97)
+ 688
+
+
+ (0x7234b86b, 0x2b8651a5)
+ -64
+
+
+
+
+
+
+ (0x0000775c, 0x000078ff)
+ (0x3bcce5d2, 0x43f2d968)
+ []
+
+
+
+
+ (0x790d75b8, 0x3bb90c33)
+ Yann Renard
+
+
+ (0x8c1fc55b, 0x7b433dc2)
+
+
+
+ (0x9f5c4075, 0x4a0d3666)
+ LDA Classifier Trainer
+
+
+ (0xf36a1567, 0xd13c53da)
+ http://openvibe.inria.fr/p300-speller-xdawn/
+
+
+ (0xf6b2e3fa, 0x7bd43926)
+ xDAWN P300 Speller
+
+
+ (0xf8034a49, 0x8b3f37cc)
+ INRIA
+
+
+
\ No newline at end of file
diff --git a/scenarios/p300-tactile-4-online.xml b/scenarios/p300-tactile-4-online.xml
new file mode 100644
index 0000000..9ea096c
--- /dev/null
+++ b/scenarios/p300-tactile-4-online.xml
@@ -0,0 +1,2008 @@
+
+ 2
+ OpenViBE Designer
+ 3.2.0
+
+
+
+
+
+ (0x000014a9, 0x000078ed)
+ UDPStimcodeSender
+ (0xc326e786, 0xcd512965)
+
+
+ (0x6f752dd0, 0x082a321e)
+ StimcodeIn
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ FeatherIP
+ 192.168.4.1
+ ${FEATHER_IP}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ FeatherPort
+ 8888
+ ${FEATHER_PORT}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ RowStimulationBase
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 576
+
+
+ (0x207c9054, 0x3c841b63)
+ 288
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xc475930f, 0xbea8aabd)
+
+
+ (0x666fffff, 0x666fffff)
+
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 3
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+
+
+ (0x00002bb3, 0x0000133c)
+ Acquisition client
+ (0x35d225cb, 0x3e6e3a5f)
+
+
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ Acquisition server hostname
+ ${AcquisitionServer_HostName}
+ ${ACQUISITION_SERVER_HOST_NAME}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Acquisition server port
+ 1024
+ ${ACQUISITION_SERVER_PORT}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ -176
+
+
+ (0x207c9054, 0x3c841b63)
+ 624
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x0d4656c0, 0xc95b1fa8)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x007036bf)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xc80ce8af, 0xf699f813)
+ 5
+
+
+ (0xce18836a, 0x9c0eb403)
+ 2
+
+
+
+
+ (0x00003d0e, 0x000025ef)
+ Player Controller
+ (0x5f426dce, 0x08456e13)
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Stimulation name
+ OVTK_StimulationId_Label_00
+ OVTK_StimulationId_ExperimentStop
+ false
+
+
+ (0xcc14d8d6, 0xf27ecb73)
+ Action to perform
+ Pause
+ Stop
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 400
+
+
+ (0x207c9054, 0x3c841b63)
+ 976
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x568d148e, 0x650792b3)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xce18836a, 0x9c0eb403)
+ 2
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+
+
+ (0x00003dec, 0x00004c7b)
+ Stimulation based epoching
+ (0x426163d1, 0x324237b0)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+ (0x6f752dd0, 0x082a321e)
+ Input stimulations
+
+
+
+
+
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Epoch duration (in sec)
+ 1
+ 0.6
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Epoch offset (in sec)
+ 0.5
+ 0
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Stimulation to epoch from
+ OVTK_GDF_VEP
+ OVTK_StimulationId_VisualStimulationStart
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 256
+
+
+ (0x207c9054, 0x3c841b63)
+ 496
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xa79941ae, 0x80708445)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x005ced91)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xc80ce8af, 0xf699f813)
+ 2
+
+
+ (0xce18836a, 0x9c0eb403)
+ 3
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 2
+
+
+
+
+ (0x0000445b, 0x000068e3)
+ P300 accumulator
+ (0x0b5a2787, 0x02750621)
+
+
+ (0x6f752dd0, 0x082a321e)
+ New input
+
+
+ (0x6f752dd0, 0x082a321e)
+ New input(1)
+
+
+
+
+
+
+
+
+ (0xb0d0db45, 0x49cbc34a)
+ Lua Script
+
+ ${SCRIPT_P300_ACCUMULATOR}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Row stimulation base
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Column stimulation base
+ OVTK_StimulationId_Label_07
+ ${COL_BASE}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Segment start
+ OVTK_StimulationId_SegmentStart
+ OVTK_StimulationId_TrialStart
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Segment stop
+ OVTK_StimulationId_SegmentStop
+ OVTK_StimulationId_TrialStop
+ false
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 512
+
+
+ (0x207c9054, 0x3c841b63)
+ 656
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xd6e3f48b, 0xbee3523a)
+
+
+ (0x61d11811, 0x71e65362)
+
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x0304fb88)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00004633, 0x00007270)
+ UDPStimcodeSender
+ (0xc326e786, 0xcd512965)
+
+
+ (0x6f752dd0, 0x082a321e)
+ StimcodeIn
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ FeatherIP
+ 192.168.4.1
+ ${FEATHER_IP}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ FeatherPort
+ 8888
+ ${FEATHER_PORT}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ RowStimulationBase
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 592
+
+
+ (0x207c9054, 0x3c841b63)
+ 432
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xc475930f, 0xbea8aabd)
+
+
+ (0x666fffff, 0x666fffff)
+
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 3
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+
+
+ (0x0000470b, 0x00001b1d)
+ Tactile Stimulator
+ (0x0b5a2787, 0x02750621)
+
+
+
+
+
+ (0xb0d0db45, 0x49cbc34a)
+ Lua Script
+
+ ${SCRIPT_TACTILE_STIMULATOR}
+ false
+
+
+ (0x00000000, 0xbae13066)
+ (0x2c132d6e, 0x44ab0d97)
+ Row Stimulation Base
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+ (0x00000000, 0x5518f982)
+ (0x2c132d6e, 0x44ab0d97)
+ Column Stimulation Base
+ OVTK_StimulationId_Label_07
+ ${COL_BASE}
+ false
+
+
+ (0x00000000, 0xc152613d)
+ (0x007deef9, 0x2f3e95c6)
+ Number of Tactilos
+ 6
+ ${N_TACTILOS}
+ false
+
+
+ (0x00000000, 0xa0308929)
+ (0x007deef9, 0x2f3e95c6)
+ Number of Repetitions
+ 6
+ ${N_REPETITIONS}
+ false
+
+
+ (0x00000000, 0xcde95a6f)
+ (0x007deef9, 0x2f3e95c6)
+ Number of Trials
+ 6
+ ${N_TRIALS}
+ false
+
+
+ (0x00000000, 0x9b3f9b7b)
+ (0x512a166f, 0x5c3ef83f)
+ Stimulus Duration (in sec)
+ 0.2
+ ${STIM_DURATION}
+ false
+
+
+ (0x00000000, 0x583ad367)
+ (0x512a166f, 0x5c3ef83f)
+ No Stimulus Duration (in sec)
+ 0.1
+ ${NO_STIM_DURATION}
+ false
+
+
+ (0x00000000, 0xfc1c2fb6)
+ (0x512a166f, 0x5c3ef83f)
+ Inter-Repetition Delay (in sec)
+ 1.0
+ ${INTER_REPETITION_DELAY}
+ false
+
+
+ (0x00000000, 0x0d9a1e18)
+ (0x512a166f, 0x5c3ef83f)
+ Inter-Trial Delay (in sec)
+ 3.0
+ ${INTER_TRIAL_DELAY}
+ false
+
+
+ (0x00000000, 0xaeefd500)
+ (0x2c132d6e, 0x44ab0d97)
+ Start Stimulation
+ OVTK_StimulationId_Label_00
+ ${START_STIMULATION}
+ false
+
+
+ (0x00000000, 0xef5eb0e5)
+ (0x2cdb2f0b, 0x12f231ea)
+ Free Spelling
+ false
+ ${FREE_SPELLING}
+ false
+
+
+ (0x00000000, 0x4ead155d)
+ (0x007deef9, 0x2f3e95c6)
+ Start Delay
+ 20
+ ${START_DELAY}
+ false
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 416
+
+
+ (0x207c9054, 0x3c841b63)
+ 352
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xd6e3f48b, 0xbee3523a)
+
+
+ (0x61d11811, 0x71e65362)
+
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00004a5a, 0x00003754)
+ Identity
+ (0x5dffe431, 0x35215c50)
+
+
+ (0x403488e7, 0x565d70b6)
+ Input stream 1
+
+
+ (0xf3ca49e1, 0x35fad535)
+ (0x5ba36127, 0x195feae1)
+ Input stream 2
+
+
+ (0xf1fd76d9, 0x8414a8e1)
+ (0x6f752dd0, 0x082a321e)
+ Input stream 3
+
+
+
+
+
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 112
+
+
+ (0x207c9054, 0x3c841b63)
+ 608
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xa8ffe2a3, 0x27038f03)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00006d0d, 0x000031d8)
+ Tactile Target Generation
+ (0x0b5a2787, 0x02750621)
+
+
+ (0x6f752dd0, 0x082a321e)
+ New input
+
+
+
+
+
+
+
+ (0xb0d0db45, 0x49cbc34a)
+ Lua Script
+
+ ${SCRIPT_TARGET_GENERATION}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Row Stimulation Base
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+ (0x00000000, 0x7534ff4f)
+ (0x2c132d6e, 0x44ab0d97)
+ Column Stimulation Base
+ OVTK_StimulationId_Label_07
+ ${COL_BASE}
+ false
+
+
+ (0x00000000, 0xeb4fffa2)
+ (0x007deef9, 0x2f3e95c6)
+ Delay Before Sending (in sec)
+ 2
+ ${SEND_DELAY}
+ false
+
+
+ (0xf33dddda, 0xfd2c04a3)
+ (0x2cdb2f0b, 0x12f231ea)
+ Free Spelling
+ false
+ ${FREE_SPELLING}
+ false
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 528
+
+
+ (0x207c9054, 0x3c841b63)
+ 432
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xd6e3f48b, 0xbee3523a)
+
+
+ (0x61d11811, 0x71e65362)
+
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x0334c6b7)
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 1
+
+
+ (0xf191c1c8, 0xa0123976)
+
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x00007e4e, 0x00006b7c)
+ EEG Signal
+ (0x0055be5f, 0x087bdd12)
+
+
+ (0x5ba36127, 0x195feae1)
+ Data
+
+
+ (0x6f752dd0, 0x082a321e)
+ Stimulations
+
+
+ (0x6ab26b81, 0x0f8c02f3)
+ Channel Units
+
+
+
+
+ (0x5de046a6, 0x086340aa)
+ Display Mode
+ Scan
+ Scan
+ false
+
+
+ (0x33a30739, 0x00d5299b)
+ Auto vertical scale
+ Per channel
+ Per channel
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Scale refresh interval (secs)
+ 5
+ 5
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Scale
+ 100
+ 100
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Vertical Offset
+ 0
+ 0
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Time Scale
+ 10
+ 10
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Horizontal ruler
+ true
+ true
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Vertical ruler
+ false
+ false
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Multiview
+ false
+ false
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 400
+
+
+ (0x207c9054, 0x3c841b63)
+ 880
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x92c056a7, 0x2dc71aff)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xce18836a, 0x9c0eb403)
+ 9
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 3
+
+
+
+
+ (0x001a8c16, 0x15ba27e3)
+ Temporal filter
+ (0xb4f9d042, 0x9d79f2e5)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+
+
+
+
+
+ (0x2f2c606c, 0x8512ed68)
+ Filter method
+ Butterworth
+ ${FILTER_METHOD}
+ false
+
+
+ (0xfa20178e, 0x4cba62e9)
+ Filter type
+ Low pass
+ ${FILTER_TYPE}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Filter order
+ 4
+ ${FILTER_ORDER}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Low cut frequency (Hz)
+ 29
+ ${LOW_CUT_FREQUENCY}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ High cut frequency (Hz)
+ 40
+ ${HIGH_CUT_FREQUENCY}
+ false
+
+
+ (0x512a166f, 0x5c3ef83f)
+ Pass band ripple (dB)
+ 0.5
+ ${PASS_BAND_RIPPLE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ -16
+
+
+ (0x207c9054, 0x3c841b63)
+ 480
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x27a4ceec, 0x876d6384)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x0040f8d4)
+
+
+
+
+ (0x008f57e1, 0x2790537b)
+ Generic stream writer
+ (0x09c92218, 0x7c1216f8)
+
+
+ (0x403488e7, 0x565d70b6)
+ Input stream 1
+
+
+ (0x5ba36127, 0x195feae1)
+ Input stream 2
+
+
+ (0x6f752dd0, 0x082a321e)
+ Input stream 3
+
+
+
+
+ (0x330306dd, 0x74a95f98)
+ Filename
+
+ ${OUTPUT_FILE_NAME}
+ false
+
+
+ (0x2cdb2f0b, 0x12f231ea)
+ Use compression
+ false
+ false
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 400
+
+
+ (0x207c9054, 0x3c841b63)
+ 752
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x89a08108, 0xc8d1fac1)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x007b2629)
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x09c41dd7, 0x09f2e37b)
+ Epoch average
+ (0x21283d9f, 0xe76ff640)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input epochs
+
+
+
+
+
+
+
+ (0x6530bdb1, 0xd057bbfe)
+ Averaging type
+ Epoch block average
+ Epoch block average
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Epoch count
+ 4
+ 1
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 320
+
+
+ (0x207c9054, 0x3c841b63)
+ 496
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xb73cee83, 0xf7215d60)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0x8d21ff41, 0xdf6afe7e)
+ ${Player_ScenarioDirectory}/cfg/p300-epoch-average.cfg
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x000eaa12)
+
+
+
+
+ (0x0e30a73f, 0x7ae6d95a)
+ Feature aggregator
+ (0x00682417, 0x453635f9)
+
+
+ (0x544a003e, 0x6dcba5f6)
+ Input stream 1
+
+
+
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 384
+
+
+ (0x207c9054, 0x3c841b63)
+ 496
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xb5d15cc9, 0x6c8c28fb)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x000f9a38)
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+ (0x28b5e192, 0x37431137)
+ Classifier processor
+ (0x5fe23d17, 0x95b0452c)
+
+
+ (0x17341935, 0x152ff448)
+ Features
+
+
+ (0x6f752dd0, 0x082a321e)
+ Commands
+
+
+
+
+
+
+
+
+
+ (0x330306dd, 0x74a95f98)
+ Filename to load configuration from
+
+ ${CLASSIFIER_CONFIG}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 448
+
+
+ (0x207c9054, 0x3c841b63)
+ 560
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xa6c8e548, 0x9e3e405b)
+
+
+ (0xc73e83ec, 0xf855c5bc)
+ false
+
+
+ (0xc80ce8af, 0xf699f813)
+ 3
+
+
+ (0xce18836a, 0x9c0eb403)
+ 1
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 2
+
+
+
+
+ (0x2e63c8c5, 0x79a8ae7b)
+ P300 Speller Visualization
+ (0x195e41d6, 0x6e684d47)
+
+
+ (0x6f752dd0, 0x082a321e)
+ Sequence stimulations
+
+
+ (0x6f752dd0, 0x082a321e)
+ Target stimulations
+
+
+ (0x6f752dd0, 0x082a321e)
+ Row selection stimulations
+
+
+ (0x6f752dd0, 0x082a321e)
+ Column selection stimulations
+
+
+
+
+
+
+
+ (0x330306dd, 0x74a95f98)
+ Interface filename
+ ${Path_Data}/plugins/simple-visualization/p300-speller.glade
+ ${TACTILE_UI}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Row stimulation base
+ OVTK_StimulationId_Label_01
+ ${ROW_BASE}
+ false
+
+
+ (0x2c132d6e, 0x44ab0d97)
+ Column stimulation base
+ OVTK_StimulationId_Label_07
+ ${COL_BASE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Flash background color
+ 10,10,10
+ ${FLASH_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Flash foreground color
+ 100,100,100
+ ${FLASH_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Flash font size
+ 100
+ ${FLASH_FONT_SIZE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ No flash background color
+ 0,0,0
+ ${NO_FLASH_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ No flash foreground color
+ 50,50,50
+ ${NO_FLASH_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ No flash font size
+ 75
+ ${NO_FLASH_FONT_SIZE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Target background color
+ 10,40,10
+ ${TARGET_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Target foreground color
+ 60,100,60
+ ${TARGET_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Target font size
+ 100
+ ${TARGET_FONT_SIZE}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Selected background color
+ 70,20,20
+ ${SELECTED_BG}
+ false
+
+
+ (0x7f45a2a9, 0x7db12219)
+ Selected foreground color
+ 30,10,10
+ ${SELECTED_FG}
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Selected font size
+ 100
+ ${SELECTED_FONT_SIZE}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 736
+
+
+ (0x207c9054, 0x3c841b63)
+ 384
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x8d89d30c, 0xa939693a)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x017985f8)
+
+
+
+
+ (0x40e41bf9, 0x5c44b1b1)
+ Signal Decimation
+ (0x012f4bea, 0x3be37c66)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input signal
+
+
+
+
+
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Decimation factor
+ 8
+ ${SIGNAL_DECIMATION_FACTOR}
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 32
+
+
+ (0x207c9054, 0x3c841b63)
+ 480
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x5082af41, 0xd0fbf4cb)
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x002cae02)
+
+
+
+
+ (0x6d03daab, 0x55fdea78)
+ xDAWN Spatial Filter
+ (0xdd332c6c, 0x195b4fd4)
+
+
+ (0x5ba36127, 0x195feae1)
+ Input Signal
+
+
+
+
+
+
+
+ (0x79a9edeb, 0x245d83fc)
+ Spatial Filter Coefficients
+ 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1
+ 1;0;0;0;0;1;0;0;0;0;1;0;0;0;0;1
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Number of Output Channels
+ 4
+ 4
+ false
+
+
+ (0x007deef9, 0x2f3e95c6)
+ Number of Input Channels
+ 4
+ 4
+ false
+
+
+ (0x330306dd, 0x74a95f98)
+ Filter matrix file
+
+
+ false
+
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ 192
+
+
+ (0x207c9054, 0x3c841b63)
+ 480
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0x81db9bf9, 0xf1cf4ed7)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0x8d21ff41, 0xdf6afe7e)
+ ${SPATIAL_FILTER_CONFIG}
+
+
+ (0xc80ce8af, 0xf699f813)
+ 1
+
+
+ (0xce18836a, 0x9c0eb403)
+ 3
+
+
+ (0xcfad85b0, 0x7c6d841c)
+ 1
+
+
+
+
+ (0x6f54afd0, 0x5f2e0f65)
+ Identity
+ (0x5dffe431, 0x35215c50)
+
+
+ (0x403488e7, 0x565d70b6)
+ Input stream 1
+
+
+ (0x5ba36127, 0x195feae1)
+ Input stream 2
+
+
+ (0x6f752dd0, 0x082a321e)
+ Input stream 3
+
+
+
+
+
+
+
+
+
+ (0x17ee7c08, 0x94c14893)
+
+
+
+ (0x1fa7a38f, 0x54edbe0b)
+ -112
+
+
+ (0x207c9054, 0x3c841b63)
+ 608
+
+
+ (0x30a4e5c9, 0x83502953)
+
+
+
+ (0x4e7b798a, 0x183beafb)
+ (0xa8ffe2a3, 0x27038f03)
+
+
+ (0x527ad68d, 0x16d746a0)
+
+
+
+ (0xc46b3d00, 0x3e0454e1)
+ (0x00000000, 0x005f48d2)
+
+
+ (0xfba64161, 0x65304e21)
+
+
+
+
+
+
+
+ (0x0000002a, 0x00006309)
+
+ (0x00002bb3, 0x0000133c)
+ 1
+
+
+ (0x6f54afd0, 0x5f2e0f65)
+ 1
+
+
+
+ (0x0000055b, 0x00002ed7)
+
+ (0x00004a5a, 0x00003754)
+ (0xc0b6e1cb, 0x422c84cd)
+
+
+ (0x00003dec, 0x00004c7b)
+ 1
+
+
+
+ (0x0000062d, 0x00006549)
+
+ (0x0000445b, 0x000068e3)
+ 1
+
+
+ (0x2e63c8c5, 0x79a8ae7b)
+ 3
+
+
+
+ (0x000016d9, 0x00000c37)
+
+ (0x6f54afd0, 0x5f2e0f65)
+ 2
+
+
+ (0x00004a5a, 0x00003754)
+ (0xf1fd76d9, 0x8414a8e1)
+
+
+
+ (0x000023b1, 0x000028ec)
+
+ (0x00004a5a, 0x00003754)
+ (0xc0b6e1cb, 0x422c84cd)
+
+
+ (0x008f57e1, 0x2790537b)
+ 2
+
+
+
+ (0x00002527, 0x00001976)
+
+ (0x0000470b, 0x00001b1d)
+ 0
+
+
+ (0x00006d0d, 0x000031d8)
+ 0
+
+
+
+ (0x00002dc2, 0x00004a4b)
+
+ (0x00004a5a, 0x00003754)
+ (0x35a90701, 0x1bcf1f01)
+
+
+ (0x6d03daab, 0x55fdea78)
+ 0
+
+
+
+ (0x00002e50, 0x00003fba)
+
+ (0x00003dec, 0x00004c7b)
+ 0
+
+
+ (0x09c41dd7, 0x09f2e37b)
+ 0
+
+
+
+ (0x00003835, 0x000030a7)
+
+ (0x00002bb3, 0x0000133c)
+ 0
+
+
+ (0x6f54afd0, 0x5f2e0f65)
+ 0
+
+
+
+ (0x000038d0, 0x0000016c)
+
+ (0x00004633, 0x00007270)
+ 0
+
+
+ (0x2e63c8c5, 0x79a8ae7b)
+ 1
+
+
+
+ (0x00003eec, 0x00000aed)
+
+ (0x40e41bf9, 0x5c44b1b1)
+ 0
+
+
+ (0x00004a5a, 0x00003754)
+ (0xf3ca49e1, 0x35fad535)
+
+
+
+ (0x0000416b, 0x00000842)
+
+ (0x6f54afd0, 0x5f2e0f65)
+ 1
+
+
+ (0x001a8c16, 0x15ba27e3)
+ 0
+
+
+
+ (0x0000430a, 0x00000e95)
+
+ (0x6f54afd0, 0x5f2e0f65)
+ 0
+
+
+ (0x00004a5a, 0x00003754)
+ 0
+
+
+
+ (0x000045c7, 0x00006136)
+
+ (0x00004a5a, 0x00003754)
+ (0xc0b6e1cb, 0x422c84cd)
+
+
+ (0x00007e4e, 0x00006b7c)
+ 1
+
+
+
+ (0x00004d78, 0x00001217)
+
+ (0x0000470b, 0x00001b1d)
+ 0
+
+
+ (0x000014a9, 0x000078ed)
+ 0
+
+
+
+ (0x00004e7f, 0x00006894)
+
+ (0x00004a5a, 0x00003754)
+ (0x35a90701, 0x1bcf1f01)
+
+
+ (0x00007e4e, 0x00006b7c)
+ 0
+
+
+
+ (0x00004ebb, 0x00007aeb)
+
+ (0x00002bb3, 0x0000133c)
+ 2
+
+
+ (0x6f54afd0, 0x5f2e0f65)
+ 2
+
+
+
+ (0x00004f08, 0x000009d9)
+
+ (0x0000445b, 0x000068e3)
+ 0
+
+
+ (0x2e63c8c5, 0x79a8ae7b)
+ 2
+
+
+
+ (0x0000631e, 0x000002b3)
+
+ (0x00006d0d, 0x000031d8)
+ 0
+
+
+ (0x00004633, 0x00007270)
+ 0
+
+
+
+ (0x00006463, 0x000063af)
+
+ (0x00004a5a, 0x00003754)
+ 0
+
+
+ (0x008f57e1, 0x2790537b)
+ 0
+
+
+
+ (0x00006bd5, 0x00005775)
+
+ (0x00004a5a, 0x00003754)
+ (0xc0b6e1cb, 0x422c84cd)
+
+
+ (0x0000445b, 0x000068e3)
+ 1
+
+
+
+ (0x00006c7c, 0x00004ead)
+
+ (0x00004a5a, 0x00003754)
+ (0xc0b6e1cb, 0x422c84cd)
+
+
+ (0x00003d0e, 0x000025ef)
+ 0
+
+
+
+ (0x0000725e, 0x00006278)
+
+ (0x000014a9, 0x000078ed)
+ 0
+
+
+ (0x2e63c8c5, 0x79a8ae7b)
+ 0
+
+
+
+ (0x0000756d, 0x000027c0)
+
+ (0x6d03daab, 0x55fdea78)
+ 0
+
+
+ (0x00003dec, 0x00004c7b)
+ 0
+
+
+
+ (0x00007c68, 0x00001d4e)
+
+ (0x00004a5a, 0x00003754)
+ (0x35a90701, 0x1bcf1f01)
+
+
+ (0x008f57e1, 0x2790537b)
+ 1
+
+
+
+ (0x00f1a11e, 0x4a813bb8)
+
+ (0x09c41dd7, 0x09f2e37b)
+ 0
+
+
+ (0x0e30a73f, 0x7ae6d95a)
+ 0
+
+
+
+ (0x136dcee0, 0x20dbb005)
+
+ (0x28b5e192, 0x37431137)
+ 0
+
+
+ (0x0000445b, 0x000068e3)
+ 0
+
+
+
+ (0x1a535826, 0x3804f216)
+
+ (0x001a8c16, 0x15ba27e3)
+ 0
+
+
+ (0x40e41bf9, 0x5c44b1b1)
+ 0
+
+
+
+ (0x3ccbcbed, 0x529f3e1d)
+
+ (0x0e30a73f, 0x7ae6d95a)
+ 0
+
+
+ (0x28b5e192, 0x37431137)
+ 0
+
+
+
+
+
+ (0x0000363f, 0x00001c2b)
+ The P300 Speller Visualization
+sends the markers (stimulations) directly to
+Acquisition Server using TCP Tagging.
+
+
+ (0x473d9a43, 0x97fc0a97)
+ 624
+
+
+ (0x7234b86b, 0x2b8651a5)
+ 720
+
+
+
+
+ (0x1012e1de, 0x78e57c3e)
+ The stimulation part of the scenario is
+similar to scenario <i>p300-tactile-1-acquisition</i>.
+
+If set to <i>Free Spelling</i>,
+the <i>Target Generation</i> is inactive.
+
+If set to <i>Copy Spelling</i>, you can train the spatial-filter
+and p300-classifier again on the recorded data
+
+
+
+ (0x473d9a43, 0x97fc0a97)
+ 64
+
+
+ (0x7234b86b, 0x2b8651a5)
+ 560
+
+
+
+
+ (0x3726b6f5, 0x3dea5d78)
+ <u><b><big>Scenario Overview</big></b></u>
+
+This scenario can be used online once the
+spatial filter and the classifiers are trained.
+
+Can be used for <i>Copy Spelling</i> to retrain
+the <i>spatial filter</i> and <i>classifier</i>, if the
+performance doesn't fit the requirements.
+Can be used for a <i>Free Spelling</i> Session.
+
+Spelling automatically starts delayed to the start
+of scenario execution.
+
+First the target Tactilo will vibrate and flash in the
+<i>Speller Visualization</i>(Copy Spelling Only).
+After that you have to Focus on your chosen
+(or the predetermined Target), while all Tactilos
+will vibrate (flash) several times.
+This will be repeated for a defined number of trials.
+After each Trial, the detected Tactilo will be presented
+in the <i>Speller Visualization</i>
+
+
+ (0x473d9a43, 0x97fc0a97)
+ 64
+
+
+ (0x7234b86b, 0x2b8651a5)
+ -16
+
+
+
+
+
+
+ (0x0000775c, 0x000078ff)
+ (0x3bcce5d2, 0x43f2d968)
+ [{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":2,"height":320,"identifier":"(0x00001d01, 0x00007b57)","name":"OV Tactile Online","parentIdentifier":"(0xffffffff, 0xffffffff)","type":1,"width":475},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00001590, 0x00005323)","index":0,"name":"Tactile Visualization","parentIdentifier":"(0x00001d01, 0x00007b57)","type":2},{"boxIdentifier":"(0xffffffff, 0xffffffff)","childCount":1,"identifier":"(0x00002e00, 0x00003101)","index":1,"name":"EEG Signal","parentIdentifier":"(0x00001d01, 0x00007b57)","type":2},{"boxIdentifier":"(0x2e63c8c5, 0x79a8ae7b)","childCount":0,"identifier":"(0x00001d62, 0x00007def)","index":0,"parentIdentifier":"(0x00001590, 0x00005323)","type":3},{"boxIdentifier":"(0x00007e4e, 0x00006b7c)","childCount":0,"identifier":"(0x00001aa9, 0x000006f8)","index":0,"parentIdentifier":"(0x00002e00, 0x00003101)","type":3}]
+
+
+
+
+ (0x790d75b8, 0x3bb90c33)
+ Jussi T. Lindgren
+
+
+ (0x8c1fc55b, 0x7b433dc2)
+
+
+
+ (0x9f5c4075, 0x4a0d3666)
+ Online Use
+
+
+ (0xf36a1567, 0xd13c53da)
+ http://openvibe.inria.fr/p300-speller-xdawn/
+
+
+ (0xf6b2e3fa, 0x7bd43926)
+ xDAWN P300 Speller
+
+
+ (0xf8034a49, 0x8b3f37cc)
+ INRIA
+
+
+
\ No newline at end of file
diff --git a/scenarios/p300-tactile.ui b/scenarios/p300-tactile.ui
new file mode 100644
index 0000000..2abccde
--- /dev/null
+++ b/scenarios/p300-tactile.ui
@@ -0,0 +1,253 @@
+
+
+
+
+
+
+ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK
+ P300 Speller
+ dialog
+
+
+ 640
+ True
+ both
+
+
+ True
+ Show Target Text
+ gtk-info
+ True
+
+
+ False
+ True
+
+
+
+
+ True
+ Show Result Text
+ gtk-info
+ True
+
+
+ False
+ True
+
+
+
+
+
+