Broken Wire ---- FPGA Interface Node Error

Hi there,
I am programming my RT application and I am getting this weird error:
As you see, I am trying to set the value to a FPGA control (which is a typedef enum) and I am getting this broken wire strange
for me, error.
I was looking for a solution in the forums but I wasn´t able to get one.. Anyone could help me??
Thanks!!
PS: The error message was like "The type of the sink is void" which is untrue because is already defined in the FPGA vi.
Solved!
Go to Solution.

Solved.
To who may concern, it was like I changed some of the typedefs and didnot have that in mind. A recompilation solved the issue.

Similar Messages

  • HDL Interface Node (UsingFilterCore.vi) and "timing constraint" error when compiling

    I'm trying to use the HDL interface node in LV8 FPGA with a PCI-5640R and had the "timing constraint" error when compiling my VI, however, the same VI was successfully compiled on a CRIO-9104, it seems the FPGA on PCI-5640R is not good as the one on CRIO-9104, or I'm not using it right. could you please kindly help me out?
    I tested it with the sample code downloaded from NI website
    ( http://zone.ni.com/devzone/conceptd.nsf/webmain/456722DDDE17986A86256E7B0065EE6F ) which demonstrates using an IP core for a filter. To simplify it, I only keep the HDL Interface Node and the While Loop (see "UsingFilterCore.vi" in attached zip file), and then I created 2 projects including this VI (1 for CRIO-9104, in sub folder "CRIO-9104", the other for PCI-5640R, in sub folder "IFRIO 5640"). When opening the 2 projects separately in LV8.0 and selecting the VI for compile, the one for 9104 passed and the other failed. Here I attach the source code, error message screenshot and the NIReport from MAX, hope you can reduplicate the problem.
    Can you help me out? Thanks very much !
    Message Edited by Jerry_L on 03-26-2006 09:28 PM
    Message Edited by Jerry_L on 03-26-2006 09:29 PM

    Hi Jerry,
    I'm just tried to make all these steps by myself (http://zone.ni.com/devzone/cda/tut/p/id/3516). I have generated FIR filter using Xilinx ISE and got *.VHD file which was going to use in HDL Node.
    In the Parameters tab of the HDL Interface Node configuration dialog, double-click in the Names column to add parameters. Create parameters as shown below.
    Next, switch to the Code tab. Notice that your parameters now appear in the entity section. To complete the next two sections of code, you will need to refer to the filt.vhd file that you generated earlier and interface the filter core to the LabVIEW FPGA execution system.
    1. The first problem I met was integrating VHDL code from earlier generated *.VHD file to CODE tab in properties of HDL Node. Content of entity section in *.VHD is not the same that in your attached file. Please check it in attached files. I'm sure this is the main reasen of problem.
    Next, switch to the External Files tab. Click the Add File button and select the filt.edn file that you created earlier. This is the EDIF netlist file that you generated earlier.
    2. I have no idea where can I get it and when during filter generation using Xilinx ISE it was generated too. How can I get it? I had to use your attached file filt.edn.
    3. After that I have made the same schematics like you have in your VI FPGA and try to run. But I've got two error messages:
    HDL Interfave node: enable chain not handled. Details: Refer to the documentation for the correct assignments for the enable_out output from your HDL code.
    HDL Interfave node: output not handled. Details: Right-click the node, select Configure to open the Configure HDL Interface Node dialog box, and use the Code tab to handle all output parameters. 
    Actually I need to model FIR filter:
    Bandwidth 200-600 Hz
    Sampling 8 KHz
    Attenuation 80 dB
    That's why I tried to follow all these steps by myself to understand how does it work.
    Thanks a lot.
    Nikita
    Attachments:
    Filter1.vi ‏16 KB

  • Using code interface node with dll crashes LV 2011 but not LV 8.6... using max error handling does nothing

    Hi all,
    I'm having a peculiar problem.
    I inherited a project saved in LabVIEW 8.6. The project must use of particular dll that was built a few years ago. The original developer and source code for this .dll are long gone. The very core logic exists, in the form of embedded C code, and that's it. The .dll is called through a Code Interface Node in LV 8.6 and this setup manages to "work". Howver, running the VI that calls this .dll in LV 2011 causes an "insta crash", as in, no "program has stopped responding".  Error message pops up, then all LV windows close.
    It's very similar to that described in here:
    http://digital.ni.com/public.nsf/allkb/D84C9775ABD921CF8625772A005CA50C
    but this KB says to try putting the amount of error handling to maximum. I tried that, but it didn't help. 
    Using the "Debug" option allows me to run the just-in-time debugger with CVI 2010, which then proceeds to say this:
    Finally, I manage to get this out of it: 
    FATAL RUN-TIME ERROR:   Unknown source position, thread id 0x000012D4:   A non-debuggable thread caused a 'General Protection' fault at address 0x00000000.
    I don't think that really helps at all, but it's there.
    Here is the function prototype of the .dll:
    void  _inputPM@224(uint8_t arg1, uint16_t arg2, uint8_t arg3, float arg4, float arg5, float arg6, float arg7, float arg8, float arg9, float arg10, float arg11, float arg12, float arg13, float arg14, float arg15, float arg16, float arg17, uint16_t arg18, uint16_t arg19, uint16_t arg20, uint16_t arg21, uint16_t arg22, uint16_t arg23, uint16_t arg24, uint16_t arg25, uint16_t arg26, float arg27, float arg28, float arg29, float arg30, float arg31, float arg32, float arg33, float arg34, float arg35, float arg36, float arg37, float arg38, float arg39, float arg40, float arg41, float arg42, float arg43, float arg44, float arg45, float arg46, float arg47, uint16_t arg48, uint16_t arg49, uint16_t arg50, uint16_t arg51, uint16_t arg52, float arg53, float arg54, float arg55, float arg56);
    (never seen a function take 50 input params like that (wouldn't you use a struct? array? something? But I digress, and I don't know anything about .dlls...))  
    I do have a ".lib" and a ".cdb" file with the same name as the .dll, but those also looks like some kind of compiled file. 
    I'm sure the answer I'm going to get is that there is no way of telling what's really going on without .dll source code. I'm hoping against hope that there may be another way or hack.
    Any ideas? Thank you for you help. 
    Regards,
    Mark G 
    Solved!
    Go to Solution.

    MarkCG wrote:
    Changing the call library node to stdcall (WINAPI) did the trick! No more crash. Thank you very much!
    I haven't run LV2011 on windows XP, only on windows 7, so I don't know if that makes a dfference. But  The call type makes no difference when using LV 8.6 on the same machine, however.
    Now I've got to make the .DLL run corretly on a compact fieldpoint....  and avoid crashing IT. 
    Thank you for the help all!
    Well, the DLL did work fine in LabVIEW 8.6 because earlier versions of LabVIEW automatically proceeded to change the calling convention to stdcall, if they noticed a function name decoration of @# (# = number of bytes passed on the stack) appended to the name. This is the default naming decoration for stdcall functions used by VisualC. However this decoration can be overwritten with linker switches, other compilers don't use them always in the same way, and most likely there are in the mean time compilers out there that can produce such decorations also for non stdcall calling convention. So this automagic trickery was removed from newer LabVIEW versions.
    I do think it could be considered a bug in the code that upgrades LabVIEW VIs, that it uses the calling convention that is configuerd in the dialog, instead of the calling convention earlier LabVIEW versions used automagically, but it is an esoteric corner case.
    What Compact Fieldpoint controller do you have? If it's anything newer than 20xx or 21xx forget it. The 22xx controllers use a PPC CPU and VxWorks operating system and can never get a Windows DLL to operate properly. If it is a 20xx controller it's still highly likely that DLL can not even get loaded into LabVIEW as it likely relies on other runtime libraries and possibly Win32 APIs not present in the Pharlap ETS runtime kernel used on those controllers.
    There is a tool to check a DLL for incompatible imports that are not present on specific ETS RT systems. And this list summarizes the RT system used on the various NI controllers.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • FPGA C API Interface - NiFpga_Open error: -63180

    Hello,
    - I've compiled a bitfile for my NI9148.
    - Generated the neccesary files using C API Interface.
    - Created a C console project and tried to connect to the FPGA.
    My problem occurs when I run the code:
    NiFpga_MergeStatus(&status, NiFpga_Open(NiFpga_FPGACharging_Bitfile,
    NiFpga_FPGACharging_Signature,
    "//169.254.7.183/RIO0",
    0,
    &session));
    // NiFpga_Initialize(); is called before NiFpga_Open.
    The 'status' variable gives me the error: -63180 which is not defined in the FPGA Interface C API error codes
    In order to try to find what the problem is I've tried to
    - Change the name of the bitfile to an incorrect one, by doing so the error returned was -63101 which is OK because it represents NiFpga_Status_BitfileReadError.
    - Change the name of the resource to an incorrect one, by doing so the error returned was -63192 which is OK because it represents NiFpga_Status_InvalidResourceName.
    So, what does -63180 mean ?
    Thanks,
    Robert.

    Hello sfla,
    I found some documents which could interest you :
    First, did you look the examples located in the folders given by this section ?
    Then, I found an example program that I attached to this post in order to help you. In it, there is NiFpga_Session function.
    By looking in other sections of the help, I found this section which lead to read and write functions. Those functions need a session (NiFpga_Session) and an indicator number as parameters. So I think the following line should allow you to only open a session without loading any bitfile on the FPGA :
    NiFpga_Session session;
    At last, if my advices don't allow you to realize what you want, I think you can take a look to this forum.
    Regards,
    Jérémy C.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Travaux Pratiques d'initiation à LabVIEW et à la mesure
    Du 2 au 23 octobre, partout en France
    Attachments:
    Example Program.txt ‏3 KB

  • 2011 9501 C-Series Example broken wire/property

    Hello,
    I'm trying to run the 2011 Position Control (open loop) example for the 9501 module, but it is showing a broken connection to the "Time Interval" property of the "Straight-Line Move" property node in the "Calculate Move Profile" VI. I've searched and the Time Interval property is not listed as a property of Straight-Line Move.
    I'm running 2011 Softmotion Standard, is this simply an issue of not having Premium, or is this an actual problem with the code that I can fix. If so any advice on where to start? Thanks

    Wandering, 
    As long as you have the Soft Motion and Real Time modules installed, there should be no reason why a broken wire should appear when the Calculate Move Profile.vi is opened. If the Real Time module is not installed, then every wire to this property node would be broken, not just the Time Interval. 
    This could indicate that a particular file or dll is missing. I would attempt to try a repair on the installation of both of these modules, restart your computer, and then see if the example opens up correctly. 
    If you are still able to use the 2010 example, you could easily fix this reported issue with the incorrect Mechanical Action by referring to this NI White Paper, and look at item #288167 under Axis Interface. This describes the simple work around necessary in order to fix this small error.
    Huntington W
    National Instruments
    Applications Engineer
    ***Don't forget to give Kudos and Accepted as Solution where it is deserved***

  • Access an interface node : the mapping has not been completed

    Hello all,
    by getting an element of interface-node within a component I get follow error message
    "the mapping to node COMPONENTCONTROLLER.1.INIT_DATA" has not been completed"
    Can anybody say me, what does it mean?
    Some more information (in case for somebody need it):
    1. I have  a component A, where I have defined usage component of component B.
    2. Component B has an interface node INIT_DATA, which is mapped with the node INIT_DATA of component A.
    3. I set attributes of node INIT_DATA of component A and expect, that those values will be assigned to the node INIT_DATA of component B (becouse they are mapped)
    4. by doing it within a component A:
    lo_node = wd_context->get_child_node( name = if_componentcontroller->wdctx=>init_data).
    lo_elem->get_element( ).
    lo_elem->set_attribute(....).
    I get this error message:
    "the mapping to node COMPONENTCONTROLLER.1.INIT_DATA" has not been completed"
    Please let me know, what I do wrong?
    thanks in advance
    Anna

    Hi Anna,
    You should not be having the node INIT_DATA defined separately in both components. It should be defined only in component B and marked as Interface node. Now when you define a usage of component B in component A, you will be able to see this node. You need to map this in component A by drag and drop.
    Also, in the properties tab of the component controller of component A, declare the usage of component B using the F4 help. I think that should solve your problem.
    Regards
    Nithya

  • External component usage with interface node

    Hi everyone,
    I have component A , which has an interface node with Input element checked:
    Nodes     
    Node Name     IF_HROBJID
    Interface Node     1
    Input Element (Ext.)     1
    Dictionary structure     ZHR_HROBJID_LIST
    Cardinality     0..n
    I have another component: Component B Where I want to bind a table to this interface node.
    In component B :
    1. I definied the Componenet Usage of component B in the componenet controller.
    2. I drag & drop the IF_HROBJID node  to the component controller's context (the node is mapped)
    But when I try to bind a table, I always get the " The Mapping to Node COMPONENTCONTROLLER.1.IF_HROBJID Has Not Been Completed. "  error.
    nd_if_hrobjid = wd_context->path_get_node( path = 'IF_HROBJID' ).
    nd_if_hrobjid->bind_table( lt_if_hrobjid ).
    Can someone tell me what is the problem, and how can I solve it?
    Thanks
    N.

    Hi,
    Here you are trying to use component A in component B right?
    Then what you need to do is:
    1. Declare the component usage of A say A_USAGE in properties tab of component B.
    2. Create a node say 'DATA' in component controller of component B. The node 'DATA' would have the same structure as the node in your component A.
    3. Fill the node 'DATA' in component controller's method.
    4. Under your webdynpro component B, you will see Component Usages -> A_USAGE. open interface controller inside that.
        Goto context tab and drag the 'DATA' node from component controller of B on to the node in interface controller.
    Hope this is clear!
    Best Regards,
    Srilatha

  • FPGA Interface Cast question

    I'm playing with a 5644 VST and the VST Streaming template.  On the FPGA VI I added some code, then added an indicator to the FPGA VI front panel and compiled.  Running the FPGA VI in interactive execution mode, the indicator works well.  On the host end, though, I can't seem to access the new indicator with a Read/Write control. 
    Coming out of the Open FPGA VI Reference I can see the indicator on the wire, but in the Dynamic FPGA Interface Cast function it's getting stripped out of the refnum somehow.  If I connect a Read/Write control directly to the output of the Open Reference function I can access the indicator just fine.
    Any idea what I'm doing wrong?
    Thanks.
    Solved!
    Go to Solution.

    Have you re-configured your FPGA VI reference interface with the new bitfile?  The dynamic interface cast defines the output wire as having all the methods and indicators described by the type wire connected.  You can right-click on the type constant and select "Configure FPGA VI Reference...".  In the pop-up that follows, choose "Import from bitfile..." and then select the new bitfile that you've built.
    You'll need to update the fpga reference type in the "Device Session.ctl" type def as well.  This is the type that you'll be able to access throughout the project.

  • Code interface node - .lsb generated but does not load

    Howdy,
    i am using labview 6.1 and VC++/visual studio .NET 2003.
    i tried creating a simple code interface node to add two numbers. i followed the steps given in the "Using External Code in Labview" Manual. I made only one change, which is switching out "$(WkspDir)\$(OutDir)" (under custom build) with "$(ProjectDir)$(OutDir)" as the $(WkspDir) macro is missing from VC++.
    The build occurs successfully and i get a .lsb file. But when i ask the code interface node to load it up, it doesn't. The error description is, "Code Interface Node: object code not loaded."
    any suggestions? thanks in advance.

    Hi,
    This KB describes what may be the issue. I hope this is helpful.
    Regards,
    Ankita

  • CIN (Code interface node) LabVIEW runtime engine dependency

    Hello:
    Am I correct that the old style CIN (code interface node) is not dependent on what version of LabVIEW runtime engine is being used?
    However if I create a dll  from say LabVIEW 8.2 I must then alway have LabVIEW runtime 8.2 installed on any newer machine with newer version of LabVIEW?
    Thank You!

    GE Osmonics wrote:
    Hello:
    What I have are old CIN (no source) that work in LabVIEW7.1 but will not work in LabVIEW 2010 (link error, object code not loaded). 
    What I thought I could do is generate dll from the vi's that contain the CIN using LabVIEW 7.1 with application builder.
     I could use the Call Library Function from LabVIEW 2010 to load the 7.1 generated dll  to effectively do what the old CIN accomplished
    provided I installed the LabVIEW 7.1 runtime engine on my LabVIEW 2010 machine
    Thanks for the input
    If the CIN resource doesn't load you most likely changed the LabVIEW platform. LabVIEW for Windows 32 Bit and LabVIEW for Windows 64 Bit are different platforms. Just as LabVIEW for Windows and LabVIEW for Macintosh or Linux. A 32 Bit DLL, which a CIN is internally can't be executed in a 64 Bit environment at all.
    Your solution fails for more than one reason here. LabVIEW will try to load and link a LabVIEW DLL into its actual runtime environment to avoid interprocess communication latency which would be inavoidable if the DLL is started in a seperate runtime engine, which is in fact a new process. If your issue is 32 bit to 64 Bit you won't be able to link the 7.1 32 Bit DLL into your LabVIEW 64 Bit application through the Call Library Node at all.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • CIN(Code Interface Node)

    NI engineers:
    I am one of your users (labVIEW 6.1).
    Now, I have some questions to ask you. Please give me some help.
    I try to use the CIN(Code Interface Node) function, but I can not pass compile.I do not know why?
    The c file is very simple, and the Compiling result is as following.
    Please help me to solve the problem.
    Thank you !
    Chenyong
    2002/7/7
    * CIN source file
    #include "extcode.h"
    CIN MgErr CINRun(int a,int b,int c);
    CIN MgErr CINRun(int a,int b,int c) {
    /* ENTER YOUR CODE HERE */
    int a;int b;int c;
    a=1;b=2;
    c=a+b;
    return noErr;
    --------------------Configuration: try - Win32 Debug--------
    Compiling...
    629.c
    c:\labview\labview 6.1\z_beginner\629.c(17) : fatal error C1010: unexpected end of file while looking for precompiled header directive
    Error executing cl.exe.

    Hallo
    re-declaring the parameters as local variables will prevent the function to do what you expect.
    But your error is more probably a problem the compiler configuration. Make sure the path to the include file extcode.h (and all it's own includes) is known to your compiler.
    Gabi
    7.1 -- 2013
    CLA

  • Unable to find HDL Interface Node

    I have MyRio and LabView 2014 with all the modules installed and updated. 
    Xilinx 2014 is also installed and I can compile for FPGA.
    However in block diagram I can't find HDL interface Node for importing VHDL code. As you see in the second screenshot. 
    How may I solve this issue?
    Solved!
    Go to Solution.

    You mean that IP Integration node?
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • NI 9512 with Labview FPGA Interface

    Is it possible to use the NI 9512 stepper drive module with the Labview FPGA interface or is it only possible to use it with the scan interface? When I try to add the module to an FPGA target, I get an error telling me that Labview FPGA does not support this module with the current version of NI-RIO, but I have the latest version of NI-RIO installed.
    Solved!
    Go to Solution.

    Hi RJ12,
    Thank you for the info!
    If this problem is holding you up you should give our Applications Engineering department a call at 866-275-6964 to discuss it. The 9076 can have some compilation compatibility issues with our motion modules so it's certainly possible you could be seeing such an error.
    Feel free to get in touch with us if we can help out in any way, or consider starting a new thread with more details on the compilation error if you'd like to see if a corrective action report (CAR) already exists.
    Best regards,
    Andy C.
    Applications Engineering
    National Instruments 

  • Effeciency of HDL Interface Node compared to IP Net

    Hi,
        If I use HDL Interface Node for VHDL code in FPGA VI, Will it be more efficient than IPs which are available at http://www.ni.com/ipnet/ ?
    Kindly guide me.
    Thanks and Regards,
    Rashid
    Solved!
    Go to Solution.

    Hello Rashid,
    IP on IPNet will be written using CLIP which is much better for implementing VHDL into your LabVIEW FPGA code.  The following document discusses some of the differences between the two.  
    http://digital.ni.com/public.nsf/allkb/ce502221933fcceb8625750000011fb5?OpenDocument
    Also, something to keep in mind, as of LabVIEW 2010 the HDL node will be deprecated so for future compatibility, you are better going the CLIP route.
    David_L | Certified LabVIEW Architect
    LabVIEW Tools Network | LabVIEW Tools Network Developer Center

  • ESYU: ENCOIN: ECO Open Interface Program 사용시 error 발생 문제

    Purpose
    Oracle Engineering - Version: 11.5.6
    ECOs import를 위해 ECO Open Interface(ENCOIN module)을 사용할 때,
    Interface program이 아래와 같은 error를 발생시킨다.
    "ORACLE error 6550 in FDPSTP
    Cause: FDPSTP failed due to ORA-06550: line 1, column 7:
    PLS-00201: identifier 'ENG_LAUNCH_ECO_OI_PK.ENG_LAUNCH_IMPORT' must be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored"
    어떻게 ENCOIN: ECO Open Interface program을 사용해야 하는지 알아본다.
    Solution
    ECOs를 importing 하기 위해 ECO open interface를 사용하는 것은 권장하지도 않고,
    support 되지도 않는다.
    ECO data를 load 하기 위해 ECO open interface를 사용하는 대신 ECO Business Object
    이나 ECO form을 사용해야 한다.
    ECO Business Object 사용에 대한 보다 상세한 내용은 Manufacturing and Open Interfaces
    Manual을 참조한다.
    또한 Note 132874.1에 설명되어져 있는 ECOBOI module을 이용하도록 한다.
    만일 당신의 application version이 11.5.9 이상이라면 ENCOIN module(ECO Open Interface)는
    ECO details를 import 하기 위해 사용될 수 있고, ENCOIN은 11.5.9 이상의 version에서만
    지원이 된다.
    Reference
    Note 392011.1

Maybe you are looking for

  • Can you block file types???

    Can you block certain file types from playing to force users to have a standardized file type to be uploaded to the server?  For example, if we decide we do not want .wav files played on the server, is there a configuration setting to block/stop a .w

  • Is import & export working in ECC version?

    i had one program. In which Export and Import is not working properly in ECC 6.0 version where as 4.6C working fine. If i commented the Import & Export than only it is working fine. Is there any other procedure OR how to use import and export in ECC

  • Link between pe51 and SAP script

    I have a requirement for check printing along with remuneration statement. I have copied the standard sap script f110_prenum_chck into z110_prenum_chck I am using the standard driver program RFFOUS_C. My requirement is: Remuneration statement from PE

  • My hard drive ISN'T FULL!

    My Mac notified me that my Macintosh HD was becoming full. Naturally I transfered my entire iPhoto library (around 7-8000 photos) and movies to a hard drive and proceeded to delete them from my mac. However I am still getting notifications telling me

  • Accelerate swing graphics

    Hi All I'm currently working on a project that includes graphical representation using swing. I got some foreground-objects that move over a background. Unfortunately the performance is not as well as I expected. Perhaps there is a better approach fo