> For the complete documentation index, see [llms.txt](https://help.tillit.cloud/tillit/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.tillit.cloud/tillit/tools/ignition-module/troubleshooting/verifying-the-installation.md).

# Verifying the installation

## Verifying the Installation

After completing the steps in installation.md, use this page as a checklist to confirm the module is healthy. If any check fails, follow the link in the **What to do** column.

{% hint style="info" %}
**Ignition 8.1 vs 8.3** - the TilliT Module ships as two separate `.modl` files, one built against Ignition 8.1 and one against Ignition 8.3. The customer-facing tags, loggers, MQTT topics and REST behaviour are the same, so the rest of this guide applies equally to both. A module built for one major version cannot be installed on the other - see Connectivity Issues - Module fails to start. Where the gateway UI itself differs between versions, screenshots in this guide are taken from Ignition 8.3.
{% endhint %}

### 1. Module is loaded in the Ignition Gateway

Open the Ignition Gateway in your browser and navigate to **Config → Modules**. Scroll to the bottom of the list.

| What you should see                                      | What to do if not                                                                                                                      |
| -------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| The TilliT Module is listed and the state is **Running** | If the module is **Faulted** or missing, see Connectivity Issues and check the gateway logs for `TilliT` (see logs-and-diagnostics.md) |

### 2. Module version is visible on the settings page

In the Gateway, expand the **TilliT** menu in the left sidebar and click **Settings**. The currently installed module version is displayed at the top of the configuration page.

This is the same value the module sends to TilliT in the `Tillit-Client-Version` HTTP header on every API call. Knowing the exact version is essential when raising a support ticket.

{% hint style="info" %}
If the page shows `unknown` for the module version, the module did not pick up its build metadata correctly. Reinstall the `.modl` file using the installation.md instructions.
{% endhint %}

{% hint style="warning" %}
**On Ignition 8.1** the TilliT Module does not display the version on its settings page. To confirm the version on 8.1, check the `.modl` filename you installed, or look for the `Tillit-Client-Version` header on an outbound API request. The header is sent by both the 8.1 and 8.3 modules.
{% endhint %}

### 3. The TilliT Tag Provider is present

Open the Ignition Designer, open your project, and look at the Tag Browser. Click the provider drop-down.

| What you should see                                  | What to do if not                               |
| ---------------------------------------------------- | ----------------------------------------------- |
| A provider named **TilliT** appears in the drop-down | See Tags and Data Issues - Tag Provider missing |

### 4. System Status tags are healthy

Inside the TilliT provider, expand the **System Status** folder. There are eight tags that together describe the health of the module. The table below shows the values you should see on a healthy install.

| Tag                 | Healthy value                                                         | Meaning                                                                                            |
| ------------------- | --------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- |
| `Module ready`      | `true`                                                                | The module has finished startup and is ready to process tag writes                                 |
| `Module status`     | A descriptive message such as `Ready` or `Started`                    | Human-readable module state                                                                        |
| `Connected`         | `true`                                                                | MQTT connection to TilliT is established                                                           |
| `Connection status` | `Connected to <mqtt endpoint>` (e.g. `Connected to iot.tillit.cloud`) | Human-readable connection state                                                                    |
| `Error code`        | `0`                                                                   | Last error code published by the module. Non-zero indicates a problem - see connectivity-issues.md |
| `Messages received` | Increases over time as MQTT messages arrive                           | A non-zero, growing counter confirms the MQTT subscription is live                                 |
| `Last topic`        | A recent MQTT topic name                                              | The topic of the most recent message received                                                      |
| `Last message`      | A JSON payload                                                        | The body of the most recent message received                                                       |

If `Module ready` and `Connected` are both `true` and `Error code` is `0`, the module is operational.

### 5. The asset hierarchy has been built

Below the System Status folder you should see a folder named after your tenant (e.g. `acme`). Inside that folder is the asset hierarchy you have configured in TilliT - typically Site → Line → Asset.

Each leaf asset has two subfolders:

* **Read** - data flowing **from TilliT into Ignition** (running order, OEE, events). See data-from-tillit-to-ignition.md.
* **Write** - data flowing **from Ignition into TilliT** (counts, status, process variables). See data-from-ignition-to-tillit.md.

If the tenant folder is empty or missing levels, see Tags and Data Issues - Asset hierarchy is empty or stale.

### 6. A scripted API call succeeds

In the Ignition Designer, open the Script Console and run:

```python
result = system.tillit.getApi("/api/asset")
print result
```

A successful call returns a JSON list of assets from your tenant. If the call fails, see Connectivity Issues - REST API calls fail.

***

If all six checks pass, your installation is healthy and ready to use.
