Variant Manager — Documentation
Variant Manager — user guide
Version 1.2.0 · Part number BR101-VM-LIC-1 · Interface in English and Spanish
Variant Manager keeps each part number's (variant's) test values outside the NI TestStand sequence. One sequence serves the whole product family: the sequence defines the test and Variant Manager keeps, per variant, the step limits and the variable values. At run time, TS Var Loader applies the values of the chosen variant. The sequence is never written.
Screenshots use the synthetic BDB-100 sequence (a demo product, no customer data).
1. Install
Variant Manager needs two installers on the same station, in this order:
- Bravo-101 ATE Framework (download the 1.2.0 MSI, Windows x64). It is the background service Variant Manager talks to; without it the app does not start. It also installs TS Var Loader, the component that applies the values inside TestStand.
- Variant Manager (download the 1.2.0 MSI, Windows x64). It's also on the product page.
Requirements: 64-bit Windows 10 or 11, NI TestStand 2025 and TPM 2.0 (the license and the local database encryption are tied to it). The TestStand 2022 package is not published: write to us before you buy if you need it.
There are no files to copy by hand. For reference, the loader lives at C:\Program Files (x86)\B101\AteFramework\B101.Ts.Var.Loader.dll.
2. First sign-in
Variant Manager asks you to sign in. On first launch you create the administrator account; there is no default user or password. Then create one profile per team member: the change history records who made each change, and that only helps if everyone signs in with their own account. Accounts are shared with the other ATE Framework apps.
Continue as guest opens the app read-only: you see everything, you edit nothing. Useful for quality, technicians and audits.
Language: Session › Language. The change applies after you sign in again.
3. The flow in four stages
- Register the TestStand sequence as a product.
- Choose which properties to manage; Variant Manager builds the tree of steps and variables.
- Create one variant per part number and edit only what differs.
- From TestStand, one step calls TS Var Loader with the variant and the loader applies the values at run time.
4. Register a sequence
In the rail, Products › Add product (+). Type the product name, pick the .seq file with Browse… (the regular Windows dialog) and press Add and register. Variant Manager reads the sequence and builds the tree: sequence › step group › step › property, plus the container and file-global variables.

Right after registering, the product shows "!" and the variant says "No step parameters are enabled". That is expected: you still have to choose what to manage. On the product, Edit › Properties check the root node (everything) or apply a template ("limits" keeps only the test steps' limits) and Save. The table appears.
The sequence is read-only for Variant Manager: it reads it to build the tree and never writes to the .seq.
5. What version 1.2.0 manages
Step parameters (Step parameters tab; columns Sequence / Step · Source · Comp · Low · High · Units):
- Numeric Limit and Multiple Numeric Limit: comparison, low, high and units per measurement, read from the step's limit fields. If the limit is an expression evaluated at run time, the expression is shown.
- String Value: the expected text and its comparison.
- Pass/Fail: no limits; its source is shown.
Container parameters (Container parameters tab; columns Container / Variable · Type · Value · Description): file-global and container variables of type number, string, boolean, array and container. The variable's TestStand comment is shown as its description. An empty variable is flagged "missing".

You do not need to turn limits into variables or maintain INI files or Excel sheets: the fields it reads are the ones TestStand already has.
6. Variants
Every product starts with the BASE variant, which keeps the values as they come from the sequence and cannot be deleted. For a new part number, open a variant's menu (right-click or "…") and choose Duplicate: the copy starts with every value of the original; then Rename (for example, BDB100B). Names accept letters, digits, spaces and _ - . ( ).
When you switch variants in the rail, only the values that differ change; the rest of the table stays the same.

Add variant creates a blank variant, without the base values. For a new part number, duplicating is almost always what you want.
7. Edit and save
Type in the cell and press Enter; Esc cancels. Numeric cells accept a comma or a dot as decimal separator. In boolean cells, the first click selects and the second opens True / False.
The status bar says Unsaved changes until you save with Ctrl+S or File › Save, then All changes saved. Switching variants, syncing, signing out or closing the window with unsaved changes asks first.

8. Change history
At the bottom, Change history lists, per variant and per day, every change with its time, user, property and previous → new value. A change not yet saved shows as "Unsaved". Export day to CSV saves the list for quality or an audit.

There is no approval flow: there is history. What a user saves is applied and recorded.
9. Export and import CSV
File › Export parameters… saves the open variant's step or container parameters to CSV; edit it in Excel. File › Import parameters… reads the file back: every row is validated against the tree (a row that does not match a step of the product is rejected with its reason) and the changes stay pending until you save.


10. When the sequence changes
If the .seq changes (a new step, a removed step, a different limit in the base), choose Sync from sequence in the product menu. Variant Manager tells you what it will add, rename, remove and leave unchanged, and on confirmation reports "Product synchronized successfully · Added · Updated · Removed". New steps appear in every variant.
11. Apply the variant in TestStand
The sequence is not modified. The only addition is one .NET step at the start of each sequence whose steps are managed, calling VariantLoader.Load(SequenceContext, variant, product) from B101.Ts.Var.Loader.dll (in C:\Program Files (x86)\B101\AteFramework\). At run time the loader applies the saved values of the variant to the steps of that sequence, by data type.
- The variant is chosen by variant and product name (or by id), for example from a station variable or from the part number the operator scans.
- An empty or disabled value in Variant Manager is skipped: the step keeps the value written in the sequence. The loader does not stop the test for a missing value.
- A sequence with steps in subsequences needs the call in every subsequence that has managed steps.

Ready-made example to open in TestStand 2025 and import: the synthetic BDB-100 sequence (BDB100_FCT.seq) used in these screenshots ships with the demo app; ask for it at info@bravo101.systems.
12. License
6-day free trial with every feature. To license: buy the license (BR101-VM-LIC-1) in the store, send your Device ID on Activate your license and get the key the next business day. Perpetual license per station, activated offline. If you change the station's PC, we reissue the key at no cost.
13. What it doesn't do
- It doesn't edit the sequence logic: that stays in TestStand, with its Development license.
- It doesn't run tests or pick the variant on its own: the sequence picks it and calls the loader.
- It isn't an operator interface.
- It doesn't compare two variants side by side and has no approval flow.
Missing something? Write to info@bravo101.systems and tell us what you were trying to do.
The guide for each app
Written for test and quality engineers, with screenshots of the published versions and demo data.
Report Analyzer
From the ATML report to the capability study
Configure TestStand to write ATML, import folders, group runs, read Cg, Cgk, Pp and Ppk, and export PDF and Excel.
Variant Manager
One sequence, every part number with its values
Install with the ATE Framework, register the sequence, create variants, history and CSV, and call TS Var Loader.
Report Viewer
Open a report and see only what failed
Open the ATML, read the header and the step table, several runs in one file, incomplete reports.
Floor guides
What we learned releasing stations
MSA Type 1, Gage R&R, capability, and the release checklist for a test station.