# NI FlexLogger

Stream channels from a running FlexLogger session

- Category: Data acquisition
- Capabilities: Streams, Assets, Operations, Entities
- Runs on: Windows x64

Watch the test FlexLogger is running right now. You see the current value of
every channel in the open project, live. Your FlexLogger projects, screens and
logging stay as they are.

**Runs on Windows**, where FlexLogger runs. To collect the `.tdms` files
FlexLogger writes, on any platform or from a network share, use the **NI TDMS
files** connector.

## What you get

- **Live values** — the current value of every channel in the open project.
- **Channels from the project** — FlexLogger supplies the channel list. Open a
  different project and nothing needs changing here.
- **One FlexLogger installation per input.**

## Setup

1. In **Inputs**, add NI FlexLogger.
2. Leave **FlexLogger host** empty to use FlexLogger on this machine. Set it
   only when FlexLogger runs on another machine.
3. Set **how often to check for new data**. This is the rate you get: each
   check reads one value per channel.
4. Press **Test connection**. It names the FlexLogger build, the open project
   and how many channels it found.
5. Channels appear on **Live** as `/flexlogger/<group>/<channel>`. You can use
   them in **Trellis**, replay and notebooks like any other data.

## Requirements

- FlexLogger **2022 Q3 or later**, with automation access enabled.
- **A licensed FlexLogger.** Reading a running session needs FlexLogger's
  Automation API, a paid feature. **FlexLogger Lite refuses it**, so this
  connector gets no data on Lite. Test connection shows NI's own message.
  **If your licence has lapsed, the files still work**: the **NI TDMS files**
  connector reads the `.tdms` files FlexLogger saves, with no licence.
- **A project open in FlexLogger.** With none open, the input says so. It
  starts as soon as you open a project.
- Phloem finds FlexLogger's automation port on its own.

## Live values vs. the full record

This connector reads current values on each check. It does not capture every
sample of a fast channel.

For every sample at its own time, add the **NI TDMS files** connector pointed
at FlexLogger's log folder. Most setups run both: live values during the run,
the file afterwards as the record.

## Notes

- If FlexLogger is not running yet, the input waits and connects when it
  starts.
- If the project closes or FlexLogger exits, the input says so and reconnects
  when a session returns.
- An address it cannot read is reported straight away.

## Supports

- NI FlexLogger 2022 Q3 and later (Automation API)
- A LICENSED FlexLogger — the Automation API is a paid feature and FlexLogger Lite refuses it (without one, the TDMS connector reads the .tdms files FlexLogger saves, no licence needed)
- A project open in FlexLogger — the tap follows whatever it has loaded

## Connection fields

| Field | Type | Required | Notes |
|---|---|---|---|
| FlexLogger host | Host:port | No | Leave empty to use the FlexLogger running on this machine — the usual case. |
| How often to check for new data (Hz) | Number | No |  |
