LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Error 56: exceeded the user-specified or system time limit

I have two computers trying to communicate via TCP.

 

The current problem is the second computer is getting stuck at it's first TCP Read if the timeout is "-1", and never moves past that. It does successfully read from the sender once, but then I have to stop and restart the VI in order to get it to receive again. If I lower the time limit (e.g. not "-1") then I get the error 56.

 

Two notes on the program:

  1. In order to close the connection after receiving the string, I inlcluded a preliminary 32-byte number that tells the second TCP Read how many bytes long the string it'll get should be. My intention was to allow the receiving computer to move on right after receiving the string.There may be a better way to do this?
  2. Both code snippets below are subVIs for the larger VIs, the larger VI is looping every 30 seconds. The receiving VI runs upon receiving an image from a CCD, which is triggered by the sending computer's VI.

 

Please ask questions for clarifications if needed, and any suggestions are appreciated.

 

-Abe

 

Sending computer subVI

 

20197i6E84F2DCC8D2BF86

receiving computer subVI

20199iD31EEF1CE5306A40

0 Kudos
Message 1 of 7
(4,328 Views)
0 Kudos
Message 2 of 7
(4,319 Views)

That didn't do the trick. The computers can pass the initial data, so I'd be surprised if that is the problem. The receiving one just gets stuck on the TCP read.

0 Kudos
Message 3 of 7
(4,311 Views)

Here's a solution that should work (at least it does for me):

 

 

Also make sure to turn off any firewall when you debug such issues.

 

Ton

 

 

 

Free Code Capture Tool! Version 2.1.3 with comments, web-upload, back-save and snippets!
Nederlandse LabVIEW user groep www.lvug.nl
My LabVIEW Ideas

LabVIEW, programming like it should be!
0 Kudos
Message 4 of 7
(4,301 Views)

Ton, that didn't solve the problem, unfortunately.

 

It's worth noting that the code I pasted worked when the two computers were connected by a crossover cable, but now that they're connected through the local network (with internet), it's not.

 

So, perhaps it not a labview problem but something else? Any ideas?

 

The firewall is disabled and I've opened the ports used for this. The main problem is that it works once, but then gets stuck on the first TCP Read on the receiving side, which I can't figure out.

 

Thanks,

0 Kudos
Message 5 of 7
(4,287 Views)

Hi ajolson,

 

When the timeout error occurs, are you able to ping each computer's IP address to verify that both are properly connected to the network?  Here is some additional explanation on that error along with some helpful related links for your reference.

 

- Greg J

0 Kudos
Message 6 of 7
(4,271 Views)

 


@ajolson wrote:

The firewall is disabled and I've opened the ports used for this. The main problem is that it works once, but then gets stuck on the first TCP Read on the receiving side, which I can't figure out.

 

Thanks,


 

Could you run my snippet and indicate visually which of the functions times out?

 

You might need a portsniffer, like portmon to see what happens. It might be that your switch is killing the connection after a succesfull read. Try to get your IT department looking at the settings for the specific switch you use. Perhaps they need to set some rules for the port you are listening on. If you know the brand/type of the switch search the internet for a manual so you can help them.

 

Ton

Free Code Capture Tool! Version 2.1.3 with comments, web-upload, back-save and snippets!
Nederlandse LabVIEW user groep www.lvug.nl
My LabVIEW Ideas

LabVIEW, programming like it should be!
0 Kudos
Message 7 of 7
(4,249 Views)