OTX Reference  
OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment Class Reference

Transfers a complete segment to the ECU as fast as possible More...

Inheritance diagram for OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment:
Inheritance graph

Public Attributes

NumericTerm blockIndex
 Cardinality [1]
Related index of the block inside the flash:FlashSession to use, see term flash:GetNumberOfBlocks. Float values shall be truncated. More...
 
ComChannelTerm comChannel
 Cardinality [1]
Related ComChannel. The ComChannel must be open and accessible. More...
 
NumericTerm segmentIndex
 Cardinality [1]
Related index of the segment inside the block to use, see term flash:GetNumberOfSegments. Float values shall be truncated. More...
 
FlashSessionTerm session
 Cardinality [1]
Specifies the flash:FlashSession whose segment is to be transferred. More...
 
NumericTerm transferBlockSize
 Cardinality [1]
Size of a single block (PDU), which was previously determined by RequestDownload. Float values shall be truncated. More...
 
IntegerVariable transferredBytes
 Cardinality [1]
Returns the number of bytes actually transferred. More...
 
- Public Attributes inherited from OpenTestSystem.Otx.Core.Actions.ActionRealisation
OtxLink validFor
 Cardinality [0..1]
Validity of ActionRealisation. More...
 

Detailed Description

Transfers a complete segment to the ECU as fast as possible

To reprogram an ECU, the data to be flashed must first be determined from the MVCI server via Flash.GetDownloadData and then sent to the ECU in blocks via DiagCom.ExecuteDiagService. This requires the data to be transferred from the MVCI server to the OTX runtime and back to the MVCI server. Depending on the implementation, this can be done across multiple software layers. Due to the generally large amount of flash data, this can take a long time. With the Action TransferSegment, the implementation can be optimized in such a way that the data no longer runs through all software layers, thus achieving a significant increase in performance. The term Flash.GetDownloadData and the action DiagCom.ExecuteDiagService no longer have to be used for flashing.

Syntax
FlashPlus.TransferSegment(ComChannelTerm comChannel, FlashSessionTerm session, NumericTerm blockIndex, NumericTerm segmentIndex, NumericTerm transferBlockSize, IntegerVariable transferredBytes);
Examples
// Local Declarations
DiagCom.ComChannel ComChannel1;
DiagCom.DiagService DiagService1;
Flash.FlashSession FlashSession1;
List<String> flashSessionNames;
Integer transferredBytesVar;
Boolean Result = false;
// Flow
// using DB 992_14_x_Flash.FULL, 992_CAN
ComChannel1 = DiagCom.GetComChannel("LL_GatewUDS", NULL, false);
DiagService1 = DiagCom.CreateDiagServiceByName(ComChannel1, "DiagnServi_ReadDataByIdentVWSparePartNumbe");
DiagCom.ExecuteDiagService(DiagService1);
flashSessionNames = Flash.GetListOfValidFlashSessions(ComChannel1, NULL, @Directions:DOWNLOAD);
FlashSession1 = Flash.GetFlashSession(flashSessionNames[0]);
FlashPlus.TransferSegment(ComChannel1, FlashSession1, 2, 0, 255, transferredBytesVar);
Result = transferredBytesVar == 4456208;

Member Data Documentation

◆ blockIndex

NumericTerm OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.blockIndex

Cardinality [1]
Related index of the block inside the flash:FlashSession to use, see term flash:GetNumberOfBlocks. Float values shall be truncated.

◆ comChannel

ComChannelTerm OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.comChannel

Cardinality [1]
Related ComChannel. The ComChannel must be open and accessible.

◆ segmentIndex

NumericTerm OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.segmentIndex

Cardinality [1]
Related index of the segment inside the block to use, see term flash:GetNumberOfSegments. Float values shall be truncated.

◆ session

FlashSessionTerm OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.session

Cardinality [1]
Specifies the flash:FlashSession whose segment is to be transferred.

◆ transferBlockSize

NumericTerm OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.transferBlockSize

Cardinality [1]
Size of a single block (PDU), which was previously determined by RequestDownload. Float values shall be truncated.

◆ transferredBytes

IntegerVariable OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.transferredBytes

Cardinality [1]
Returns the number of bytes actually transferred.

OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.session
FlashSessionTerm session
Cardinality [1] Specifies the flash:FlashSession whose segment is to be transferred.
Definition: FlashPlus.cs:159
OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.transferredBytes
IntegerVariable transferredBytes
Cardinality [1] Returns the number of bytes actually transferred.
Definition: FlashPlus.cs:199
OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.blockIndex
NumericTerm blockIndex
Cardinality [1] Related index of the block inside the flash:FlashSession to use, see term flash:GetNu...
Definition: FlashPlus.cs:169
OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.transferBlockSize
NumericTerm transferBlockSize
Cardinality [1] Size of a single block (PDU), which was previously determined by RequestDownload....
Definition: FlashPlus.cs:189
OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.comChannel
ComChannelTerm comChannel
Cardinality [1] Related ComChannel. The ComChannel must be open and accessible.
Definition: FlashPlus.cs:149
OpenTestSystem.Otx.Extensions.FlashPlus.Actions.TransferSegment.segmentIndex
NumericTerm segmentIndex
Cardinality [1] Related index of the segment inside the block to use, see term flash:GetNumberOfSegme...
Definition: FlashPlus.cs:179