Pickering GhostCard driver example

A GhostCard Library is available for supporting Pickering products that allows multiple switch operations to be performed in one transaction across the control interface while using simple setting instruction (like using crosspoint address on matrices). The library can be used on LXI, PXI or PCI products when controlled through a Windows operating system. The library speeds up operation by avoiding multiple serial transactions, reducing the delay created by relay settling times and control interface latency.

More general information on GhostCard can be found here Ghost

C/C++ Example

A communication session to the LXI device is established using Piplx library function. This provides a session handle to the remote LXI device which must be used by GhostCard functions in all subsequent communication.

A specified card on the remote LXI device is opened by a GhostCard function and a handle to that card obtained. This handle must be used in all subsequent function calls to that card in a similar way to Piplx library function calls.

To operate multiple crosspoints switches, the GhostOpCrosspoint function may be used specifying the LXI handle, the card handle then the sub-unit to access the crosspoints locations and their state.

GhostOpCrosspoint function does not get executed n the physical LXI switching system, it allows the user to create and store all the switch states in the local host memory.

A function GhostCommitSubunitToCard copies all the states from the memory and sends the states to the LXI switch.

In the example below the crosspoints at (x,y) = (1,1), (1,2), (1,3) and (1,4) on the first sub-unit of the opened card are to be closed.

After use the card should be closed and the LXI session released to free the card and LXI device for other use.


An example of GhostCard in C/C++


The text for this code example can be found in the file here which allows the code to copied


Other GhostCard Examples

The installation package for GhostCard includes other examples including LabView and LabWindows and further C++ examples. Below is an image of a LabView example


Example of LabView GhostCard

There are other ways to control the switches, including a function to set the entire matrix with a single command.

The user should refer to detailed GhostCard documentation for the driver to be found in the installation folder.

Need help?



Support knowledgebase

Have questions or need some help? While we enjoy talking to you, you can find technical information for our entire product range here.

Technical know-how 


Long-term support

Because we manufacture our products in-house, we are able to provide you with guaranteed long-term support and low obsolescence.

Our support


Resource center

From success stories and product literature to newsletters, find the information you need about our switching and simulation solutions.

Get the resources you need


Worldwide presence

We supply and support our products across the globe, with seven offices in the Americas, Europe and Asia as well as additional representation. 

Find a local office or agent near you