Test and Measurement Forum

TC08 Strange temperature values

Post your Linux discussions here

TC08 Strange temperature values

Postby gt78 » Wed Sep 18, 2013 4:52 pm

Hi,

I'm using the TC-08 usb to acquire cast iron cooling curves (between 1300 and 1000 C).
The application is written in Java (it uses JNA).
Everything works well on Windows, but the Linux drivers used with a Raspberry PI and Mac drivers register odd values.

The problem is clearly shown from the derivative of the temperature (see red circles). At regular intervals the temperature seems to go up and down.

Image

Here an even more clear image of the derivative

Image

The same identical application running on Windows acquires the temperature correctly, without weird behaviors.
(the subject of the measures are cooling curves of a metal).

Image


The Mac used is a MacBook Pro and TC-08 USB, the drivers have been created starting from the Linux sources with minor changes.
The test has been done with two different TC-08, and we used the same loggers on all the three devices (Mac, Raspberry, Windows).
The same problem we see on Mac happens on the Raspberry Pi (Raspbian). Moreover on Raspbian I'm experiencing a lot of segmentation faults I'm not able to get rid of (same application works well on Mac and Windows).
The segmentation faults always happen when calling usb_tc08_get_temp, sometime it works for hours without any problems, sometimes the app crash almost immediately.

Any help would be appreciated.

By the way, is there any "ultimate" version of the Linux drivers?
We fixed a package versioned 1.7.2, which has an error in the return statement of the usb_tc08_get_temp function.

Code: Select all
return status=true ? length : -1;


should be fixed to:

Code: Select all
return status==true ? length : -1l;


And we also had to fix the imports.

Thanks a lot

Giulio
gt78
Newbie
 
Posts: 0
Joined: Wed Sep 18, 2013 4:18 pm

Re: TC08 Strange temperature values

Postby Hitesh » Wed Sep 25, 2013 9:03 am

Hi Giulio,

Have you looked at the following post?

http://www.picotech.com/support/topic11419.html

You may need to look at how your arrays are setup.

Best wishes,
Hitesh

Technical Specialist
Pico Technology
Hitesh
Site Admin
Site Admin
 
Posts: 2058
Joined: Tue May 31, 2011 3:43 pm
Location: St. Neots, Cambridgeshire

Re: TC08 Strange temperature values

Postby gt78 » Thu Oct 24, 2013 4:52 pm

Yes, all is well setup. On Windows (using official drivers) it works just fine.
On raspberry pi and Mac OSX, by using the compiled drivers for Linux even using a native application (a modified version of the example), I get the same problem. It really looks like at some point the data buffer loose some readings (or reading are not taken at correct time, this would explain the derivative wave, acceleration and deceleration.
I did not investigate in depth possible correlation between timestamps and values, since I assume the reading in streaming mode are really performed on exact intervals, and it is very hard because the problem is evident only by reading temperatures of a cooling metal, so not simple to reproduce in office.
The only thing that is very clear is:
1. The problem happens all the times with Mac and Linux
2. The problem does not occur immediately, but most of the time after few minutes
3. The problem does not occur on Windows

As I said, we use the TC-08 to read high temperatures as fast as possible (even if the problem occurs even if I try to set the reading interval to 1 second (we read 1+4 channels, so the minimal interval is 500 ms).

Any advice is very welcome. If I'm able to gather more info, I'll let you know.

Giulio
gt78
Newbie
 
Posts: 0
Joined: Wed Sep 18, 2013 4:18 pm

Re: TC08 Strange temperature values

Postby Hitesh » Wed Oct 30, 2013 11:56 am

Hi,

I'm afraid we are not able to support drivers built for the Raspberry Pi and Max OS X platforms using the Linux code.

There may be drivers produced by our Development Team for these platforms in the future but there are currently other priority projects.

It's worth checking your data types for example have you ensured that the long parameters in the usb_tc_08_get_temp function call are set to 32-bit integers?

What happens if you call usb_tc_08_get_single instead?

Thanks,
Hitesh

Technical Specialist
Pico Technology
Hitesh
Site Admin
Site Admin
 
Posts: 2058
Joined: Tue May 31, 2011 3:43 pm
Location: St. Neots, Cambridgeshire


Return to Linux

Who is online

Users browsing this forum: No registered users and 0 guests