Receive UDP packet
The UDP Receive block receives UDP packets from an IP network port and saves them to its buffer.
With each sample, the block output emits the contents of a single UDP packet as a data vector.
- Local IP port
Specify the IP port number upon which to receive UDP packets. This value defaults to
25000. The value can range from 1 to 65535.
On Linux®, to set the IP port number below 1024, run MATLAB® with root privileges. For example, at the Linux command-line, enter:
- Remote IP address (
'to accept all)
Specify the IP address from which to accept packets. Entering a specific IP address blocks UDP packets from other addresses. To accept packets from any IP address, enter
'0.0.0.0'. This value defaults to
- Receive buffer size (bytes)
Make the receive buffer large enough to avoid data loss caused by buffer overflows. This value defaults to
- Maximum length for Message
Specify the maximum length, in vector elements, of the data output vector. Set this parameter to a value equal or greater than the data size of a UDP packet. The system truncates data that exceeds this length. This value defaults to
If you disable Output variable-size signal, the block outputs a fixed-length output the same length as the Maximum length for Message.
- Data type for Message
Set the data type of the vector elements in the Message output. Match the data type with the data input that creates the UDP packets. This option defaults to
- Output variable-size signal
If your model supports signals of varying length, enable the Output variable-size signal parameter. This check box defaults to enabled.
The output vector varies in length, depending on the amount of data in the UDP packet.
The block emits the data vector from a single unlabeled output.
If your model does not support signals of varying length, disable the Output variable-size signal parameter.
The block emits a fixed-length output the same length as the Maximum length for Message.
If the UDP packet contains less data than the fixed-length output, the difference contains invalid data.
The block emits the data vector from the Message output.
The block emits the length of the valid data from the Length output.
The block dialog box displays the Data type for Length parameter.
In both cases, the block truncates data that exceeds the Maximum length for Message.
- Blocking time (seconds)
For each sample, wait this length of time for a UDP packet before returning control to the scheduler. This value defaults to
inf, which indicates to wait indefinitely.
- Sample time (seconds)
Specify how often the scheduler runs this block. Enter a value greater than zero. In real-time operation, setting this option to a large value reduces the likelihood of dropped UDP messages. This value defaults to a sample time of 0.01 s.