LabVIEW Embedded

cancel
Showing results for 
Search instead for 
Did you mean: 

TCP/IP instrumented debugging with Blackfin EZ-kit

I have been evaluating the LabVIEW for Blackfin with a BF537 EZ-Kit the last few days...so far, I have been able to get all the example programs to run using the non-instrumented USB debugger interface.
 
I have run the Web Server Buttons example, and I can cause the LEDs to blink by pressing the buttons on the browser interface, so I know that my crossover cable and DHCP server are running correctly on my laptop, and that I can communicate with the EZ-Kit over TCP/IP.
 
When I get to the example where they want you to debug using the instrumented TCP/IP debugger interface, the program loads using USB, then I get a dialog box that looks like it's trying to make a connection to the EZ-Kit via TCP, but the dialog disappears after a 20-30 seconds, and the program does not run.  During the time the dialog is waiting to connect, I can ping the EZ-Kit from a DOS box and the EZ-Kit has acquired an IP address from my DHCP server.
 
What I am wondering is this:  how does the debugger interface know what the IP address is to perform the instrumented debugging?  Is there a config file somewhere that I need to enter an IP address into?  Does the debugger use UDP to find the EZ-Kit?  The debugger does not seem to be able to find the Ez-Kit, and it occurs to me that I haven't told any of the LabVIEW components what IP address that EZ-Kit will have....
0 Kudos
Message 1 of 6
(7,633 Views)
Hi LRoy,

When you click Build, LabVIEW Embedded hard codes the IP of the host into the generated code, so when you download over USB, the EZ-KIT knows the address of the PC. It uses TCP communication. Perhaps a firewall is blocking the debug communication between the PC and the EZ-KIT.
--
Michael P
National Instruments
0 Kudos
Message 2 of 6
(7,623 Views)

Aha...that makes sense...so what you're saying is that the EZ-Kit will be initiating the debug link, not the PC.

I have two NIC (wireless and wired) devices in my laptop....is it possible that the address of the wireless NIC is being compiled into the code?  And if that's true, is there any easy way to change that behavior, or should I just disable my wireless adaptor during debug?

(I'm doing eval in a coffee shop using wireless to do web stuff, while using the wired port for the EZ-Kit)

 

0 Kudos
Message 3 of 6
(7,618 Views)

Hey Michael,

Upon closer inspection on my part, it looks like the IP is passed as a commandline parameter to lvEmbeddedMain.c?  If all else fails, I could modify "...LabVIEW 7.1 Embedded\CCodeGen\libsrc\main\lvEmbeddedMain.c" to provide a specific IP address (hard-coded...yuck!)?

 

0 Kudos
Message 4 of 6
(7,613 Views)
The implementation of the Blackfin target is partially located in "plug-in" VIs that you can access. Open "C:\Program Files\National Instruments\LabVIEW 7.1 Embedded\resource\LabVIEW Targets\Embedded\vdk\vdk_LEP_TargetPlugin\LEP_vdk_ScriptCompiler.vi". You can see in the attached screenshot where this plugin VI determines the IP of the host PC and concatenates it in as a compiler flag. You can modify this LabVIEW code to hard-code that IP if you have multiple IP addresses, or even add functionality to programmatically get the correct IP address!


Message Edited by Michael P on 09-14-2006 02:22 PM

--
Michael P
National Instruments
0 Kudos
Message 5 of 6
(7,612 Views)
Coooool.  Thanks!  That's what I was looking for...
0 Kudos
Message 6 of 6
(7,607 Views)