FAQ

Note:
If you upgrade existing VIs of CA Lab V1.3.2.1 and older please exchange:

  • caLabGetxx.vi -> caLabGet.vi
  • caLabPutxx.vi -> caLabPut.vi

and click right on greyed out CA Lab VIs and use "Relink to SubVI" to update type of Polymorphic VI. Watch out! LabVIEW™ may result in a misalignment of connectors!!

 

Q: I get only correct results for first PV but all others have same/wrong value.
A: When you use several PV names as input series, set input "variable PV names" to TRUE, please.


Q: How can I do a quick check that CA Lab installation works properly?
A: Use the full installion and run "start Demo" from Start menu ( Windows® only).


Q: I get a lot of warnings on first start of your VI. What's the problem?
A: The CA Lab VIs need the absolute path to caLab.dll. This absolute path varies from computer to computer. LabVIEW™ looks for the right path at first run and reports that library paths have been changed. You should save these changes.


Q: CA Lab VIs aren't executable, what can I do?
A: Check following:

  • Search your system for ca.dll, com.dll and carepeater.exe. If you can find several versions of them, then rename all outside of your installation path.
  • Check whether msvcp100.dll and msvcr100.dll are in "windows/system32" folder.
  • Open a command line and type "carepeater". You should get no error message. Terminate it with CTRL-C. If you get any error message you should reinstall CA Lab.
  • Open caLabGet.vi/caLabPut.vi/caLabEvent.vi and search for text "calab.dll". Double click on founds and check if text field "Library name or path" has same content as "path.txt" in your installation path. 

Q: What is the maximum number of PVs monitored, tested up to now?
A: We have simultaneously monitored up to 1.000 PVs. But we're sure the limit is higher. A large number of PVs take significant time to initialize when the PVs are passed separately. It's better to pass the PVs as an array. Reading, writing and monitoring after initialisation is no problem.


Q: Can CA Lab generate its own EPICS channels, or only connect to already defined channels?
A: CA Lab is a pure client application. If you want to generate your own channels, you can use "softIoc.exe". You can find an example in the demo application of caLab. Look at \DemoIOC\db\demo.db for variable definitions.
UPDATE: Yes, it can do. Install CA Lab 1.5.0.0 or later.


Q: Will caLab work with any version of LabVIEW™ 64bit?
A: Yes, CA Lab does since V1.3.0.3. Please be sure to download the 64 bit version.


Q: I'm wondering what the timeout parameter does.
A: The timeout is the maximum time for initializing and for retrieving the value for the FIRST call. After first call of any PV a background task monitors PVs and every call will be served by cached values from this task.
If you're using "synchronous" for caLabPut.vi, timeout defines how long CA Lab waits for response.

Q: When I use a control (instead of constant) for the field names, changing the field names during program execution doesn't change the returned field values.
A: It is not intended that the field names can be changed during runtime. Please put all required field names into a constant string array and select the data you are interested in in the following code. If the field names are only valid for a part of the variables, this does not matter.


Q: I use caLabPut. When should I set the parameter "synchronous" to TRUE?
A: If it is necessary to wait until all record processing of written PV has been finished before next value can be set then you should set the connector of caLabPut "synchronous"=TRUE. The "Motor Record" is a good example.
Please check, that your timeout is as long as needed for response.


Q: There is a 'Debugging window' with the message "Error: xxx has been configured with different optional fields". What can I do?
A: This message will appear if there are several views of a PV with different field names. Please use the same count and order of field names for same PV name.


Q: When I run a VI with CA Lab it takes a long time to stop it. What can I do?
A: The most common reason is you run your VI few than 10 seconds. In this case CA Lab waits 5 seconds on closing to avoid interface problems.
Install CA Lab 1.5.0.0 or later.


Q: I get errors when I compile VIs with CA Lab.
A: Please set your destination folder of executable outside of "user.lib" and check, you have all needed binaries included.


Q: The network and memory load does not decrease as expected when I stop a VI with CA Lab. Is there a memory leak?
A: There is no memory leak. The CA Lab library keeps all PV connections until all instances of CA Lab are closed. This prevents problems of rebuilding Channel Access connections we had in past. If you want to unload all EPICS PVs you have to close all VIs with CA Lab.


Q: How can I add an access security file to CaLabSoftIOC?
A: This quickest solution is to directly add the parameter in CaLabSoftIOC.vi


Q: How can I hide the debug window?
A: Please set environment variable CALAB_NODBG = PATH_NAME_OF_LOG_FILE
All warnings and debug messages will will be redirected to the defined file.


Q: When I use CA Lab there is a huge memory consumption. Why?
A: Please check whether EPICS variables are used by different data types at same connector. Separate the data types per "PV name(s)" connector.


Q: Is caLab available for real-time units?
A: The interface is / won't be available for real-time units.


Any other questions are welcome! Please send me a mail.