dsp.UDPReceiver System object

Package: dsp

Receive UDP packets from network


The UDPReceiver object receives UDP packets from the network.

To receive UDP packets from the network:

  1. Define and set up your UDP receiver. See Construction.

  2. Call step to receive the UDP packets according to the properties of dsp.UDPReceiver. The behavior of step is specific to each object in the toolbox.


H = dsp.UDPReceiver returns a UDP receiver System object™, H, that receives UDP packets from a specified port.

H = dsp.UDPReceiver('PropertyName',PropertyValue, ...) returns a window object, H, with each property set to the specified value.



Local port on which to receive data

Specify the port on which to receive data. The default is 25000.


Address from which data was sent

Specify the remote IP address from which to receive data. The default is '', which indicates that data is accepted from any remote IP address.


Maximum size of internal buffer

Specify the size of the buffer that receives UDP packets, in bytes. The default is 8192.


Maximum size of output message

Specify the size of the output message. If received packets exceed the specified value, their contents are truncated. The default is 255.


Data type of the message

Specify the data type of the message as | double | single | int8 | uint8 | int16 | uint16 | int32 | uint32 | logical |. The default is uint8.


cloneCreate UDP receiver object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs of step method
isLockedLocked status for input attributes and nontunable properties
releaseAllow property value and input characteristics changes
stepReceive UDP packet


expand all

Byte Transmission using UDP

Send some UDP packets, and calculate the number of successfully transmitted bytes:

hudpr = dsp.UDPReceiver('LocalIPPort',31000);
hudps = dsp.UDPSender('RemoteIPPort',31000);

bytesSent = 0;
bytesReceived = 0;
dataLength = 128;

for k = 1:20
   dataSent = uint8(255*rand(1,dataLength));
   bytesSent = bytesSent + dataLength;
   step(hudps, dataSent);
   dataReceived = step(hudpr);
   bytesReceived = bytesReceived + length(dataReceived);


fprintf('Bytes sent:     %d\n', bytesSent);
fprintf('Bytes received: %d\n', bytesReceived);
Bytes sent:     2560
Bytes received: 2432


This object implements the algorithm, inputs, and outputs described on the UDP Receive block reference page. The object properties correspond to the block parameters, except:

  • The Output variable-size signal parameter is not included in the System object.

  • The Sample time parameter is not included in the System object.

Introduced in R2012a

Was this topic helpful?