# adi.AD9371.Tx
The adi.AD9371.Tx System object is a signal sink that can tranmsit
complex data from the AD9371.

tx = adi.AD9371.Tx;
tx = adi.AD9371.Tx('uri','ip:192.168.2.1');

AD9371 Datasheet
Creation
The class can be instantiated in the following way with and without property name value pairs. ```matlab dev = adi.AD9371.Tx dev = adi.AD9371.Tx(Name, Value) ```
Properties
Unless otherwise indicated, properties are non-tunable, which means you cannot change their values after calling the object. Objects lock when you call them, and the release function unlocks them.

If a property is tunable, you can change its value at any time.

For more information on changing property values, see System Design in MATLAB Using System Objects.

:::{dropdown} AttenuationChannel0 Attentuation specified as a scalar from -89.75 to 0 dB with a resolution of 0.25 dB. ::: :::{dropdown} AttenuationChannel1 Attentuation specified as a scalar from -89.75 to 0 dB with a resolution of 0.25 dB. ::: :::{dropdown} SamplesPerFrame Number of samples per frame, specified as an even positive integer from 2 to 16,777,216. Using values less than 3660 can yield poor performance. ::: :::{dropdown} EnableCustomProfile Enable use of custom Profile file to set SamplingRate, RFBandwidth, and FIR in datapaths ::: :::{dropdown} CustomProfileFileName Path to custom Profile file created from profile wizard ::: :::{dropdown} CenterFrequency RF center frequency, specified in Hz as a scalar. The default is 2.4e9. This property is tunable. ::: :::{dropdown} EnabledChannels Indexs of channels to be enabled. Input should be a [1xN] vector with the indexes of channels to be enabled. Order is irrelevant ::: :::{dropdown} uri Hostname or IP address of remote libIIO device ::: :::{dropdown} enIO If true, connects to libIIO device during simulation ::: :::{dropdown} DataSource Data source, specified as one of the following: 'DMA' — Specify the host as the source of the data. 'DDS' — Specify the DDS on the radio hardware as the source of the data. In this case, each channel has two additive tones. ::: :::{dropdown} DDSFrequencies Frequencies values in Hz of the DDS tone generators. For complex data devices the input is a [2xN] matrix where N is the available channels on the board. For complex data devices this is at most max(EnabledChannels)*2. For non-complex data devices this is at most max(EnabledChannels). If N < this upper limit, other DDSs are not set. ::: :::{dropdown} DDSScales Scale of DDS tones in range [0,1]. For complex data devices the input is a [2xN] matrix where N is the available channels on the board. For complex data devices this is at most max(EnabledChannels)*2. For non-complex data devices this is at most max(EnabledChannels). If N < this upper limit, other DDSs are not set. ::: :::{dropdown} DDSPhases Phases of DDS tones in range [0,360000]. For complex data devices the input is a [2xN] matrix where N is the available channels on the board. For complex data devices this is at most max(EnabledChannels)*2. For non-complex data devices this is at most max(EnabledChannels). If N < this upper limit, other DDSs are not set. ::: :::{dropdown} EnableCyclicBuffers Enable Cyclic Buffers, configures transmit buffers to be cyclic, which makes them continuously repeat :::
Example Usage
```matlab %% Configure device tx = adi.AD9371.Tx; tx.uri = 'ip:analog.local'; tx.CenterFrequency = 1e9; tx.DataSource = 'DMA'; tx.EnableCyclicBuffers = true; tx.EnabledChannels = 1; %% Generate tone amplitude = 2^15; frequency = 0.12e6; swv1 = dsp.SineWave(amplitude, frequency); swv1.ComplexOutput = true; swv1.SamplesPerFrame = 2^14; swv1.SampleRate = tx.SamplingRate; y = swv1(); % Send tx(y); ```