Thanks for your question Hunter. Getting pre and post trigger data from several channels is a bit of a challenge. There are a couple of techniques, some using memory, some using files. I have attached a piece of older code that uses block size for pre-trigger depth. With LabVIEW 7.0 and later, we can probably use a binary waveform file for pre-trigger data and concatenate this with post trigger acquisition. I like your use of the trigger VI, as it searches all channels. The attached example is simpler, and only looks for one channel. Also, not in your example, I would not use the global as a way to pass the waveform data to the write to disk block. You should wire these directly, and perhaps consider a binary file format.
Preston Johnson
Solutions Manager, Industrial IoT: Condition Monitoring and Predictive Analytics
cbt
512 431 2371
preston.johnson@cbtechinc