# Plugin Overview

<figure><img src="/files/WjnTXuU8Rt93SlERxPpl" alt=""><figcaption></figcaption></figure>

## What is a plugin?

Plugins are pieces of software that allow for commanding and control of any hardware or software application. These plugins are then called from the test file/sequence to perform a measurement, control the test setup, etc..

<figure><img src="/files/OuYkGDhXpky65ho230dm" alt=""><figcaption></figcaption></figure>

## How to create a plugin?

You can access our library of existing plugins (see list below) or create your own using Python.

## FunTEST plugin Setting

To access plugins go to **admin > devices > Plug-in manager**

<figure><img src="/files/T0BOMhuCfnfVzbKljZMw" alt=""><figcaption><p>Plugin Manager view</p></figcaption></figure>

From here you can configure, start, and stop plugins you have access to.

When a plugin is running and a device is discovered it will appear in the device window

<figure><img src="/files/H4Zq4NFbfnO6v8rvMekK" alt=""><figcaption><p>Device window view</p></figcaption></figure>

## Available FunTEST Plugins

### Test Equipment (VISA) Plugin

This plugin is most often used for controlling and gathering data from any type test equipment that supports VISA such as DMM, power supplies, oscilloscopes, etc.

<figure><img src="/files/RWdfwwlPn7JkJy0WZJKP" alt=""><figcaption><p>Example of usage</p></figcaption></figure>

#### Documentation

{% file src="/files/VbBJ27a12rVokoOgERp4" %}

### Serial Communication Plugin

This plugin allows you to send and receive data over serial communication i.e USB

<figure><img src="/files/uhKA8kIvoK0gi6DtnaGn" alt=""><figcaption><p>Example of usage</p></figcaption></figure>

#### Documentation

{% file src="/files/PyYrcDdGHuou42t2xMAn" %}

### I/O Plugin

This plugin allows you to set and read digital outputs from supported devices

<figure><img src="/files/wvwxr3WD1kBdevrtUyUp" alt=""><figcaption><p>Example of usage</p></figcaption></figure>

#### Documentation

{% file src="/files/paLb5B5l8Bi2en3poWDW" %}

### CAN/LIN Interface

This plugin allows you to send and receive messages over CAN and LIN using supported devices

<figure><img src="/files/iW12Ob4vK7lusvsA6ydc" alt=""><figcaption><p>Example of usage</p></figcaption></figure>

#### Documentation

{% file src="/files/z0tE4h7eUQ0EyD24gQ9v" %}

### SQL Database Plugin

This plugin allows you to send and receive data from an SQL database. Supports MySQL and Microsoft SQL Server.&#x20;

<figure><img src="/files/sFj6GtZLweMsX1hyAzBV" alt=""><figcaption><p>Example of usage</p></figcaption></figure>

#### Documentation

{% file src="/files/M1YvLAJ4yyOkEG1jXP34" %}

### TCP/IP Plugin

General TCP and HTTP (POST/GET) communication client

<figure><img src="/files/qtzN0otkIjVrxnkZMiUQ" alt=""><figcaption></figcaption></figure>

#### Documentation

{% file src="/files/PHH6IYH6mivDQGBi8atr" %}

### Image Control Plugin

ImagingSource cameras control plugin, based on IC Imaging Control .NET library SDK version 3.4

<figure><img src="/files/lji1GjPdhKDdaaykwjxN" alt=""><figcaption><p>Example of usage</p></figcaption></figure>

#### Documentation

{% file src="/files/ULQjLvmKYchraAIjdkyS" %}

### Python Plugin

Generic Python Plugin that allows anyone to create custom device plugin in Python

<figure><img src="/files/3qFmynhlHKjfR9nxWxmM" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://funtest-1.gitbook.io/funtest-documentation/funtest-plugins/plugin-overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
