Problems Sending Triggers Parallel Port - no errors shown

Dear all,

I am sorry to bring up a reocurring topic again, but I encounter troubles with communicating with the parallelport.

I am running Psychopy (v3.2.4, standalone) on a 64-bit Windows 7 computer, and I am trying to send triggers via the parallel port to a biosemi (EEG) device.

I know that the hardware works, as I managed to send triggers with Eprime and Open Sesame. But it doesn’t work with Psychopy.

I tried the various fixes suggested in the forum

  1. installing the inpout32.dll (as well as the 64 version), adding it into the system folder, adding it to the experiment folder.
  2. reinstalling a 32 bits psychopy version, reinstalling the 64 bits version
  3. sending triggers via the builder component, some code inlines, just the coder

As I do not receive any error message, I do not know where to start looking for a solution. I just see that the triggers are not sent to the device.

Does anyone have an idea what I can do to find a solution?

Thank you already so much for your considerations,

Katharina

I met the same problem, did you have solve it?

after a lot of trials I think the way I solved it was to copy the DLL files in the same folder as the psychopy file that I wanted to run and to run the DLL in Win32 (even though the PC is Win64)

so my instructions on the installation are now:

  1. run installation of DLL files in folder Win32
  2. copy and paste the installed DLL files (could be 64 or 32 depending on system) in
    the folder where the exectuable file = task/paradigm is

Hi There,

Out of interest did this error also occur on more recent versions of PsychoPy? looks like you are running quite an old version.

Thanks,
Becca

Hi Becca,

I am having the same problem using the latest version of Psychopy. The triggers are not showing up on BrainVision Recorder.
Thanks,
Jason

Hi @jchan,

Are you communicating with BrainVision via a serial port or parallel port?

Thanks!

Kim

Hi!
We are communicating through parallel port.
Best,
Jason

Hi @jchan,

Thanks!

In that case, if you’ve not already, could you please take the following steps:

  1. Could you please download and install the InpOutx64.dll and InpOut32.dll files from here. You need to use the “Binaries only - x86 & x64 DLLs and libs” option under the Download Links subheading.

  2. When you’ve downloaded the files, you’ll need to install the InpOut32.dll manually by running the InstallDriver.exe file that is in the Win32 folder. You’ll need admin rights on the machine you’re using to do this.

  3. You then need to copy the InpOutx64.dll and InpOut32.dll files in the same folder as your PsychoPy experiment file. Then restart PsychoPy and try running your experiment again.

As an additional step, I would also recommend checking that you’ve selected the correct address of your parallel port in PsychoPy. You can find out which address you’re using by heading to: Device Manager (you can find this easily by searching in the start menu) > Ports > Find your parallel port from the drop down > Right-click Properties > Resources tab.

Thanks!

Kim

Hi Kim,

Thank you so much for the quick and detailed response. I have installed Binaries and copied the DLLs the program folder but the EEG is still not receiving the triggers.

I have checked the device manager and the parallel port is set to LPT1. I assume that is still 0x378. I have not dealt with hex addresses in a long time. The ad-on card we are using has a SUNIX chipset. I am wondering if there is a compatibility issue. I am able to send triggers using a commercial experimental program (I deliberately do not want to advertise it), so I know it is not the hardware itself.

Best,
Jason

Hi Jason,

It is possible that could be the problem - I don’t think PsychoPy is expecting the address in “LPT1” notation - it is expecting the hex format. If you follow these steps to find the hex address Parallel Port Configuration what does the resources tab look like on your end? does it show something like 0378 - 037F or something different?

Becca

2 Likes

Hello everyone,

I came across this post while trying to fix my problem with sending triggers through parallel port to my Biosemi EEG system.
I have already placed a copy of inpout64.dll in both my experiment folder and the windows/system32 folder.
I have some issues in determining the correct port address. My LPT1 port in the device manager does not have a resource tab - so I found the addresses through the msconfig.exe procedure. They are different from the classic 0x0378, I tried to set my parallel port address to each of them in psychopy, without success. I also already added these port names in the hardware preferences in psychopy.

I notice I also have a SUNIX ad-on port, so now I wonder if that is the problem. The computer is new, so I haven’t tried the port with any other application (and I am definitely not an expert on this topic).

Any suggestion would be very appreciated!
Thanks,
Silvia

Hi @Silvia,

Are you connecting the BioSemi EEG system to your PC directly to a parallel port using a parallel port connection that has pins, or via some sort of USB connector?

Thanks!

Kim

Hi,
I’m so sorry to bring this up again, but our lab finally upgraded to windows 11, now using the SUNIX chipset.

I tried with the newest version of Psychopy, I downloaded and copied the DLLs but it is not working. Could it be that it is a hardware issue?

Any ideas on how to solve it?

Best
Kat

Hi @katpa,

Could you please give some more detail about what is happening when you try to run your task? Please include any error messages you’re getting.

Thanks,

Kim