LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

PICO TC-08 connection

Solved!
Go to solution

Hello

I am attempting to connect a Pico TC-08 data logger device to labview 2020 with the goal of getting a temperature reading from a single thermocouple (to test right now). 

Screenshot 2025-02-19 at 9.57.44 AM.png

This is  my block diagram, and it is seen that the error 1097 comes at the beginning. 

I have already run as an admin, restarted labview, ensured the correct path in the call library functions, changed usb ports, etc but cannot solve this. 

Any help in the right direction or advice would be appreciated. 

0 Kudos
Message 1 of 9
(160 Views)

Try it in LabVIEW 32-bit, high chance the dll may have been compiled for 32-bit.

Santhosh
Soliton Technologies

New to the forum? Please read community guidelines and how to ask smart questions

Only two ways to appreciate someone who spent their free time to reply/answer your question - give them Kudos or mark their reply as the answer/solution.

Finding it hard to source NI hardware? Try NI Trading Post
0 Kudos
Message 2 of 9
(154 Views)

Hi! 

thank you for your response. We are running it in the 32 bit version. For some reason, the only thing we are able to do is open the tc-08 using the call library function. The rest of the consequent blocks are: set channel -> run -> get temp -> stop -> close 

0 Kudos
Message 3 of 9
(152 Views)

Error 1097 just means the DLL you are using threw an error:  Error 1097 Occurred at Call Library Function Node - NI

 

You may have created the CLFN wrong.

It could be the bit endianness.  Are you using 32-bit LabVIEW with 32-bit DLL.  Or 64-bit for both?  You can't mix them.

 

Did you try to use the standard Pico software to connect and read from your logger before you tried LabVIEW?  Did it work?

 

Did you try using the wizard to create your VIs from the DLL? Tutorial: Creating Wrapper VIs for C/C++ DLL functions using the Import Shared Library Wizard - NI C...

LabVIEW Pro Dev & Measurement Studio Pro (VS Pro) 2019
0 Kudos
Message 4 of 9
(151 Views)

Actually if the bitness doesn't match, LabVIEW will correctly claim that it can't load the shared library and the VI is broken (or if you enabled to specify the library path and name from the diagram it will give a file not found error).

1097 means something somewhere badly messed with the integrity of the memory and/or process space.

This can be because of wrong configured parameters, wrong calling convention, bad parameter values that the DLL is not prepared to handle, or bugs in the DLL.

After a 1097 error, your process integrity is not guaranteed anymore and continuing from there without restarting LabVIEW can potentially corrupt VIs in memory and if you happen to save them, corrupt the file on disk. Other possibilities could be to call OS functions with parameters that could hose your system.

 

Basically error 1097 means: LabVIEW detected that something is not as it should have been, such as stack or memory corruption. If you have enabled maximum Error Reporting in the Call Library Node configuration, it attempts to limit the damage as much as possible, for instance by adjusting the stack to what it should be according to the Call Library Node configuration, but that is just a bandaid to prevent the worst. It can not even start to guess what exactly went wrong, except that something went wrong, so fixing it after the fact is not really possible, just trying to limit the damage, so it is at least able to report an error without running into nirvana while trying to do that! 

Rolf Kalbermatter
My Blog
Message 5 of 9
(96 Views)
Solution
Accepted by ahmhafsa

Have you tried the examples in GitHub - picotech/picosdk-ni-labview-examples: A set of National Instruments LabVIEW examples for Pi...?

Did you follow the instructions to place the SDK lib in the correct location?

-------------------------------------------------------
Applications Engineer | TME Systems
0 Kudos
Message 6 of 9
(63 Views)

Hi everyone, 

 

I got some helpful suggestions on my last post. So I decided to use the GitHub libraries (https://github.com/bankrasrg/usbtc08) and upon playing around with some of the VI's I noticed that the one that gives continuous temperature (streaminggetemp.vi) only goes through the "false" part of the code and for the life of me, I cannot figure out why! 

 

Screenshot 2025-02-23 at 8.52.40 PM.png

 

My goal is to put some of the VI's I need (open, channel setting, stream for reading temps, stop and close) into one VI so I can see the temperatures of all 8 channels changing on the front panel. This is my block diagram that is not working. I am aware that the indicators are not connected but I tried to use 8 of the getsingle VI's for all of the channels but did not find success. 

 

Screenshot 2025-02-23 at 8.54.34 PM.png

 

I should note that using the getsingle.vi works, so I can use the code for just one channel/ thermocouple. I need to get the them for all the channels, so I was hoping I could just the get stream one instead and figure out why it only runs for false and I never see the true. I did try to modify it with >= and it still did not work. 

 

I would appreciate even the slightest bit of wisdom in some direction! Thanks. 

0 Kudos
Message 7 of 9
(46 Views)

Thanks for the insight. 

0 Kudos
Message 8 of 9
(35 Views)

Hi ahmhafsa,

 


@ahmhafsa wrote:

I noticed that the one that gives continuous temperature (streaminggetemp.vi) only goes through the "false" part of the code and for the life of me, I cannot figure out why! 


Which of the 4 case structures in your image "goes through the false case"?

You really should provide some more details!

 


@ahmhafsa wrote:

My goal is to put some of the VI's I need (open, channel setting, stream for reading temps, stop and close) into one VI so I can see the temperatures of all 8 channels changing on the front panel. This is my block diagram that is not working. I am aware that the indicators are not connected but I tried to use 8 of the getsingle VI's for all of the channels but did not find success. 

 

Screenshot 2025-02-23 at 8.54.34 PM.png


I don't think calling 8 subVIs in parallel in random order (as there is no "THINK DATAFLOW!") will work as expected with your device…

You also don't show where you want to display the readings nor how to get those readings.

You even forgot to attach your VI and to show your channel settings!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 9 of 9
(23 Views)