01-12-2010 02:52 PM
01-15-2010 10:05 AM
PatFord,
Take a look at the code provide with Simple Messaging Reference Library (STM) Reference Example for LabWindows/CVI. This includes C code that implements the STM protocol. It may use some LabWindows/CVI specific TCP functions, but you should be able to easily replace those with your own TCP API.
03-06-2010 07:48 AM
I am surprised no one has seen this error from shipping example. I am using LabVIEW 2009 release version and STM API 2.0. When i open and run
LabVIEW 2009\user.lib\STM\Examples\Command Based Communication\STM Command Based Example - Server.vi
and then run
LabVIEW 2009\user.lib\STM\Examples\Command Based Communication\STM Command Based Example - Client.vi
After 10-30 second i get "not enough memory to complete this operation" error? See attached screenshot. This is shipping example being run as is without any modifications? Anyone? The error is coming from "Enqueue Element" VI to where it is unable to enqueue as element. Error code is 2.
Thanks
04-05-2010 03:00 PM
Hi Evan R,
You can use a type def'd Combo Box set to Values match Items. Then you can place it as a control, indicator, and constant. It's like an Enum but the terminal type is String (perfect for STM metadata).
Best Regards,
Steve K
08-30-2010 03:12 PM
Has anyone had issues with this library and 2010? I have a project that uses STM between a RT target and Windows. The RT deploys and runs until I run the Windows VI and tries to make connections. As a result the LabVIEW development looses connection with the target periodically.
08-31-2010 11:14 AM
I have used the STM library on many ocassions with LabVIEW 2010 without any problems. I have seen disconnect issues however during deployment if the LV version on RT doesn't match the LV version on your development machine. That is all I can think of.
Regards,
Jeff Tipps
S&V Systems Engineer
08-31-2010 11:20 AM
As a note to developers using NI tcpip floating point numbers dont seem to be sent as a IEEE753 compliant value. What I found is that the bytes are swapped like they were an int32_t or int64_t. This came up in a project where LV controlled an linux program over tcp-ip
Just a heads up
Pat
08-31-2010 12:45 PM
I am running LabVIEW RT 10.0, RIO 3.5.1, and VISA 5.0 with 2010. When I run a VI from project on target I get a "lost connection" dialog as soon as I do a TCP open connection call to the target from Windows. If I leave it, it will eventually reestablish the connection and run fine until I make another call of the open TCP connection subVI. I have tried different ports with the sdame result.
08-31-2010 02:17 PM
Found solution to my problem. I am on a closed network and some how a DNS server got addressed. Deleted it and all works again.
08-31-2010 02:18 PM
Hey Pat -
This is an endianness issue. By default LabVIEW is big endian. You can change the byte order of the flatten to string VI in the STM Write Message VIs from big endian to little endian if you need to.
-Jack