LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Weird error

We are trying to pass an image (acquired with a IMAQ 1394 grab) from a Sub-VI to a main VI through a reference. We are doing this since our Sub-VI contains an acquisition loop and we need to display the image to the user. Because of the loop we cannot pass the raw image as a variable since it will not be displayed until the end of the loop.

In doing the reference method we are using a control refnum and we insert the image inside it. As soon as it is done, if we try to save to ask for error check, LabVIEW gives us the following errors:

-         Insane Object “dataspace typemap” in “xxx.vi”: {index} (0x2)

-         Fatal internal error:  “fpsane.cpp”, line 203, LabVIEW version 7.1, you will lose any unsaved work

 

Any information or help on this subject ? 

0 Kudos
Message 1 of 6
(2,860 Views)
One quick question.  Does it crash LabVIEW or fail to save the VI or do you just get the message and then can continue to work? 

If it crashes, I am not sure how to help.  If you can keep working, then the thread here has some information about clearing up insane objects.  Maybe it will help you.

Hope that this helps,
Bob Young

0 Kudos
Message 2 of 6
(2,838 Views)
Hi Bob,

Thanks for replying so fast.
It actually fails to save the VI and crashes LabVIEW.
But let me give you more details about what happens:
I create my refnum in the control panel and as soon as I insert the image in it (by dragging it), the run arrow breaks. I can still do things in my VI but if I press the broken arrow to display the error(s) or if I try to save, then I have the insane object error poping up and it forces the VI to close.

Any idea on what I can do ?

Thanks.
0 Kudos
Message 3 of 6
(2,823 Views)
Insane object... The must lets the function to find it active.
I though they correct it in the new version but... no.
 
The insane object, is a bad wire in the VI. If you move one by one all your VI, one of them should have a wire that is not connected to it. You have to delete that wire and reconnect it.
 
In a big project, it's an impossible thing to do. There is an option that make you able to find it in a few clic of mouse.
 
I dont remember exactly what thing to add in the LabView.ini files. And after that you have to press the ctrl+shift+d or h key on your key board.
 
I'm sure this will give you a hint on the problem.
 
 
Benoit Séguin
Software Designer
0 Kudos
Message 4 of 6
(2,808 Views)
Check out this link for the object browser http://forums.ni.com/ni/board/message?board.id=170&message.id=157986&query.id=12195#M157986
Andrew Alford
Production Test Engineering Technologist
Sustainable Energy Technologies
www.sustainableenergy.com
0 Kudos
Message 5 of 6
(2,792 Views)
The insane wire may be due to an attempt to do something LabVIEW cannot do.  If the insane wire recurs, even after you find it, eliminate it, and redraw it, consider passing your image up a different way.  LabVIEW contains a plethora of data passing mechanisms.  For something large, like an image, I would recommend a queue.  In the subVI, enqueue the image when you get it.  In the main loop, dequeue with a zero timeout.  If there is nothing in the queue, don't redraw the image.  You can create queues by name so you don't even need to pass the queue reference from one VI to another.  You may want to handle queue overrun and underrun conditions, but the queue status VI should give you all the info you need to do this well.
0 Kudos
Message 6 of 6
(2,772 Views)