Skip to content

epics-extensions/CALab

Repository files navigation

CA Lab - LabVIEW (Realtime) + EPICS

Download

A lightweight, high-performance, user-friendly interface between LabVIEW™ and EPICS.

Table of contents

Overview

CA Lab connects LabVIEW™ VIs to EPICS PVs and provides a streamlined Channel Access interface.

Highlights

  • Simple create/read/write of EPICS variables and user events
  • Consistent data clusters (timestamp, status, severity, optional PV fields)
  • Easy to build executables from your VIs
  • Requires only LabVIEW™ (no project or external services)
  • High performance interface
  • Open source

Compatibility

Item Details
LabVIEW™ 2019 to current
Platforms Windows®, Linux, NI Linux RT
EPICS EPICS BASE libraries (V7)

Tested on Windows 11®, Linux (Ubuntu 24.04), and NI Linux RT (2022).

How it works

Schema of CA Lab interface Schema of CA Lab interface

From any LabVIEW VI, you can directly call these interface VIs:

  • CaLabGet.vi to read EPICS variables
  • CaLabPut.vi to write EPICS variables
  • CaLabEvent.vi to create user events for EPICS variables
  • CaLabInfo.vi to get context information of the CA Lab library
  • CaLabSoftIOC.vi to create new EPICS variables and start them

These CA Lab VIs call the interface library caLab, which uses EPICS base libraries ca and Com to provide Channel Access functions.

CA Lab builds an internal PV cache and monitors PVs to improve read/write access and reduce network traffic. Optionally, you can disable caching.

Included tools

CA Lab includes an EPICS Base package (caget, caput, camonitor, softIOC, and more).

Downloads and links