UDS RequestDownload.vi
- Updated2025-10-07
- 4 minute(s) read
Purpose
Initiates a download of data to the ECU. Format
Input
|
data format identifier defines the compression and encryption scheme to be used for the data blocks written to the ECU. A value of 0 means no compression/no encryption. Nonzero values are not standardized and implementation dependent. | ||||||
|
diag ref in specifies the diagnostic session handle, obtained from Open Diagnostic on CAN FD.vi or Open Diagnostic on IP.vi and wired through subsequent diagnostic VIs. Normally, it is not necessary to manually manipulate the elements of this cluster. | ||||||
|
memory address defines the memory address to which data are written. | ||||||
|
memory size defines the size of the data to be written. | ||||||
|
error in is a cluster that describes error conditions occurring before the VI executes. If an error has already occurred, the VI returns the value of the error in cluster to error out.
|
||||||
|
memory address length defines the number of bytes of the memory address parameter that are written to the ECU. This value is implementation dependent and must be in the range of 1–4. For example, if this value is 2, only the two lowest bytes of the address are written to the ECU. | ||||||
|
memory size length defines the number of bytes of the memory size parameter that are written to the ECU. This value is implementation dependent and must be in the range of 1–4. For example, if this value is 2, only the two lowest bytes of the size are written to the ECU. |
Output
|
diag ref out is a copy of diag ref in. You can wire it to subsequent diagnostic VIs. | ||||||
|
block size returns the number of data bytes to be transferred to the ECU in subsequent UDS TransferData.vi requests. | ||||||
|
success? indicates successful receipt of a positive response message for this diagnostic service. | ||||||
|
error out describes error conditions. If the error in cluster indicated an error, the error out cluster contains the same information. Otherwise, error out describes the error status of this VI.
|
Description
UDS RequestDownload.vi initiates the download of a data block to the ECU. This is required to set up the download process; the actual data transfer occurs with subsequent UDS TransferData.vi requests. The transfer must occur in blocks of the size that this service returns (the block size parameter). After the download completes, use the UDS RequestTransferExit.vi service to terminate the process.



