Reference#
The steps in the Nominal Core step group. Each one calls a VI, and that VI’s inputs and outputs are the step’s parameters.
Connection#
Open Connection to Nominal#
![]()
Opens a connection to Nominal.
To get the required inputs, review getting started material in the docs or go straight to Nominal settings. In the settings, go to the “API keys” page to get your API key, workspace RID, and base URL.
Inputs
- API key
StringAPI token used to connect to nominal.
- Base URL
ASCII String· defaulthttps://api.gov.nominal.io/apiThe URL of your tenant. The default is the standard cloud-hosted tenant.
- Workspace (tenant default)
ASCII StringWorkspace RID to connect to. If none is provided, the default for your tenant will be used.
- Timeout ms (-1: infinite)
Number (I32)· default-1
Outputs
- connection
Object Reference(Nominal Client.lvclass)- error out
Error cluster
Disconnect from Nominal#
![]()
Closes the connection to Nominal
Inputs
- connection required
Object Reference(Nominal Client.lvclass)
Outputs
- error out
Error cluster
Assets#
Create Asset#
![]()
Creates a new metadata asset in Nominal.
Inputs
- connection required
Object Reference(Nominal Client.lvclass)- Title required
ASCII StringName of your asset.
- Description
ASCII StringOptional description associated with the asset.
Outputs
- asset
Object Reference(asset.lvclass)- error out
Error cluster
Get Asset#
![]()
Look up an asset object by RID.
Inputs
- connection required
Object Reference(Nominal Client.lvclass)- Asset RID required
ASCII StringRID of the asset. In Nominal you can get this from the Asset page details sidebar.
Outputs
- Asset
Object Reference(asset.lvclass)- error out
Error cluster
Update Asset#
![]()
Update an asset obtained with create asset or get asset with properties and labels.
Inputs
- asset required
Object Reference(asset.lvclass)- Labels
1D Array (ASCII String)String labels used to filter an asset.
- property key-value pairs
1D Array (Container)keyStringvalueString
Property key-value pairs used to filter an asset (eg “serial”=”0xABADCAFE”).
Outputs
- updated asset
Object Reference(asset.lvclass)- error out
Error cluster
Datasets#
Find or Make Dataset for Asset#
![]()
Locate a dataset on an asset, creating that dataset if not found.
Inputs
- asset required
Object Reference(asset.lvclass)- Datascope Name required
ASCII StringThe name of the datascope associated with the asset.
Outputs
- refreshed asset
Object Reference(asset.lvclass)- dataset
Object Reference(dataset.lvclass)- error out
Error cluster
Get Dataset by RID#
![]()
Using a dataset RID, get a reference to the dataset object. This can then be used to create a Stream.
Inputs
- connection required
Object Reference(Nominal Client.lvclass)- Dataset RID required
ASCII String
Outputs
- Dataset
Object Reference(dataset.lvclass)- error out
Error cluster
Streams and channels#
Create Stream from Dataset#
![]()
Create a reference to a stream to a provided dataset. Use get dataset by rid to get the dataset reference.
Inputs
- dataset required
Object Reference(dataset.lvclass)- fallback avro file (user documents\nominal_fallback_files)
PathA local file used to store data if the stream fails.
Outputs
- stream session
Number (U32)(Refnum)- error out
Error cluster
Create Stream from Dataset RID#
![]()
Create a reference to a stream to a provided dataset RID without obtaining the dataset reference first.
Inputs
- API Key required
ASCII StringAPI key for accessing Nominal.
- Dataset RID required
ASCII StringThe resource ID of the dataset, obtained from the Details sidebar in Nominal or from a dataset object.
- fallback avro file (user documents\nominal_fallback_files)
PathA local file used to store data if the stream fails.
Outputs
- stream session
Number (U32)(Refnum)- error out
Error cluster
Find or Create Channel in Stream#
![]()
In the provided stream session, register a channel by name. Tags can only be set on creation and are part of the unique identification of a channel, but are not required.
Examples:
Call with “name”, <no tags>; Call with “name”, <no tags> => one channel
Call with “name”, <no tags>; Call with “name”, tags: [sn: 123] => two channels
Call with “name”, tags: [sn: 123]; Call with “name”, tags: [sn: 321] => two channels
Inputs
- stream session required
Number (U32)(Refnum)- channel name required
ASCII StringThe name of the channel.
- channel tags
1D Array (Container)keyStringvalueString
Tags used to filter data on a channel.
Outputs
- Channel
Object Reference(Channel.lvclass)- error out
Error cluster
Update Channel Metadata#
![]()
Update channel’s description and unit. Clear unit takes precedence over any value set in the unit field.
Inputs
- connection required
Object Reference(Nominal Client.lvclass)- Channel required
Object Reference(Channel.lvclass)- Description
ASCII StringIf set, the description to update to.
- Unit
ASCII StringIf set, the units to update to. Use
clear unitto clear the unit since an empty string will perform no operation.- clear unit
Boolean· defaultFALSEClears the unit of the channel.
Outputs
- error out
Error cluster
Destroy Stream#
![]()
Closes the stream connection.
Inputs
- stream session required
Number (U32)(Refnum)
Outputs
- error out
Error cluster
Writing data#
Stream Array to Channel#
![]()
Stream an array of timestamps and values to the channel.
Inputs
- channel required
Object Reference(Channel.lvclass)- Timestamps required
1D Array (Timestamp)Timestamps to stream, must match the size of values.
- Values required
1D Array (DBL)Values to stream. Must match the size of timestamps.
Outputs
- error out
Error cluster
Stream Points to Channel#
![]()
Streams an array of time/value points.
Inputs
- channel required
Object Reference(Channel.lvclass)- Points required
1D Array (Container)Time StampTimestampValueDBL
Timestamp/value pairs to stream.
Outputs
- error out
Error cluster
Stream Waveform to Channel#
![]()
Streams a full waveform to the channel. Converts t0+dt to individual timestamps before sending.
Inputs
- channel required
Object Reference(Channel.lvclass)- Waveform required
LabVIEWAnalogWaveformThe waveform to stream.
Outputs
- error out
Error cluster
Point buffer#
Create Point Buffer#
![]()
A buffer allowing TestStand to collect individual points and stream them all at once, for efficiency. Intended to represent data for a single channel. Use the batch buffer for many channels.
Outputs
- point buffer
Number (U32)(Refnum)- error out
Error cluster
Add to Point Buffer#
![]()
Add a single time/value point to the buffer.
Inputs
- point buffer required
Number (U32)(Refnum)- time required
Timestamp- value required
Number (DBL)
Outputs
- error out
Error cluster
Read from Point Buffer#
![]()
Reads the entire set of samples from a buffer.
Inputs
- point buffer required
Number (U32)(Refnum)
Outputs
- data value
1D Array (Container)Time StampTimestampValueDBL
- error out
Error cluster
Flush Point Buffer to Channel#
![]()
Streams the content of the point buffer to the specified channel.
Does not free data if an error occurs.
Inputs
- channel required
Object Reference(Channel.lvclass)- point buffer required
Number (U32)(Refnum)
Outputs
- error out
Error cluster
Destroy Point Buffer#
![]()
Immediately destroy the point buffer. Does not flush.
Inputs
- point buffer required
Number (U32)(Refnum)
Outputs
- error out
Error cluster
Batch buffer#
Create Batch Buffer#
![]()
A buffer allowing TestStand to collect individual points for several channels and stream them all at once, for efficiency. For a simple single-channel buffer, use the point buffer.
Outputs
- buffer
Number (U32)(Refnum)
Add Point to Batch Buffer#
![]()
In the provided buffer session, add data for a channel. Channels are uniquely identified by the combination of a name and optional tags.
Examples:
Call with “name”, <no tags>; Call with “name”, <no tags> => one channel
Call with “name”, <no tags>; Call with “name”, tags: [sn: 123] => two channels
Call with “name”, tags: [sn: 123]; Call with “name”, tags: [sn: 321] => two channels
Inputs
- batch buffer required
Number (U32)(Refnum)- channel required
ASCII String- Time Stamp required
Timestamp- Value required
Number (DBL)- channel tags
1D Array (Container)keyStringvalueString
Tags used to filter data on a channel.
Outputs
- error out
Error cluster
Get Channel Buffer from Batch#
![]()
In the batch buffer, register a channel by name and tag and get a direct reference to the underlying buffer, or look up an existing buffer.
Tags are part of the unique identification of a channel, but are not required.
Examples:
Call with “name”, <no tags>; Call with “name”, <no tags> => one channel
Call with “name”, <no tags>; Call with “name”, tags: [sn: 123] => two channels
Call with “name”, tags: [sn: 123]; Call with “name”, tags: [sn: 321] => two channels
Inputs
- batch buffer required
Number (U32)(Refnum)- channel required
ASCII String- channel tags
1D Array (Container)keyStringvalueString
Tags used to filter data on a channel.
Outputs
- channel point buffer
Number (U32)(Refnum)- error out
Error cluster
Flush Batch Buffer to Nominal#
![]()
Flushes all stored data to a stream.
Inputs
- stream session required
Number (U32)(Refnum)- batch buffer required
Number (U32)(Refnum)
Outputs
- error out
Error cluster
Destroy Batch Buffer#
![]()
Immediately destroy the buffer. Does not flush.
Inputs
- batch buffer required
Number (U32)(Refnum)
Outputs
- error out
Error cluster
Runs#
Create Run#
![]()
Creates a run without an associated asset. Runs have a start and end time, with start time required.
Inputs
- connection required
Object Reference(Nominal Client.lvclass)- Title required
ASCII StringName of the run.
- Start Time (now)
TimestampStart time of the run, defaulting to now().
Outputs
- Run
Object Reference(Run.lvclass)- error out
Error cluster
Create Run on Asset#
![]()
Creates a run associated with a specific asset. Runs represent a time range and are required to have a start time.
Inputs
- asset required
Object Reference(asset.lvclass)- Title required
ASCII StringName of the run.
- Start Time (now)
TimestampStart time of the run, defaulting to now().
Outputs
- Run
Object Reference(Run.lvclass)- error out
Error cluster
Update Run Metadata#
![]()
Updates the properties of a run, returning an updated run object. Only fields that are populated are used.
Inputs
- run required
Object Reference(Run.lvclass)- Title
ASCII StringIf populated, update the run name to this.
- Description
ASCII StringIf populated, update the run description to this.
- Labels
1D Array (ASCII String)If populated, update the run labels to this.
- links
1D Array (Container)titleStringurlString
If populated, update the run links to this.
- property key-value pairs
1D Array (Container)keyStringvalueString
If populated, update the run properties to this.
Outputs
- updated run
Object Reference(Run.lvclass)- error out
Error cluster
Update Run Start Time#
![]()
Change the start time of a run.
Inputs
- run required
Object Reference(Run.lvclass)- Start Time
TimestampThe new start time to use.
- set to now
Boolean· defaultFALSEIf set to true, ignore the start time field and use now().
Outputs
- updated run
Object Reference(Run.lvclass)- error out
Error cluster
Update Run Stop Time#
![]()
Change the end time of a run.
Inputs
- run required
Object Reference(Run.lvclass)- End Time
TimestampThe new end time to use.
- set to now
Boolean· defaultFALSEIf set to true, ignore the end time field and use now().
Outputs
- updated run
Object Reference(Run.lvclass)- error out
Error cluster
Events#
Create Event on Run#
![]()
Creates an event which flags a time range in Nominal.
Inputs
- run required
Object Reference(Run.lvclass)- Name required
ASCII StringName of the event to be created.
- Type required
Enumeration (U16)One of
INFO,FLAG,ERROR,SUCCESS.Type of the event to be created. This is used by Nominal to present different severity levels to the user when viewed through the web interface.
- Time Stamp (now)
TimestampStart time for the event. Set the duration once created.
Outputs
- event
Object Reference(event.lvclass)- error out
Error cluster
Create Event on Asset#
![]()
Creates a named event associated with a specific asset.
Inputs
- asset required
Object Reference(asset.lvclass)- Name required
ASCII StringName of the event to be created.
- Type required
Enumeration (U16)One of
INFO,FLAG,ERROR,SUCCESS.Type of the event to be created. This is used by Nominal to present different severity levels to the user when viewed through the web interface.
- Time Stamp (now)
TimestampStart time for the event. Set the duration once created.
Outputs
- event
Object Reference(event.lvclass)- error out
Error cluster
Update Event Metadata#
![]()
Updates an event with additional metadata. Only populated labels and properties are used, and type update and update duration must be set to command this function to update those fields.
Inputs
- event required
Object Reference(event.lvclass)- Name
ASCII StringNew name to apply. Ignored if empty.
- Description
ASCII StringNew description to apply, ignored if empty.
- Labels
1D Array (ASCII String)New labels to apply, ignored if empty.
- Type
Enumeration (U16)· defaultERROROne of
ERROR,FLAG,INFO,SUCCESS.Type to change the event to if
type updateis true.- Duration (s)
Number (DBL)· default0Duration to set the event to if
update durationis true.- type update
Boolean· defaultFALSECommands this function to update the type of the event.
- update duration
Boolean· defaultFALSECommands this function to use the duration field to update the event duration.
Outputs
- updated event
Object Reference(event.lvclass)- error out
Error cluster
Update Event Timing#
![]()
Change the start time and duration of the event. Use flags to indicate which actions to take.
Inputs
- event required
Object Reference(event.lvclass)- update start
Boolean· defaultFALSECommands this function to update the start time. Not required for
set start to now.- set start to now
Boolean· defaultFALSEOverrides the start time parameter, setting the start time to now(). Setting
update startto true is not needed if this is set to true.- Start Time
TimestampStart time to update the event to if
update startis true.- Duration (s)
Number (DBL)· default0Duration to use if
update durationis true.- update duration
Boolean· defaultFALSECommands this function to update the event duration.
Outputs
- updated event
Object Reference(event.lvclass)- error out
Error cluster