| gclib 307 Communications API for Galil controllers and PLCs |

All Data Structures Files Functions Variables Typedefs Macros Pages
gcaps

## FAQ

### What is gcaps?

gcaps is a communication server natively supported by gclib to multiplex Galil hardware communication features. It runs in the background on the host computer, as a service or daemon.

Incidentally, the name gcaps is an acronym for the improbable name Galil Controller Asynchronous Proxy Server. Yet another tidbit to impress friends at parties.

### How/When is gcaps used?

gclib will attempt to use gcaps whenever GOpen() is called without the `--direct` or `-d` switch. Other than this small difference, gclib function calls through gcaps or directly to the hardware behave identically. The first version of gclib supporting gcaps is 299.

### Why should gcaps be used rather than direct connections?

Galil recommends gcaps for software development for a number of reasons. The following are a few of the best.

- Connections through gcaps multiplex a single connection resource. This means that single-channel connection protocols like RS232 or PCI can be shared with as many simultaneous connections as needed. Furthermore, Ethernet-based connections with gcaps leave plenty of Ethernet handles available for other communications, such as MODBUS.
- All communications features are available to all connecting clients. This means that a software application can be running simultaneosly with Galil's diagnostic software (Galil Design Kit). This significantly simplifies support and aides in debugging
- Data Records, Messages, and Interrupts everywhere. No longer does one connection steal data streams from another.

### How do I install gcaps?

gcaps is bundled in the gclib and GDK installer packages. Install with defaults to get the gcaps service included. gcaps is also available as a standalone installer. Downloads are available on the release notes page.