Problem with Streaming Mode using six USB TC-08 devices

Post your LabVIEW discussions here
Post Reply
Posts: 0
Joined: Wed Nov 22, 2017 8:48 am

Problem with Streaming Mode using six USB TC-08 devices

Post by RMS »


I am trying to use six TC-08 USB Data Loggers at the same time in the same VI with the streaming mode.
The attached VI works quite well with only one data logger. Using several data loggers at once crashes the VI and LabView randomly. Sometimes it works for a few starting operations in a row and reads the temperatures for a long time or it crashes instantly or after e few seconds. It seems to be a memory management issue with the dll request according to this strange behaviour. Sometimes I get error messages, which are attached as well. Could this problem be related to this topic (topic30231.html)?

I tried several solutions including the following:
- building a whole new Vi
- inserting some delay between the temperature pullings (10ms to 150ms)
- playing around with the pointer to the temp_buffer
- starting one logger after the other
- playing around with the parameters given to the .dll functions

I did not find any examples of the streaming mode with several devices. So could someone please check, if the usage of the external .dll blocks is correct? Are there any informations about the parameters in the .dll functions? The programming guide says something data type but not about recommended values. What is actually the difference between the functions "usb_tc08_get_temp" and "usb_tc08_get_temp-2"? There are two types of every function in the library.

Used system: Windows 7 enterprise - 64Bit, 32 Bit LabView, external powered USB Hub

Any advice would be very appreciated. A 100% stable VI which reads several devices at once is needed in this case. Thank you for your answers!
(101.43 KiB) Downloaded 128 times

Advanced User
Advanced User
Posts: 2856
Joined: Tue May 31, 2011 3:43 pm
Location: St. Neots, Cambridgeshire

Re: Problem with Streaming Mode using six USB TC-08 devices

Post by Hitesh »

Hi Robert,

Could you please e-mail your query to and a member of our Team will take a look.

The functions names with a '-2' ending are just duplication so please use the 'usb_tc08_get_temp()' function.

For the temp_buffer argument, you should pass in an array large to hold the data values that have been collected for that channel in the time since you last requested data for it.

Please note that the reading for each channel (including the cold junction) takes 100 ms to convert (i.e. 900 ms for all 8 channels plus the cold junction) before a new reading is available on a particular channel.


Software Dev. Engineer

Post Reply