Main Content


Add output channel to device interface

Since R2020a



addoutput(d,deviceID,channelID,measurementType) adds the output channel channelID of device deviceID to the specified DataAcquisition interface, d, configured for the specified measurement type.

The channel information is available from the DataAcquisition Channels property.

ch = addoutput(___) adds the channel and returns a channel object.

[ch,idx] = addoutput(___) adds the channel and also returns the channel index from the DataAcquisition interface. The channel index reflects only the sequence in which channels are added to the DataAcquisition; not to be confused with the device channel ID.


collapse all

Add multiple channels to a DataAcquisition, and use indices to view their settings.

d = daq('directsound');
ch1 = addoutput(d,"Audio3","1","Audio");
[ch2,idx2] = addoutput(d,"Audio6","1","Audio");
    Index     Type      Device     Channel    Measurement Type        Range            Name   
    _____    ______    ________    _______    ________________    ______________    __________

      1      "audo"    "Audio3"      "1"          "Audio"         "-1.0 to +1.0"    "Audio3_1"
      2      "audo"    "Audio6"      "1"          "Audio"         "-1.0 to +1.0"    "Audio6_1"

Access one of the channel settings using its index.


Input Arguments

collapse all

DataAcquisition interface, specified as a DataAcquisition object, created using the daq function.

Example: d = daq()

Device ID specified as a character vector or string, as defined by the device vendor. Obtain the device ID by calling daqlist.

Example: "Dev1"

Data Types: char | string

Channel ID specified as a numeric value, character vector, or string; often indicating the physical location of the channel on the device. Supported values are specific to the vendor and device. You can add multiple channels by specifying the channel ID as a numeric vector, or a cell array of character vectors. The index returned for this channel in the DataAcquisition display indicates the position of this channel. This channel ID is not the same as channel index in the DataAcquisition: if you add a channel with ID 2 as the first channel in a DataAcquisition, the DataAcquisition channel index is 1.

Tip: For best performance when adding multiple channels, specify the channels as a vector in one call to addoutput, rather than calling addoutput for each channel.

Example: "ao2"

Data Types: char | string | numeric | cell

Channel measurement type, specified as a string or character vector. measurementType represents a vendor-defined measurement type. Valid measurement types include the following:

Measurement TypeSubsystem

Analog Output


Analog Output


Digital I/O


Counter Output


Audio Output


Function Generator


Function Generator


Function Generator


Function Generator


Function Generator


Function Generator


Function Generator

Not all devices support all types of measurement.

Example: "Voltage"

Data Types: char | string

Output Arguments

collapse all

Channel, returned as a channel object with properties depending on the measurement type as described in Channel Properties.

Channel index, returned as a numeric value. With this index, you can access the array of the DataAcquisition Channels property.

Version History

Introduced in R2020a