Page 1 of 1

Subtracting one signal from another

Posted: Wed Jul 15, 2015 9:36 am
by DJM
Hi All

Need some help from the experts as clearly I am not one... :lol:

I have two small questions:

1. I am trying to do a simple calculation to determine the F4 ( sensor signal ) - F3 ( sensor signal ) = ? ( This then needs to be used externally via a VRPN in a web browsers to indicate visually the amount ). I was wondering if anyone could give me some guidance on achieving this ( OpenVIBE designer code below )

2. After creating the Designer XML and everything working the way it should. Is there a way of running the Acquisition Client / Designer file / VRPN all with a single file or package?

PS: Any advice would be greatly appreciated.

Code: Select all

<OpenViBE-Scenario>
	<Boxes>
		<Box>
			<Identifier>(0x000002df, 0x0000333b)</Identifier>
			<Name>Acquisition client</Name>
			<AlgorithmClassIdentifier>(0x35d225cb, 0x3e6e3a5f)</AlgorithmClassIdentifier>
			<Outputs>
				<Output>
					<TypeIdentifier>(0x403488e7, 0x565d70b6)</TypeIdentifier>
					<Name>Experiment information</Name>
				</Output>
				<Output>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Signal stream</Name>
				</Output>
				<Output>
					<TypeIdentifier>(0x6f752dd0, 0x082a321e)</TypeIdentifier>
					<Name>Stimulations</Name>
				</Output>
				<Output>
					<TypeIdentifier>(0x013df452, 0xa3a8879a)</TypeIdentifier>
					<Name>Channel localisation</Name>
				</Output>
				<Output>
					<TypeIdentifier>(0x6ab26b81, 0x0f8c02f3)</TypeIdentifier>
					<Name>Channel units</Name>
				</Output>
			</Outputs>
			<Settings>
				<Setting>
					<TypeIdentifier>(0x79a9edeb, 0x245d83fc)</TypeIdentifier>
					<Name>Acquisition server hostname</Name>
					<DefaultValue>${AcquisitionServer_HostName}</DefaultValue>
					<Value>${AcquisitionServer_HostName}</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x007deef9, 0x2f3e95c6)</TypeIdentifier>
					<Name>Acquisition server port</Name>
					<DefaultValue>1024</DefaultValue>
					<Value>1024</Value>
					<Modifiability>false</Modifiability>
				</Setting>
			</Settings>
			<Attributes>
				<Attribute>
					<Identifier>(0x1fa7a38f, 0x54edbe0b)</Identifier>
					<Value>80.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x1fa963f5, 0x1a638cd4)</Identifier>
					<Value>23</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x207c9054, 0x3c841b63)</Identifier>
					<Value>480.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x4e7b798a, 0x183beafb)</Identifier>
					<Value>(0x0d4656c0, 0xc95b1fa8)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xad100179, 0xa3c984ab)</Identifier>
					<Value>106</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc46b3d00, 0x3e0454e1)</Identifier>
					<Value>(0x00000000, 0x000a4dbe)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc73e83ec, 0xf855c5bc)</Identifier>
					<Value>false</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc80ce8af, 0xf699f813)</Identifier>
					<Value>5</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xce18836a, 0x9c0eb403)</Identifier>
					<Value>2</Value>
				</Attribute>
			</Attributes>
		</Box>
		<Box>
			<Identifier>(0x0000141b, 0x000038c6)</Identifier>
			<Name>Signal display</Name>
			<AlgorithmClassIdentifier>(0x0055be5f, 0x087bdd12)</AlgorithmClassIdentifier>
			<Inputs>
				<Input>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Data</Name>
				</Input>
				<Input>
					<TypeIdentifier>(0x6f752dd0, 0x082a321e)</TypeIdentifier>
					<Name>Stimulations</Name>
				</Input>
				<Input>
					<TypeIdentifier>(0x6ab26b81, 0x0f8c02f3)</TypeIdentifier>
					<Name>Channel Units</Name>
				</Input>
			</Inputs>
			<Settings>
				<Setting>
					<TypeIdentifier>(0x5de046a6, 0x086340aa)</TypeIdentifier>
					<Name>Display Mode</Name>
					<DefaultValue>Scan</DefaultValue>
					<Value>Scan</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x33a30739, 0x00d5299b)</TypeIdentifier>
					<Name>Auto vertical scale</Name>
					<DefaultValue>Per channel</DefaultValue>
					<Value>Per channel</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Scale refresh interval (secs)</Name>
					<DefaultValue>5</DefaultValue>
					<Value>5</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Vertical Scale</Name>
					<DefaultValue>100</DefaultValue>
					<Value>100</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Vertical Offset</Name>
					<DefaultValue>0</DefaultValue>
					<Value>0</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Time Scale</Name>
					<DefaultValue>10</DefaultValue>
					<Value>10</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x2cdb2f0b, 0x12f231ea)</TypeIdentifier>
					<Name>Bottom ruler</Name>
					<DefaultValue>true</DefaultValue>
					<Value>true</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x2cdb2f0b, 0x12f231ea)</TypeIdentifier>
					<Name>Left ruler</Name>
					<DefaultValue>false</DefaultValue>
					<Value>false</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x2cdb2f0b, 0x12f231ea)</TypeIdentifier>
					<Name>Multiview</Name>
					<DefaultValue>false</DefaultValue>
					<Value>false</Value>
					<Modifiability>false</Modifiability>
				</Setting>
			</Settings>
			<Attributes>
				<Attribute>
					<Identifier>(0x1fa7a38f, 0x54edbe0b)</Identifier>
					<Value>320.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x1fa963f5, 0x1a638cd4)</Identifier>
					<Value>34</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x207c9054, 0x3c841b63)</Identifier>
					<Value>272.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x4e7b798a, 0x183beafb)</Identifier>
					<Value>(0x92c056a7, 0x2dc71aff)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x527ad68d, 0x16d746a0)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xad100179, 0xa3c984ab)</Identifier>
					<Value>87</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc46b3d00, 0x3e0454e1)</Identifier>
					<Value>(0x00000000, 0x00101cdf)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc73e83ec, 0xf855c5bc)</Identifier>
					<Value>false</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xce18836a, 0x9c0eb403)</Identifier>
					<Value>9</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xcfad85b0, 0x7c6d841c)</Identifier>
					<Value>3</Value>
				</Attribute>
			</Attributes>
		</Box>
		<Box>
			<Identifier>(0x00002376, 0x00000c86)</Identifier>
			<Name>Analog VRPN Server</Name>
			<AlgorithmClassIdentifier>(0x0ddc3a7e, 0x6f6e6401)</AlgorithmClassIdentifier>
			<Inputs>
				<Input>
					<TypeIdentifier>(0x544a003e, 0x6dcba5f6)</TypeIdentifier>
					<Name>Input 1</Name>
				</Input>
			</Inputs>
			<Settings>
				<Setting>
					<TypeIdentifier>(0x79a9edeb, 0x245d83fc)</TypeIdentifier>
					<Name>Peripheral name</Name>
					<DefaultValue>openvibe-vrpn</DefaultValue>
					<Value>openvibe_vrpn_analog</Value>
					<Modifiability>false</Modifiability>
				</Setting>
			</Settings>
			<Attributes>
				<Attribute>
					<Identifier>(0x1fa7a38f, 0x54edbe0b)</Identifier>
					<Value>352.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x1fa963f5, 0x1a638cd4)</Identifier>
					<Value>34</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x207c9054, 0x3c841b63)</Identifier>
					<Value>464.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x4e7b798a, 0x183beafb)</Identifier>
					<Value>(0x2f4c9e00, 0x5dc619e4)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xad100179, 0xa3c984ab)</Identifier>
					<Value>122</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc46b3d00, 0x3e0454e1)</Identifier>
					<Value>(0x00000000, 0x006eeca6)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xce18836a, 0x9c0eb403)</Identifier>
					<Value>1</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xcfad85b0, 0x7c6d841c)</Identifier>
					<Value>1</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xfba64161, 0x65304e21)</Identifier>
					<Value></Value>
				</Attribute>
			</Attributes>
		</Box>
		<Box>
			<Identifier>(0x000034ab, 0x000035c2)</Identifier>
			<Name>Signal display</Name>
			<AlgorithmClassIdentifier>(0x0055be5f, 0x087bdd12)</AlgorithmClassIdentifier>
			<Inputs>
				<Input>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Data</Name>
				</Input>
				<Input>
					<TypeIdentifier>(0x6f752dd0, 0x082a321e)</TypeIdentifier>
					<Name>Stimulations</Name>
				</Input>
				<Input>
					<TypeIdentifier>(0x6ab26b81, 0x0f8c02f3)</TypeIdentifier>
					<Name>Channel Units</Name>
				</Input>
			</Inputs>
			<Settings>
				<Setting>
					<TypeIdentifier>(0x5de046a6, 0x086340aa)</TypeIdentifier>
					<Name>Display Mode</Name>
					<DefaultValue>Scan</DefaultValue>
					<Value>Scan</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x33a30739, 0x00d5299b)</TypeIdentifier>
					<Name>Auto vertical scale</Name>
					<DefaultValue>Per channel</DefaultValue>
					<Value>Per channel</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Scale refresh interval (secs)</Name>
					<DefaultValue>5</DefaultValue>
					<Value>5</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Vertical Scale</Name>
					<DefaultValue>100</DefaultValue>
					<Value>100</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Vertical Offset</Name>
					<DefaultValue>0</DefaultValue>
					<Value>0</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x512a166f, 0x5c3ef83f)</TypeIdentifier>
					<Name>Time Scale</Name>
					<DefaultValue>10</DefaultValue>
					<Value>10</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x2cdb2f0b, 0x12f231ea)</TypeIdentifier>
					<Name>Bottom ruler</Name>
					<DefaultValue>true</DefaultValue>
					<Value>true</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x2cdb2f0b, 0x12f231ea)</TypeIdentifier>
					<Name>Left ruler</Name>
					<DefaultValue>false</DefaultValue>
					<Value>false</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x2cdb2f0b, 0x12f231ea)</TypeIdentifier>
					<Name>Multiview</Name>
					<DefaultValue>false</DefaultValue>
					<Value>false</Value>
					<Modifiability>false</Modifiability>
				</Setting>
			</Settings>
			<Attributes>
				<Attribute>
					<Identifier>(0x1fa7a38f, 0x54edbe0b)</Identifier>
					<Value>320.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x1fa963f5, 0x1a638cd4)</Identifier>
					<Value>34</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x207c9054, 0x3c841b63)</Identifier>
					<Value>624.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x4e7b798a, 0x183beafb)</Identifier>
					<Value>(0x92c056a7, 0x2dc71aff)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x527ad68d, 0x16d746a0)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xad100179, 0xa3c984ab)</Identifier>
					<Value>87</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc46b3d00, 0x3e0454e1)</Identifier>
					<Value>(0x00000000, 0x000ac324)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc73e83ec, 0xf855c5bc)</Identifier>
					<Value>false</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xce18836a, 0x9c0eb403)</Identifier>
					<Value>9</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xcfad85b0, 0x7c6d841c)</Identifier>
					<Value>3</Value>
				</Attribute>
			</Attributes>
		</Box>
		<Box>
			<Identifier>(0x00004f02, 0x000066e4)</Identifier>
			<Name>F4</Name>
			<AlgorithmClassIdentifier>(0x361722e8, 0x311574e8)</AlgorithmClassIdentifier>
			<Inputs>
				<Input>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Input signal</Name>
				</Input>
			</Inputs>
			<Outputs>
				<Output>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Output signal</Name>
				</Output>
			</Outputs>
			<Settings>
				<Setting>
					<TypeIdentifier>(0x79a9edeb, 0x245d83fc)</TypeIdentifier>
					<Name>Channel List</Name>
					<DefaultValue>:</DefaultValue>
					<Value>F4</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x3bcf9e67, 0x0c23994d)</TypeIdentifier>
					<Name>Action</Name>
					<DefaultValue>Select</DefaultValue>
					<Value>Select</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x666f25e9, 0x3e5738d6)</TypeIdentifier>
					<Name>Channel Matching Method</Name>
					<DefaultValue>Smart</DefaultValue>
					<Value>Smart</Value>
					<Modifiability>false</Modifiability>
				</Setting>
			</Settings>
			<Attributes>
				<Attribute>
					<Identifier>(0x1fa7a38f, 0x54edbe0b)</Identifier>
					<Value>176.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x1fa963f5, 0x1a638cd4)</Identifier>
					<Value>45</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x207c9054, 0x3c841b63)</Identifier>
					<Value>368.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x30a4e5c9, 0x83502953)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x4e7b798a, 0x183beafb)</Identifier>
					<Value>(0x277826e1, 0xa30a3bd0)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x527ad68d, 0x16d746a0)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xad100179, 0xa3c984ab)</Identifier>
					<Value>80</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc46b3d00, 0x3e0454e1)</Identifier>
					<Value>(0x00000000, 0x000e56ec)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc73e83ec, 0xf855c5bc)</Identifier>
					<Value>false</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc80ce8af, 0xf699f813)</Identifier>
					<Value>1</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xce18836a, 0x9c0eb403)</Identifier>
					<Value>3</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xcfad85b0, 0x7c6d841c)</Identifier>
					<Value>1</Value>
				</Attribute>
			</Attributes>
		</Box>
		<Box>
			<Identifier>(0x00006287, 0x00003a90)</Identifier>
			<Name>F3</Name>
			<AlgorithmClassIdentifier>(0x361722e8, 0x311574e8)</AlgorithmClassIdentifier>
			<Inputs>
				<Input>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Input signal</Name>
				</Input>
			</Inputs>
			<Outputs>
				<Output>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Output signal</Name>
				</Output>
			</Outputs>
			<Settings>
				<Setting>
					<TypeIdentifier>(0x79a9edeb, 0x245d83fc)</TypeIdentifier>
					<Name>Channel List</Name>
					<DefaultValue>:</DefaultValue>
					<Value>F3</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x3bcf9e67, 0x0c23994d)</TypeIdentifier>
					<Name>Action</Name>
					<DefaultValue>Select</DefaultValue>
					<Value>Select</Value>
					<Modifiability>false</Modifiability>
				</Setting>
				<Setting>
					<TypeIdentifier>(0x666f25e9, 0x3e5738d6)</TypeIdentifier>
					<Name>Channel Matching Method</Name>
					<DefaultValue>Smart</DefaultValue>
					<Value>Smart</Value>
					<Modifiability>false</Modifiability>
				</Setting>
			</Settings>
			<Attributes>
				<Attribute>
					<Identifier>(0x1fa7a38f, 0x54edbe0b)</Identifier>
					<Value>160.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x1fa963f5, 0x1a638cd4)</Identifier>
					<Value>45</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x207c9054, 0x3c841b63)</Identifier>
					<Value>608.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x30a4e5c9, 0x83502953)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x4e7b798a, 0x183beafb)</Identifier>
					<Value>(0x277826e1, 0xa30a3bd0)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x527ad68d, 0x16d746a0)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xad100179, 0xa3c984ab)</Identifier>
					<Value>80</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc46b3d00, 0x3e0454e1)</Identifier>
					<Value>(0x00000000, 0x0028b9a3)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc73e83ec, 0xf855c5bc)</Identifier>
					<Value>false</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc80ce8af, 0xf699f813)</Identifier>
					<Value>1</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xce18836a, 0x9c0eb403)</Identifier>
					<Value>3</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xcfad85b0, 0x7c6d841c)</Identifier>
					<Value>1</Value>
				</Attribute>
			</Attributes>
		</Box>
		<Box>
			<Identifier>(0x000068dd, 0x0000471e)</Identifier>
			<Name>Simple DSP</Name>
			<AlgorithmClassIdentifier>(0x00e26fa1, 0x1dbab1b2)</AlgorithmClassIdentifier>
			<Inputs>
				<Input>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>B</Name>
				</Input>
				<Input>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>A</Name>
				</Input>
			</Inputs>
			<Outputs>
				<Output>
					<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
					<Name>Output</Name>
				</Output>
			</Outputs>
			<Settings>
				<Setting>
					<TypeIdentifier>(0x79a9edeb, 0x245d83fc)</TypeIdentifier>
					<Name>Equation</Name>
					<DefaultValue>x</DefaultValue>
					<Value>B - A</Value>
					<Modifiability>false</Modifiability>
				</Setting>
			</Settings>
			<Attributes>
				<Attribute>
					<Identifier>(0x1fa7a38f, 0x54edbe0b)</Identifier>
					<Value>273.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x1fa963f5, 0x1a638cd4)</Identifier>
					<Value>34</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x207c9054, 0x3c841b63)</Identifier>
					<Value>464.000000</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x30a4e5c9, 0x83502953)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x4e7b798a, 0x183beafb)</Identifier>
					<Value>(0x21889dc4, 0x1126497e)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x527ad68d, 0x16d746a0)</Identifier>
					<Value></Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xad100179, 0xa3c984ab)</Identifier>
					<Value>73</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc46b3d00, 0x3e0454e1)</Identifier>
					<Value>(0x00000000, 0x000e27ec)</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc73e83ec, 0xf855c5bc)</Identifier>
					<Value>false</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xc80ce8af, 0xf699f813)</Identifier>
					<Value>1</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xce18836a, 0x9c0eb403)</Identifier>
					<Value>1</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xcfad85b0, 0x7c6d841c)</Identifier>
					<Value>1</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0xfba64161, 0x65304e21)</Identifier>
					<Value></Value>
				</Attribute>
			</Attributes>
		</Box>
	</Boxes>
	<Links>
		<Link>
			<Identifier>(0x000009a7, 0x000056aa)</Identifier>
			<Source>
				<BoxIdentifier>(0x00006287, 0x00003a90)</BoxIdentifier>
				<BoxOutputIndex>0</BoxOutputIndex>
			</Source>
			<Target>
				<BoxIdentifier>(0x000034ab, 0x000035c2)</BoxIdentifier>
				<BoxInputIndex>0</BoxInputIndex>
			</Target>
			<Attributes>
				<Attribute>
					<Identifier>(0x1b32c44c, 0x1905e0e9)</Identifier>
					<Value>189</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x358ae8b5, 0x0f8bacd1)</Identifier>
					<Value>608</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x3f0a3b27, 0x570913d2)</Identifier>
					<Value>298</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x6267b5c5, 0x676e3e42)</Identifier>
					<Value>609</Value>
				</Attribute>
			</Attributes>
		</Link>
		<Link>
			<Identifier>(0x00001873, 0x00001804)</Identifier>
			<Source>
				<BoxIdentifier>(0x00004f02, 0x000066e4)</BoxIdentifier>
				<BoxOutputIndex>0</BoxOutputIndex>
			</Source>
			<Target>
				<BoxIdentifier>(0x0000141b, 0x000038c6)</BoxIdentifier>
				<BoxInputIndex>0</BoxInputIndex>
			</Target>
			<Attributes>
				<Attribute>
					<Identifier>(0x1b32c44c, 0x1905e0e9)</Identifier>
					<Value>205</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x358ae8b5, 0x0f8bacd1)</Identifier>
					<Value>368</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x3f0a3b27, 0x570913d2)</Identifier>
					<Value>298</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x6267b5c5, 0x676e3e42)</Identifier>
					<Value>257</Value>
				</Attribute>
			</Attributes>
		</Link>
		<Link>
			<Identifier>(0x00001dc8, 0x00003cd2)</Identifier>
			<Source>
				<BoxIdentifier>(0x000068dd, 0x0000471e)</BoxIdentifier>
				<BoxOutputIndex>0</BoxOutputIndex>
			</Source>
			<Target>
				<BoxIdentifier>(0x00002376, 0x00000c86)</BoxIdentifier>
				<BoxInputIndex>0</BoxInputIndex>
			</Target>
			<Attributes>
				<Attribute>
					<Identifier>(0x1b32c44c, 0x1905e0e9)</Identifier>
					<Value>296</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x358ae8b5, 0x0f8bacd1)</Identifier>
					<Value>464</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x3f0a3b27, 0x570913d2)</Identifier>
					<Value>330</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x6267b5c5, 0x676e3e42)</Identifier>
					<Value>464</Value>
				</Attribute>
			</Attributes>
		</Link>
		<Link>
			<Identifier>(0x0000269f, 0x00003c9b)</Identifier>
			<Source>
				<BoxIdentifier>(0x00006287, 0x00003a90)</BoxIdentifier>
				<BoxOutputIndex>0</BoxOutputIndex>
			</Source>
			<Target>
				<BoxIdentifier>(0x000068dd, 0x0000471e)</BoxIdentifier>
				<BoxInputIndex>1</BoxInputIndex>
			</Target>
			<Attributes>
				<Attribute>
					<Identifier>(0x1b32c44c, 0x1905e0e9)</Identifier>
					<Value>189</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x358ae8b5, 0x0f8bacd1)</Identifier>
					<Value>608</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x3f0a3b27, 0x570913d2)</Identifier>
					<Value>251</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x6267b5c5, 0x676e3e42)</Identifier>
					<Value>471</Value>
				</Attribute>
			</Attributes>
		</Link>
		<Link>
			<Identifier>(0x00002726, 0x00002922)</Identifier>
			<Source>
				<BoxIdentifier>(0x000002df, 0x0000333b)</BoxIdentifier>
				<BoxOutputIndex>1</BoxOutputIndex>
			</Source>
			<Target>
				<BoxIdentifier>(0x00006287, 0x00003a90)</BoxIdentifier>
				<BoxInputIndex>0</BoxInputIndex>
			</Target>
			<Attributes>
				<Attribute>
					<Identifier>(0x1b32c44c, 0x1905e0e9)</Identifier>
					<Value>98</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x358ae8b5, 0x0f8bacd1)</Identifier>
					<Value>465</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x3f0a3b27, 0x570913d2)</Identifier>
					<Value>133</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x6267b5c5, 0x676e3e42)</Identifier>
					<Value>608</Value>
				</Attribute>
			</Attributes>
		</Link>
		<Link>
			<Identifier>(0x0000383a, 0x00007b60)</Identifier>
			<Source>
				<BoxIdentifier>(0x00004f02, 0x000066e4)</BoxIdentifier>
				<BoxOutputIndex>0</BoxOutputIndex>
			</Source>
			<Target>
				<BoxIdentifier>(0x000068dd, 0x0000471e)</BoxIdentifier>
				<BoxInputIndex>0</BoxInputIndex>
			</Target>
			<Attributes>
				<Attribute>
					<Identifier>(0x1b32c44c, 0x1905e0e9)</Identifier>
					<Value>205</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x358ae8b5, 0x0f8bacd1)</Identifier>
					<Value>368</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x3f0a3b27, 0x570913d2)</Identifier>
					<Value>251</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x6267b5c5, 0x676e3e42)</Identifier>
					<Value>456</Value>
				</Attribute>
			</Attributes>
		</Link>
		<Link>
			<Identifier>(0x00006a5b, 0x00001765)</Identifier>
			<Source>
				<BoxIdentifier>(0x000002df, 0x0000333b)</BoxIdentifier>
				<BoxOutputIndex>1</BoxOutputIndex>
			</Source>
			<Target>
				<BoxIdentifier>(0x00004f02, 0x000066e4)</BoxIdentifier>
				<BoxInputIndex>0</BoxInputIndex>
			</Target>
			<Attributes>
				<Attribute>
					<Identifier>(0x1b32c44c, 0x1905e0e9)</Identifier>
					<Value>98</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x358ae8b5, 0x0f8bacd1)</Identifier>
					<Value>465</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x3f0a3b27, 0x570913d2)</Identifier>
					<Value>149</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x6267b5c5, 0x676e3e42)</Identifier>
					<Value>368</Value>
				</Attribute>
			</Attributes>
		</Link>
	</Links>
	<MessageLinks></MessageLinks>
	<Comments></Comments>
	<VisualisationTree>
		<VisualisationWidget>
			<Identifier>(0x000019dc, 0x00004429)</Identifier>
			<Type>3</Type>
			<ParentIdentifier>(0xffffffff, 0xffffffff)</ParentIdentifier>
			<BoxIdentifier>(0x000034ab, 0x000035c2)</BoxIdentifier>
			<NumChildren>0</NumChildren>
		</VisualisationWidget>
		<VisualisationWidget>
			<Identifier>(0x00003dfb, 0x00001ceb)</Identifier>
			<Type>3</Type>
			<ParentIdentifier>(0xffffffff, 0xffffffff)</ParentIdentifier>
			<BoxIdentifier>(0x0000141b, 0x000038c6)</BoxIdentifier>
			<NumChildren>0</NumChildren>
		</VisualisationWidget>
		<VisualisationWidget>
			<Identifier>(0x00005fa1, 0x00006ba8)</Identifier>
			<Name>Default window</Name>
			<Type>1</Type>
			<ParentIdentifier>(0xffffffff, 0xffffffff)</ParentIdentifier>
			<BoxIdentifier>(0xffffffff, 0xffffffff)</BoxIdentifier>
			<NumChildren>1</NumChildren>
			<Attributes>
				<Attribute>
					<Identifier>(0x4c90d4ad, 0x7a2554ec)</Identifier>
					<Value>320</Value>
				</Attribute>
				<Attribute>
					<Identifier>(0x7b814cca, 0x271df6dd)</Identifier>
					<Value>475</Value>
				</Attribute>
			</Attributes>
		</VisualisationWidget>
		<VisualisationWidget>
			<Identifier>(0x0000615b, 0x0000099e)</Identifier>
			<Name>Default tab</Name>
			<Type>2</Type>
			<ParentIdentifier>(0x00005fa1, 0x00006ba8)</ParentIdentifier>
			<Index>0</Index>
			<BoxIdentifier>(0xffffffff, 0xffffffff)</BoxIdentifier>
			<NumChildren>1</NumChildren>
		</VisualisationWidget>
		<VisualisationWidget>
			<Identifier>(0x000030ab, 0x00006832)</Identifier>
			<Name>Empty</Name>
			<Type>0</Type>
			<ParentIdentifier>(0x0000615b, 0x0000099e)</ParentIdentifier>
			<Index>0</Index>
			<BoxIdentifier>(0xffffffff, 0xffffffff)</BoxIdentifier>
			<NumChildren>0</NumChildren>
		</VisualisationWidget>
	</VisualisationTree>
</OpenViBE-Scenario>

Re: Subtracting one signal from another

Posted: Tue Jul 21, 2015 1:35 am
by fabien.lotte
Hello,

I didn't try to create and open your scenario, but to subtract two signals from each other can be done in two ways:
- using a spatial filter box, in which case you will give a weight of 1 to channel F3, an weight of -1 to channel F4, and a weight of 0 to any other channel you may have.
- or (that is an alternative option) you use a channel selector box first to separate F3 and F4, and then use a simple DSP box with two inputs (one input being F3 the other F4) to subtract one from the other

Best,
Fabien

Re: Subtracting one signal from another

Posted: Tue Jul 21, 2015 8:35 am
by DJM
Hi Fabien

Thank you for your speed response. The second suggestions you mentioned is the one I tried:
- So I used the Simple DSP box to subtract the F3 from F4 but then when I tried to get the OUTPUT in the VRPN. It just resulted in 0 for every reading.

<Box>
<Identifier>(0x000068dd, 0x0000471e)</Identifier>
<Name>Simple DSP</Name>
<AlgorithmClassIdentifier>(0x00e26fa1, 0x1dbab1b2)</AlgorithmClassIdentifier>
<Inputs>
<Input>
<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
<Name>B</Name>
</Input>
<Input>
<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
<Name>A</Name>
</Input>
</Inputs>
<Outputs>
<Output>
<TypeIdentifier>(0x5ba36127, 0x195feae1)</TypeIdentifier>
<Name>Output</Name>
</Output>
</Outputs>
<Settings>
<Setting>
<TypeIdentifier>(0x79a9edeb, 0x245d83fc)</TypeIdentifier>
<Name>Equation</Name>
<DefaultValue>x</DefaultValue>
<Value>B - A</Value>
<Modifiability>false</Modifiability>
</Setting>
</Settings>

Kind Regards

Re: Subtracting one signal from another

Posted: Thu Jul 23, 2015 12:17 pm
by gserrier
Hi,

Did you use the channel selector?

Guillaume

Re: Subtracting one signal from another

Posted: Thu Jul 23, 2015 1:12 pm
by DJM
Hi Guillaume

Yes I did use the Channel selector to get he F4 ( sensor signal ) & F3 ( sensor signal ).


Kind Regards

Re: Subtracting one signal from another

Posted: Thu Jul 23, 2015 2:04 pm
by gserrier
Can you join the xml of the scenario.

Guillaume

Re: Subtracting one signal from another

Posted: Thu Jul 23, 2015 2:12 pm
by DJM
Hi Guillaume

Here is the XML.


Cheers

Re: Subtracting one signal from another

Posted: Thu Jul 23, 2015 3:41 pm
by gserrier
May have found the issue.

In fact X is a symbol for the first iput, but A is also a symbol for it. You better used A-B or X-B.

Guillaume

Re: Subtracting one signal from another

Posted: Thu Jul 23, 2015 4:16 pm
by DJM
Hi Guillaume

I did try it with both A & B input ( using B-A ) and A & X input ( using X-A ).

This is the end goal:

Continuous EEG Signal processing

We want to measure the continuous EEG signal (as far as I am aware this is often called Continuous EEG as opposed to event related EEG). As you probably guessed when you are measuring electrical brain activity there is a lot of noise in the data, this is caused by external interference but mainly other stuff going on e.g. movement etc. So if we want to get at only a particular signal to get this measure above a lot of filtering of the data goes on e.g. high and low pass filters, baselines from reference sensors etc.

However, this is not impossible in real time as other companies have done it in some capacity e.g. we know that a company based out of the University of Brighton have some kind of live EEG measure that they pull out for PR work. In fact a google search found some guys thesis all about it!

I think the best paper to steer us is the one I have attached (Frontal EEG asymmetry as a moderator and mediator of emotion). There is a summary of all the studies and tell us what electrodes they use as the ones to get the reading off and the most popular paradigm for getting the measure (which appears to be p.10 – β€œThe most commonly reported of these indexes is computed by subtracting the natural log of left hemisphere alpha power from the natural log of right hemisphere alpha power (ln[right alpha] βˆ’ ln[left alpha])”.)

That makes it sound complex but I think at a basic left means take the readings from one electrode and subtract them from another (sort of).

Looking at the table it also appears that the electrodes most frequently used are F3 and F4. You can see these in a map of the Emotiv headsets below (note: the emotiv headset has 14 channels (16 if you count the dummy reference ones), some EEG units have many, many more).

Then create one file that would run all the required elements ( Acquisition Client / Designer file / VRPN ).


PS: Thank you for all your help so far... Much appreciated.

Re: Subtracting one signal from another

Posted: Fri Jul 24, 2015 8:21 am
by gserrier
Sorry, but I don't get the issue here

Guillaume

Re: Subtracting one signal from another

Posted: Fri Jul 24, 2015 1:29 pm
by DJM
Hi Guillaume

I was getting 0 as an output for the VRPN. Thank you for all your help.

Hope you have a great weekend.


Cheers