gms | German Medical Science

68. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e. V. (GMDS)

17.09. - 21.09.23, Heilbronn

PyDapsys: An Open-Source Library for Electrophysiology Data Recorded with DAPSYS – A Technical Case Report

Meeting Abstract

  • Peter Konradi - Institute of Medical Informatics, Medical Faculty, RWTH Aachen University, Aachen, Germany
  • Alina Troglio - Junior Research Group Neuroscience, Interdisciplinary Center for Clinical Research Within the Faculty of Medicine, RWTH Aachen University, Aachen, Germany
  • Ariadna Pérez Garriga - Institute of Medical Informatics, Medical Faculty, RWTH Aachen University, Aachen, Germany
  • Aarón Pérez Martín - Simulation and Data Lab Neuroscience, Jülich Supercomputing Centre (JSC), Institute for Advanced Simulation, JARA, Forschungszentrum Jülich GmbH, Jülich, Germany
  • Rainer Röhrig - Institute of Medical Informatics, Medical Faculty, RWTH Aachen University, Aachen, Germany
  • Barbara Namer - Junior Research Group Neuroscience, Interdisciplinary Center for Clinical Research Within the Faculty of Medicine, RWTH Aachen University, Aachen, Germany
  • Ekaterina Kutafina - Institute of Medical Informatics, Medical Faculty, RWTH Aachen University, Aachen, Germany

Deutsche Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie. 68. Jahrestagung der Deutschen Gesellschaft für Medizinische Informatik, Biometrie und Epidemiologie e. V. (GMDS). Heilbronn, 17.-21.09.2023. Düsseldorf: German Medical Science GMS Publishing House; 2023. DocAbstr. 51

doi: 10.3205/23gmds024, urn:nbn:de:0183-23gmds0247

Veröffentlicht: 15. September 2023

© 2023 Konradi et al.
Dieser Artikel ist ein Open-Access-Artikel und steht unter den Lizenzbedingungen der Creative Commons Attribution 4.0 License (Namensnennung). Lizenz-Angaben siehe http://creativecommons.org/licenses/by/4.0/.


Gliederung

Text

Introduction: Microneurography is a neurophysiological technique, which studies activity from single nerve fibers of the peripheral nervous system in awake humans or animals [1]. It uses a single microelectrode to record nerve activities. The analysis of these in-vivo recordings is an important part of pain and itch research.

The “Data Acquisition Processor System” (DAPSYS) [2] is an acquisition system used in microneurography. It stores data in a proprietary format, which can be exported to CSV files. To support FAIR data handling, there is a need for a library, which can efficiently and directly export DAPSYS files to open electrophysiological formats (e.g., HDF).

State of the art: There are emergent solutions to support the reverse-engineering of proprietary data formats, so that the researchers can gain the necessary access to their own data (see e.g., MARBLE [3]). However, at their current stage of development, none could be applied to our use case and a tailored approach was necessary.

Concept: We reverse-engineered DAPSYS proprietary binary file format. We used the hex-editor “ImHex” [4] to open the files and inspect their binary contents in hexadecimal representation. We located known values (e.g., signal amplitudes) by performing a simple search. Structures were identified based on repeating patterns. The functions of remaining unknown values were discovered by using the following workflow:

1.
Change the file using the DAPSYS GUI (e.g., removing a comment).
2.
Track these changes in the binary file.
3.
In a different file, identify the field and change its value using the hex-editor.
4.
Open the modified file from step 3 in DAPSYS and assert that the change had the expected effect.

Implementation: We discovered that DAPSYS binary files store data in a flat structure, that can be split into 4 parts:

1.
Files begin with a fixed-length header, which is not required to read the actual data from the file.
2.
The data is stored in discontinuous chunks (“pages”), which are identified by a unique ID. The layout of a page differs based on whether it stores textual or waveform data.
3.
After the last page, the “Table of Contents” (ToC) begins, which defines the hierarchical structure of the file. The ToC contains folders and so-called “streams”, which each refer to a set of either text or data pages.
4.
Lastly, the footer consists of the DAPSYS version and its serial number.

Based on our findings, we implemented an open-source Python library [5] to load data from DAPSYS files and export them to HDF5 files, which is commonly accepted for storing electrophysiological data.

Lessons learned: The implemented library allows access to the DAPSYS data without the software installation and outperforms the CSV export in both time (factor 100–200) and storage efficiency (factor 5). It supports the accessibility of experimental data and creation of multicenter databases, necessary for the microneurography community. The unique encoded experimental ID links the exported files to the original data as well as to the separately stored metadata in odML format and thus ensures data provenance.

The authors declare that they have no competing interests.

The authors declare that an ethics committee vote is not required.


References

1.
Ackerley R, Watkins RH. Microneurography as a tool to study the function of individual C-fiber afferents in humans: responses from nociceptors, thermoreceptors, and mechanoreceptors. J Neurophysiol. 2018 Dec 1;120(6):2834–46. DOI: 10.1152/jn.00109.2018 Externer Link
2.
Turnquist B. DAPSYS (Data Acquisition Processor System). [cited 2023 Mar 20]. Available from: http://dapsys.net/ Externer Link
3.
Brinckmann S, Hofmann V, D’Mello F. MARBLE software project. [cited 2023 Mar 20]. Available from: https://gitlab-public.fz-juelich.de/marble Externer Link
4.
Sägesser (“WerWolv”) N. ImHex. [cited 2023 Mar 20]. Available from: https://github.com/WerWolv/ImHex Externer Link
5.
Konradi P, Troglio A, Namer B, Kutafina E. Digital-C-Fiber/PyDapsys. Zenodo; 2023. DOI: 10.5281/zenodo.7970520 Externer Link