Re: channel question for programming Olimex EEG-SMT
"Paddy Duncan" <[email protected]>
| Newsgroups | gmane.comp.science.openeeg.general |
|---|---|
| Message-ID | <[email protected]> |
Hi Again Daniel, I forgot to mention, have you tried the Olimex EEG forum? https://www.olimex.com/forum/index.php?board=25.0 Cheers Paddy From: Daniel Baker [mailto:[email protected]] Sent: 01 February 2013 09:23 To: [email protected] Subject: Re: [Openeeg-list] channel question for programming Olimex EEG-SMT Hi Arnold, That's very interesting. I wonder if my device has a loose connection that causes crosstalk between the channels. That would explain the extra activity. I guess it's not necessarily a problem, if the data I get out of the first two channels are OK, perhaps I can ignore the other ones. - Daniel On 31/01/2013 19:04, nocom wrote: Hi Daniel, I am trying to understand my recently received EEG-SMT as well. My results are somewhat different than yours. From the six data channels numbers 0 and 1 yield data, while 2, 3 and 5 yield 6 and channel 4 holds one or other high constant (something like 265436) which changes each time when you start to sample. I assumed that ch- is a reference for ch+. The Olimex is able to output to six channels (look at the schema's) but comes with only 2 to keep costs down. I am somewhat alarmed that our two devices differ that much, maybe one of them is somewhat defective? Arnold On 31-Jan-13 17:13, Daniel Baker wrote: Hi Paddy, Thanks for your response. If this is the case, then for a two-channel device, four of the outputs should be silent, but they are clearly not. I've written a blog post with some example data, code, and details of exactly what I've done: http://bakerdh.wordpress.com/2013/01/31/a-first-look-at-the-olimex-eeg-smt/ I've tried unplugging some of the electrodes to see what effect this has on the output. When I remove electrodes CH2+ and CH2- I get activity only on the first two channels, and it looks a little odd (the second channel never goes above 511 (out of 1023)). When I plug only those ones in and remove CH1+ and CH1- then the first channel goes silent, but the other five are active. I guess if you're right and the first two channels are the differences between the electrodes, then maybe the other four outputs are just interference. Still, it's puzzling that they go silent when CH2± are unplugged. - Daniel On 31/01/2013 15:17, Paddy Duncan wrote: Hi Daniel, As I understood it, starting at byte 5, the 2-byte 10-bit numbers are the data for each channel ie the difference between the 2 channel electrodes. There is no data representing a single electrode, as the channels are differential. The six outputs are for the six channels that the protocol supports. Hope this helps. Paddy Below is the relevant section of the P2 firmware file: ////////// Packet Format Version 2 //////////// // 17-byte packets are transmitted from the ModularEEG at 256Hz, // using 1 start bit, 8 data bits, 1 stop bit, no parity, 57600 bits per second. // Minimial transmission speed is 256Hz * sizeof(modeeg_packet) * 10 = 43520 bps. struct modeeg_packet { uint8_t sync0; // = 0xa5 uint8_t sync1; // = 0x5a uint8_t version; // = 2 uint8_t count; // packet counter. Increases by 1 each packet. uint16_t data[6]; // 10-bit sample (= 0 - 1023) in big endian (Motorola) format. uint8_t switches; // State of PD5 to PD2, in bits 3 to 0. }; ////////////////////////////////////////////////////////////// -----Original Message----- From: Daniel Baker [mailto:[email protected]] Sent: 30 January 2013 20:26 To: [email protected] Subject: [Openeeg-list] channel question for programming Olimex EEG-SMT Dear all, Last week I ordered and received an Olimex EEG-SMT box. I have successfully written code to read from the device using Matlab, directly over the virtual serial port interface. The data packets arrive in blocks of 17 bytes, and I have converted the six outputs (from bytes 5-16) specified in the packet protocol v2 into ten bit numbers. All six of the outputs produce a sensible looking trace, with mains artefacts at 50Hz as expected. What I don't understand is how these traces map onto the electrodes. There are four active electrodes and one ground electrode on the device. I initially thought that the mapping must be: Bytes 5&6: Channel 1+ Bytes 7&8: Channel 1- Bytes 9&10: Channel 2+ Bytes 11&12: Channel 2- Bytes 13&14: All of channel 1 (i.e. the difference between positive and negative) Bytes 15&16: All of channel 2 Presumably all referenced to the ground. However subtracting the first two traces does not produce the fifth trace (and so on). I'm at a loss to understand why else a device with four electrodes and two notional channels would produce six outputs. All help much appreciated. I intend to make some code publicly available once I'm happy with it. Many thanks, - Daniel Baker ---------------------------------------------------------------------------- -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_jan _______________________________________________ Openeeg-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openeeg-list Go to the above address to change your subscription options, e.g unsubscribe. ---------------------------------------------------------------------------- -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_jan _______________________________________________ Openeeg-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openeeg-list Go to the above address to change your subscription options, e.g unsubscribe. ---------------------------------------------------------------------------- -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_jan _______________________________________________ Openeeg-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openeeg-list Go to the above address to change your subscription options, e.g unsubscribe. ---------------------------------------------------------------------------- -- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_jan _______________________________________________ Openeeg-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openeeg-list Go to the above address to change your subscription options, e.g unsubscribe. ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_d2d_jan