| Reference | Downloads | Github

EGI trigger timings - Windows vs Linux

Hi everybody!

Struggle has been going on for quite some time to achieve sub-millisecond precision when using the EGI library to send TCP triggers to the EGI device. With Windows, numerous different approaches resulted in getting the mean delay between photodiode and trigger to some milliseconds, but the variablity was the issue (sd ranging between 3-7ms). Sampling EEG on 1kHz or even 8kHz requires that the variability would have to as low as possible.

After failing to do this with Windows (win 10, z390, RTX 2080ti, i9-9900k, 64GB DDR4, .m2 disks) i decided to go for testing linux. The EGI device runs on Linux so one could think that the timings would be better. After struggling with packages for a while i managed to get the mean delay down to 0.33ms with a sd of 0.48 with the same code as with Windows! This is amazing.

Waiting for the soon to be published EGI python 3 library to see if python 3 would somehow cut the variability in Windows also. Just wanted to post this if somebody else is struggling with EGI & Windows so it might be a good idea to test Ubuntu for it.



Hi JJ,

This is really great!
Seems like you are experienced with linux for psychopy - can I ask for your advice?
We are putting together a new EEG room (we will probably have an ANT system). We are considering using linux for the stim computer that will run psychopy. Since it was a while since you posted this, did you ran into any additional difficulties with linux that we should consider?
Also, do you think it will cause difficulties if students develop psychopy programs on windows, and then run on linux?