Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't find the marker channels in a .smrx file using the CedIO loader. #1442

Open
FloHofmann opened this issue Mar 20, 2024 · 9 comments
Open
Milestone

Comments

@FloHofmann
Copy link

FloHofmann commented Mar 20, 2024

As the title suggests. I have recording data in from of .smrx files. Using a keyboard input, I trigger waveforms, which i feed back as ADC. I can find the waveforms easily in the block.segments.analogsignals but the marker for the trigger, which should be channel 30, I can't seem to find in the objects structure.
Any suggestion as to where these marker channels could be located?
Thanks for any help in advance

@alejoe91
Copy link
Contributor

Hi @FloHofmann

Can you share a short test file with these markers?

@FloHofmann
Copy link
Author

Hi, thanks for the quick response @alejoe91.
Here is a file. Channel 4 contains the ADC inputs from the waveshape that was played with DAC 1. Channel 31 contains characters that trigger the waveshape Data-test.zip
I hope the file transfer works this way

@FloHofmann
Copy link
Author

In case it helps. I'm using Python 3.9.18, neo 0.12.0 and sonpy 1.9.5

Hi, thanks for the quick response @alejoe91. Here is a file. Channel 4 contains the ADC inputs from the waveshape that was played with DAC 1. Channel 31 contains characters that trigger the waveshape Data-test.zip I hope the file transfer works this way

@alejoe91
Copy link
Contributor

@FloHofmann why did you label this as documentation? I would say it's more an enhancement!

@alejoe91 alejoe91 added this to the 0.14.0 milestone Mar 21, 2024
@FloHofmann
Copy link
Author

@FloHofmann why did you label this as documentation? I would say it's more an enhancement!

I was sure I was missing something in the documentation, leading to me not finding the needed channels. So I take from your replies, that there currently is no implementation for what I'm looking for?

@alejoe91
Copy link
Contributor

Honestly I'm not sure. Let me ping @samuelgarcia

@samuelgarcia
Copy link
Contributor

Hi,
Maybe your trigger is some in block.segments.events no ?
I haven't coded te CEDIO that depend on sonpy internally so I do not known.
Are you able to find this marker with puer sonpy approach ?

@FloHofmann
Copy link
Author

Hi, Maybe your trigger is some in block.segments.events no ? I haven't coded te CEDIO that depend on sonpy internally so I do not known. Are you able to find this marker with puer sonpy approach ?

Hi,
unfortunately, the block.segments.events is an empty dict in my case.
I will have to try and find it with pure sonpy, so far I've not dealt with it myself.

@FloHofmann
Copy link
Author

FloHofmann commented Apr 9, 2024

Hi, Maybe your trigger is some in block.segments.events no ? I haven't coded te CEDIO that depend on sonpy internally so I do not known. Are you able to find this marker with puer sonpy approach ?

I've tried the Sonpy approach now. Using the ReadMarkers() ( .ReadMarkers(30,1000,0,smrx.MaxTime(30)); 30 being the Channel Number of the Marker channel in my provided file, 1000 being an arbitrarily chosen number for MaxNumberMarkers) function returns a list of <sonpy.DigMark> objects that contain the sample as well as the marker codes.

So now the issue is just retrieving the codes from those DigMark object for which I'm still looking for a solution.
Maybe you know how sonpy objects can be transformed into python lists?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants