Converting Siemens raw .log physio files to BIDS

Hey everyone!

I am currently working on a project where I need to convert Siemens (3T prisma) .log files into a BIDS-valid format. Specifically, my dataset includes physiological recordings such as pulse oximetry data. Below is a sample structure of my data:

── Physio_sub-08
│   ├── Physio_20240403_180251_cc8bbbf4-f020-450c-aa97-3823d826b3b2_ECG.log
│   ├── Physio_20240403_180251_cc8bbbf4-f020-450c-aa97-3823d826b3b2_EXT.log
│   ├── Physio_20240403_180251_cc8bbbf4-f020-450c-aa97-3823d826b3b2_Info.log
│   ├── Physio_20240403_180251_cc8bbbf4-f020-450c-aa97-3823d826b3b2_PULS.log
│   ├── Physio_20240403_180251_cc8bbbf4-f020-450c-aa97-3823d826b3b2_RESP.log
│   ├── Physio_20240403_183707_6c4c9955-9499-4d9d-b1d5-30557f38b7f3_EXT.log
│   ├── Physio_20240403_183707_6c4c9955-9499-4d9d-b1d5-30557f38b7f3_Info.log
│   ├── Physio_20240403_183707_6c4c9955-9499-4d9d-b1d5-30557f38b7f3_PULS.log
│   ├── Physio_20240403_183919_405242de-7494-40aa-b7e9-16ae04ee4255_ECG.log
│   ├── Physio_20240403_183919_405242de-7494-40aa-b7e9-16ae04ee4255_EXT.log
│   ├── Physio_20240403_183919_405242de-7494-40aa-b7e9-16ae04ee4255_Info.log
│   ├── Physio_20240403_183919_405242de-7494-40aa-b7e9-16ae04ee4255_PULS.log
│   ├── Physio_20240403_183919_405242de-7494-40aa-b7e9-16ae04ee4255_RESP.log
│   ├── Physio_20240403_191737_eb3fac5f-b283-430a-8a33-3e88f6883f9a_EXT.log
│   ├── Physio_20240403_191737_eb3fac5f-b283-430a-8a33-3e88f6883f9a_Info.log
│   ├── Physio_20240403_191737_eb3fac5f-b283-430a-8a33-3e88f6883f9a_PULS.log
│   ├── Physio_20240403_191934_10613d9f-4a95-417d-846e-504d9ba393ab_ECG.log
│   ├── Physio_20240403_191934_10613d9f-4a95-417d-846e-504d9ba393ab_EXT.log
│   ├── Physio_20240403_191934_10613d9f-4a95-417d-846e-504d9ba393ab_Info.log
│   ├── Physio_20240403_191934_10613d9f-4a95-417d-846e-504d9ba393ab_PULS.log
│   ├── Physio_20240403_191934_10613d9f-4a95-417d-846e-504d9ba393ab_RESP.log
│   ├── Physio_20240403_200001_4b165311-e464-4ef6-a69b-de808140c2c6_EXT.log
│   ├── Physio_20240403_200001_4b165311-e464-4ef6-a69b-de808140c2c6_Info.log
│   └── Physio_20240403_200001_4b165311-e464-4ef6-a69b-de808140c2c6_PULS.log

Since we used only the pulse oximeter then only *_PULS.log files contained some data as I understand.

The attached image shows the pulse oximeter I used for these recordings.

I’ve found several tools available:

  1. bidsphysio (GitHub - cbinyu/bidsphysio: Converts physio data to BIDS physiological recording). It says it should work with .log files but after a couple of tries it insisted on .dcm files. Probably there is a workaround that I don’t see.
  2. extra cmrr physio (GitHub - flywheel-apps/extract-cmrr-physio: Extract physiological log files from encoded "_PHYSIO" DICOM file generated by CMRR MB sequences (>=R015, >=VD13A)). It seems like it should be doing the job but I haven’t tried yet.
  3. phys2bids (GitHub - physiopy/phys2bids: Python3 library to format physiological files in BIDS. At the moment, it supports Acqknowledge and Labchart. BrainHack participants, check the issues with the BrainHack labels!).

I haven’t done this before so I decided to ask the community for recommendations :slight_smile:
I’m just wondering if anyone has any recommendations on what is better to use before I dive too deep. Any help/advice is appreciated!

Best,
Egor

I believe it should be possible to do with BIDScoin which adapted the code from here. If anyone has done it before and could share any tips, that would be great!