adamreeve / npTDMS

NumPy based Python module for reading TDMS files produced by LabView

Home Page:http://nptdms.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LabView cannot read files that have had data appended with npTDMS due to version mismatch

adamreeve opened this issue · comments

When taking an existing TDMS file with version 4713 and appending a segment with metadata using npTDMS, LabView crashes when reading the modified file with an error like:

Error 53 occurred at TDMS Open in NI_TDMS File Viewer.lvlib:TDMS - File Viewer (NXG Style).vi:6570001->tdms_viewer.vi
Possible reason(s):

LabVIEW: (Hex 0x35) Manager call not supported.

It appears that this is due to the version number being written as 4712, as changing the writer to use version 4713 fixes this.

I couldn't find an explanation of the differences between version 4712 and 4713. Possibly we should always write files with version 4713, or at least make this configurable.

I've made the version number an option that defaults to 4712 and added a note in the documentation about this needing to match the existing version when appending data. It would be a breaking change to change the default to 4713 but I think that would be more appropriate so I've changed this on the v2 branch to 4713 (16483bf).