# AxsunOCTControl\_LW

## Background

***AxsunOCTControl\_LW*** is a cross-platform library that communicates with the microcontroller firmware running on Axsun SS-OCT devices (i.e. [Laser Engine](https://docs.axsun.com/axsun-knowledge-base/ref-manual/ss-oct-laser-engine), [Camera Link DAQ](https://docs.axsun.com/axsun-knowledge-base/ref-manual/cameralink-daq-board), [Ethernet/PCIe DAQ](https://docs.axsun.com/axsun-knowledge-base/ref-manual/gigabit-ethernet-daq-board)) through the [Hardware Control Tool](https://docs.axsun.com/axsun-knowledge-base/software-tools/hardware-control-tool) GUI (Windows only), or a custom client application integrating this AxsunOCTControl\_LW API on Windows, Linux, or macOS\*.

Some basic user functions of the AxsunOCTControl\_LW library (or simply the "**Control\_LW** library") include:

* Enable & disable Laser emission
* Set electronic K-clock delay
* Operate a [motorized variable delay line](https://docs.axsun.com/axsun-knowledge-base/how-tos/operating-a-variable-delay-line)
* Configure DAQ operational modes and behaviors
* Connect to Laser Engine and DAQ devices using USB
* Connect to DAQ using Ethernet (TCP/IP) or connect to Laser Engine using Serial/RS-232
* Read & write FPGA registers to operate a DAQ
* Read diagnostic parameters from a device for troubleshooting
* Configure device power-on default settings

AxsunOCTControl\_LW is written in C++ and exposes a "plain-old" C interface for client application integration.  The cross-platform and open-source [*libusb* ](https://libusb.info/)library must be installed for USB communication (optional).

\* please [getting-help](https://docs.axsun.com/axsun-knowledge-base/other/getting-help "mention") to learn about included features and availability of the macOS version of AxsunOCTControl\_LW.

## Relationship to other Axsun Libraries

### AxsunOCTControl.NET (*not* *"LW"*)

[AxsunOCTControl.NET ](https://docs.axsun.com/axsun-knowledge-base/api-references/axsunoctcontrol.dll)is an alternative to the AxsunOCTControl\_LW library.  AxsunOCTControl.NET provides a similar set of user functions for Laser Engine operation and a very limited set of user functions for DAQ operation.  AxsunOCTControl.NET also requires the Microsoft .NET Framework and therefore does not support integration across OS platforms other than Windows.  It is also less convenient to integrate into projects coded in languages other than C# or those with straightforward .NET assembly bindings.

{% hint style="warning" %}
**WARNING:**  AxsunOCTControl\_LW and AxsunOCTControl.NET are intended to be used **instead of** one another.  Do not attempt to use both libraries concurrently in your client application or open multiple GUI tools based on these libraries concurrently.
{% endhint %}

### AxsunOCTCapture

The [AxsunOCTCapture](https://docs.axsun.com/axsun-knowledge-base/api-references/axsunoctcapture.dll) library captures a high-bandwidth image stream from an Axsun [Ethernet/PCIe DAQ board](https://docs.axsun.com/axsun-knowledge-base/ref-manual/gigabit-ethernet-daq-board) and provides additional image management and display functionality.  It is intended to be used **concurrently with** AxsunOCTControl\_LW for operating the [Axsun Integrated Engine](https://docs.axsun.com/axsun-knowledge-base/guides/integrated-engine) and Axsun [Ethernet/PCIe DAQ board](https://docs.axsun.com/axsun-knowledge-base/ref-manual/gigabit-ethernet-daq-board).
