-
Notifications
You must be signed in to change notification settings - Fork 12
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
add ch_type and coils for eye-tracker data #39
Conversation
I'm not certain, but I think it's basically "increment by 1 for similar/related things (e.g., channel types related to HPI, sensor kinds from the same manufacturer) and increment by 10 or 100 to add new groups while leaving plenty of numerical room to expand old groups. |
MNE-Python gets constants from / stays in sync with https://github.com/mne-tools/fiff-constants/ . So we technically need things there before we add them here. In practice, to make progress in MNE-Python, you can pick/guess some reasonable values based on where other stuff is in this PR. I would go based on the Concurrently, open a PR to https://github.com/mne-tools/fiff-constants/blob/master/DictionaryTypes.txt#L276 for example to actually add them. You could open an issue first instead, but it's easy enough to open a PR-as-proposal and have people comment directly. |
this PR is into the fiff-constants repo already... or am I misunderstanding? |
yes, this is the fiff-constatns repo. another question: |
I just completely missed that this was to fiff-constants :) The numbers so far look reasonable, but let's iterate on a PR to MNE-Python to figure out the right scope for variables. This seems likely to be correct already with
|
0204967
to
3da188c
Compare
Hi @dominikwelke , we'll need to finish this PR before completing the (as a reminder, in our local branches, the repo is pointing to your commit):
let me know if there is anything I can do to do help out on this PR |
hi @scott-huberty i guess the devs here will wait until the MNE PR is more or less ready before accepting changes to the constants. this avoids potential need for multiple patches if something changes during development.. having the dev branch point to a local copy of constants doesnt hurt, as long as we change it back in the end :) |
833d487
to
9734da9
Compare
Agreed we can converge in the MNE PR first then once it's ready to go, merge this one, then fix the ref in the MNE PR as a final step before merging that one |
DictionaryTypes.txt
Outdated
@@ -274,6 +277,7 @@ enum(ch_type) "Type of the channel" | |||
dipole_wave 1000 "Dipole time curve" | |||
goodness_fit 1001 "Goodness of fit" | |||
fnirs 1100 "Functional near-infrared spectroscopy" | |||
eyetrack 1200 "Eye-tracking" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @dominikwelke can we update this file to be in line with the code in mne/io/constants.py
on our PR?
Basically, PR's on adding skin temp and galvonic skin response channels got merged after you started the eyetracking work.
So Eyetrack channels got bumped from 1200 to 1400, because temperature channels are in the 1200's, gsr in the 1300's:
From mne/io/constants.py
:
FIFF.FIFFV_FNIRS_CH = 1100 # Functional near-infrared spectroscopy
FIFF.FIFFV_TEMPERATURE_CH = 1200 # Functional near-infrared spectroscopy
FIFF.FIFFV_GALVANIC_CH = 1300 # Galvanic skin response
FIFF.FIFFV_EYETRACK_CH = 1400 # Eye-tracking
Once we update this, mne/io/tests/test_constants.py
should pass 🙂
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done @scott-huberty
here's the commit if you want to update it in your pr branch (mne/io/tests/test_constants.py):
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
awesome thanks. And now there are no conflicts between this branch and the base branch. 2 birds 1 stone..
9734da9
to
e300d7a
Compare
OK I am very confused 😵💫 ... @dominikwelke If i'm not mistaken, at some point recently you merged main into your branch. This meant a change from PR #40 is now in this branch with some additional fnirs channel types:
As far as I can tell, there are not constants for these in mne-python/main I can only see mention of these in an open mne-python PR We are hitting an error in
missing_from_fif should be an empty list, but right now it is [ |
I think it's because mne-python/main
So it seems that this latter commit ( d477427 ) is still a work in progress and shouldn't be in our branch of fiff-constants. |
ok, well spotted @scott-huberty ! i think we have two options:
as the changes are already in should the other mne-python PR not be merged in time, we can handle the fiff thing then (maybe i can rebase my changes to BEFORE the fNIRS additions and link this commit. yet, i am not sure this would work, as there would probably be only one merge commit AFTER the last merge - @larsoner ?!) technically, you could also add the new fnirs units to our io.constants file to avoid the errors, but this might also get messy if the other PR isnt merged by the time we want to merge. |
FWIW I think your PR will end up being merged before the TD NIRS one.
If this is easy enough to do (just a few lines hopefully), then let's go this route. The TD NRIS PR can just fix any errors in naming or whatever. |
Sounds good - I'll give adding the units a shot! |
Hey @larsoner how does
edit: are they supposed to be?. |
|
I'm at a loss here. your branch Maybe my branch is further behind main than yours and someone else touched Maybe I can return to this after all the other tests pass on my PR and i've merged main into it. |
Sure, feel free to temporarily mark the failures as And maybe in the meantime I can finish mne-tools/mne-python#11064 ... |
Finally figured it out.. There were indeed additions to |
7cf3d9c
to
e300d7a
Compare
hi all,
I'm working on basic eyetracker support for MNE (see mne-tools/mne-python#10751 ).
therefor we should probably add a specific channel type to the FIF standard, as @larsoner mentioned..
are these the right changes, or did I miss a relevant location?
also, what is the logic behind the numbering system? so far I inserted
????