Pyxid2 codes sent with bitmask get garbled when recording is opened with MNE later

Hello,
I have recently received a C-Pod for Neuroscan. It works but I need some assistance to use it.

Could you please advise me on using of C-Pod through Python? I have found on Cedrus website some examples and I managed to make use of pyxid2 from pip but there is some confusion I have around it.

Namely I have a problem getting a correspondance between information I sent via C-Pod and the information I see in the recording. My setup is the following:
• Neuroscan EEG with Stim Tracker, to which C-Pod is connected
• windows 10 pro computer with Curry 8
• python script running the computer which send triggers via C-Pod during the EEG recording done by Curry 8
• in the python script I dev.activate_line(bitmask=N) where N is a number between 0 and 255
• after recording is done I convert it to .edf format and the read with MNE Python
• in Curry 8 I see well triggers arriving and being recorded
• Surprisingly in the “Trigger” channel number that are very different from those I sent used in dev.activate_line(bitmask=N). Namely I get numbers in the range between 1792 and 65535. I dont understand how (if) these numbers correspond to what I sent to C-Pod in my python script

Could you please help me to figure out what is going on?

Assisting with interpreting the data is beyond the scope of what we can help with.

However, it might help if you convert the decimal numbers to binary:

  • 1792 corresponds to 0000 0111 0000 0000

  • 65536 corresponds to 1111 1111 1111 1111

The second one is really odd: it would be really unusual to set all the bits to 1.

Could you please explain why you don’t want to help me? The device I received contained precisely zero documentation and I have no way to know what does it do. I don’t find any information about C-Pod on the website beside a single image on the device page that is jpeg compressed so much that nothing is readable
https://cedrus.com/c-pod/neuroscan.htm

Who else but the device maker should I ask help from?

I appreciate you converting two numbers to the binary format me. Unfortunately neither this nor converting all other triggers to binary did not help me to understand the algorithm that C-Pod and/or StimTracker are using to convert what I send in pyxid2 to what Curry receives.

The link in your post is for potential buyers. The support pages are found here:

The c-pod that you received should have contained a small sheet of paper indicating that all our documentation is web-based, and providing the link I just shared.

It’s not that we do not want to help; we definitely do. However, we cannot possibly be experts in every manufacturer’s setup and every programming language. Our support is limited to making sure that c-pod can produce output. How you send event markers and how your software interprets them is up to you. We do not even have Curry installed in our office.

A growing number of researchers are preferring SuperLab, where sending event markers is headache-free – just enable a checkbox:

Sorry but I still struggle to understand you. Yes this link was in the box. But there is very little information there.
I am not using some weird homemade way to send triggers. I am using the pyxid2 python package that was developed by Cedrus and is explicitly referenced in one of the links from the one you just sent
https://cedrus.com/support/xid/libraries.htm
https://cedrus.com/support/c-pod/tn1717_psychopy.htm
The C-Pod I bought is specifically for Neuroscan system which only works with Curry as far as I am aware.

Unfortunately the pyxid2 package is very little documented on your website. And when I follow the little documentation that is there, I get the strange results that I mentioned in my original post.

pyxid2 is not an end user application. It is an open source library. The source code available to you is the documentation. You can obtain additional information by looking up the code on GitHub.

The functions in the pyxid2 library are basically wrappers around the commands that c-pod understands, fully described in the XID Commands page.

The pyxid2 library includes sample code on how to send event markers. It even includes sample code on how to make use of the more advanced pulse table feature.

As for using Curry, please see this m-pod for Neuroscan page. It provides info on getting started in Curry and the same info should largely apply to c-pod.

I hope this helps.