Se rendre au contenu

PCAN-UDS API

v2.3.3
VersionDate
2.3.310/07/2025Détails
2.3.221/05/2024Détails
2.3.105/10/2023Détails
2.3.024/03/2023Détails
2.2.131/08/2022Détails
2.2.027/10/2021Détails
2.1.120/05/2021Détails
2.1.025/01/2021Détails
2.0.003/12/2020Détails
1.3.422/11/2019Détails
1.3.327/06/2019Détails
1.3.224/05/2019Détails
1.3.105/03/2018Détails
1.3.003/02/2017Détails
1.2.122/04/2016Détails
1.2.001/09/2015Détails
1.1.013/08/2015Détails
1.0.014/11/2014Détails

2.3.3 10/07/2025

Améliorations
  • General code enhancements
Corrections de bugs
  • Fixed issue in UDS_WaitForServiceFunctional_2013: function could wait indefinitely in rare cases

2.3.2 21/05/2024

Corrections de bugs
  • Fixed backwards compatibility issue when trying to write an 8 bytes CAN frame usingPUDS_PROTOCOL_NONE
  • Fixed concurrent access exception when uninitializing UDS channel and checking Rx notification from PCAN-ISO-TP API
Changements
  • Adjustments inUDS_SetValue_2013with backwards compatibility parameters
  • Adjustments inUDS_SetValue_2013with non-UDS parameter (e.g.PCAN_BITRATE_ADAPTING)
  • Fixed possible concurrent access exception when uninitializing UDS channel and sending automated tester present

2.3.1 05/10/2023

Améliorations
  • General code enhancements
Corrections de bugs
  • Calls to UDS_Write returned PUDS_STATUS_CAUTION_INPUT_MODIFIED even if no actual changes had been made to the send buffer
Changements
  • Logging for internal libraries is now disabled by default

2.3.0 24/03/2023

Améliorations
  • Added support for ARM64
  • Added a header file and examples for Python
Corrections de bugs
  • Fixed backward compatibility issue with with mapping PUDS_PROTOCOL_NONE

2.2.1 31/08/2022

Améliorations
  • Added new example projects (11,12,13 and 14) for all supported programming languages
  • General code improvements in the example projects
Corrections de bugs
  • Fix in UDS_WaitForFunctionalResponses_2013 and UDS_WaitForServiceFunctional_2013: no extra wait is used when NRC 0x78 is received and elapsed time during reception is longer than timeout
  • Fixed P3 timing check (on write), when user forget to use no response flag message type but message data contains no response flag
  • Negative responses with NRC EXTENDED_TIMING were being internally handled instead of returning the Negative response as is
Changements
  • Sample projects are now delivered as zip package
  • Wait time when UDS_WaitForService_2013 is called with a request containing no response flag was optimized

2.2.0 27/10/2021

Améliorations
  • Improved bad parameter handling in UDS_Svc* functions
  • Added PUDS_SVC_PARAM_ROE_RMRDOSC_LEN definition for ResponseOnEvent service
  • Added definitions for ResponseOnEvent service with onTimerInterrupt subfunction (PUDS_SVC_PARAM_ROE_OTI_*)
Corrections de bugs
  • Fixed UDS_WriteMemoryByAddress_2013 function to allow non-standard requests with null memory size parameter
  • Fixed enhanced timeout computing in UDS_WaitForService_2013 (take in account user defined timeout response parameter)
Changements
  • Default parameter values for following functions were implemented:UDS_SvcInputOutputControlByIdentifier_2013UDS_SvcTransferData_2013UDS_SvcRequestTransferExit_2013UDS_SvcResponseOnEvent_2013UDS_SvcRoutineControl_2013
  • Added missing PUDS_SVC_PARAM_ROE_EWT_* definitions in header files (eventWindowTime parameter)
  • Examples: Handling on allocation errors improved
  • UDS_SvcInputOutputControlByIdentifier_2013
  • UDS_SvcTransferData_2013
  • UDS_SvcRequestTransferExit_2013
  • UDS_SvcResponseOnEvent_2013
  • UDS_SvcRoutineControl_2013

2.1.1 20/05/2021

Améliorations
  • Added SecuredDataTransmission 2020 service handling
  • Added definitions (ISO 14229-1:2020): PUDS_SVC_PARAM_RFT_MOOP_RSFILE, PUDS_SVC_PARAM_ROE_RMRDOSC and PUDS_SVC_PARAM_ROE_RDRIODSC
  • Added UDS_SvcClearDiagnosticInformation_2020 (ClearDiagnosticInformation service with memory selection parameter)
  • Added UDS_SvcAuthentication[...]_2020 functions to handle Authentication service (ISO 14229-1:2020)
  • Added uds_nrc enumeration that represent UDS negative response codes
  • Added uds_svc_authentication_subfunction and uds_svc_authentication_return_parameter enumerations for Authentication service (ISO 14229-1:2020)
  • Added PUDS_ONLY_PREPARE_REQUEST definition that allows to use a UDS_Svc* function to prepare a message without sending it
  • Added PUDS_PARAMETER_USE_NO_RESPONSE_AUTOMATIC_TESTER_PRESENT parameter
Corrections de bugs
  • Fixed PUDS_STATUS_SERVICE_ALREADY_PENDING error: do not raise this error if the previous call of the service resulted in network error
  • Fixed memory access violations due to empty UUDT messages
  • Fixed padding when sending UUDT messages which use a length that is not equal to a valid DLC
  • Fixed missing PUDS_SVC_PARAM_LC_BAUDRATE_PROGSU definition for LinkControl service
  • Fixed minor errors in examples
  • Fixed missing status handling in UDS_GetErrorText_2013 function
  • Changed debug mode enumeration (replaced by debug levels)
  • Changed auto TesterPresent management: physical auto TesterPresent are managed sequentially, functional auto TesterPresent are managed periodically
  • Fixed service already pending error while sending multiple NRC messages with different service identifier
  • Changed uds_sessioninfo: using a null s3_client timing disable automatic TesterPresent
  • Fixed UDS_SvcDynamicallyDefineDataIdentifierDBMA_2013: addressAndLengthFormatIdentifier parameter was inverted in DynamicallyDefineDataIdentifier service with defineByMemoryAddress subfunction

2.1.0 25/01/2021

Améliorations
  • New UDS_MsgCopy_2013 function added to copy a uds_msg structure
  • New UDS_MsgMove_2013 function added to move a uds_msg structure into another uds_msg structure
  • New attribute added, can_tx_dlc, to the uds_msgconfig structure
  • New enumeration added, uds_errstatus, to store UDS error codes
  • New parameter added, PUDS_PARAMETER_RESET_HARD, to perform a hard reset (and keep settings and mappings)
  • New status value added, PUDS_STATUS_HANDLE_INVALID, to handle invalid cantp_handle error
  • New Examples 08/09/10 for C#/VB/C++_CLR/Delphi added
  • Examples reviewed:Add missing uds_msg initialisations (fill structure with zero)Example 05_server_simulator: remove useless uds_msg structure zero filling after UDS_MsgFree_2013Examples 06_client_all_request: replace invalid RequestUpload sizes parametersExamples 7 and 8 reviewed: remove useless mapping 'uid' initializationDocumentation of samples reviewed
  • Check potential PUDS_STATUS_SERVICE_ALREADY_PENDING error on pending postive responses and extended timing negative responses
  • Documentation updated
  • Add missing uds_msg initialisations (fill structure with zero)
  • Example 05_server_simulator: remove useless uds_msg structure zero filling after UDS_MsgFree_2013
  • Examples 06_client_all_request: replace invalid RequestUpload sizes parameters
  • Examples 7 and 8 reviewed: remove useless mapping 'uid' initialization
  • Documentation of samples reviewed
Corrections de bugs
  • Fixed UDS_RemoveMapping_2013 return code, if the mapping is not a valid mapping, the function retrurns PUDS_STATUS_MAPPING_INVALID
  • Fixed WaitForServiceFunctional_2013 prototype in Pascal header (do not pass max_msg_count as a reference)
  • Fixed UDS_SvcDynamicallyDefineDataIdentifierDBMA_2013, UDS_SvcWriteMemoryByAddress_2013, UDS_SvcRequestDownload_2013 and UDS_SvcRequestUpload_2013: Check that addressAndLengthFormatIdentifier parameters are valid
  • File description of the 64-bit version of the library corrected. It was showing '32-bit' instead of '64-bit'
Changements
  • Changed backward compatibility UDS_Write function: the no response flag is now automaticaly corrected in message data if needed
  • Automaticaly remove no response flag in UDS_Svc*_2013 if the service does not have a subfunction
  • Changed UDS_WaitForService_2013 and UDS_WaitForServiceFunctional_2013: confirmation message buffer is now mandatory
  • Changed UDS_WaitForServiceFunctional_2013/WaitForServiceFunctional_2013 arguments order
  • Changed UDS_WaitForServiceFunctional_2013: functional UUDT request are allowed
  • Changed message structure checks: prevent user to reuse an already allocated buffer (PUDS_STATUS_MESSAGE_BUFFER_ALREADY_USED error)

2.0.0 03/12/2020

Améliorations
  • New interface ISO 14229 with CAN FD support, revision 2013
  • Fully binary compatible with applications using PCAN-UDS.dll, version 1.x
  • Backward compatibility support for projects based on ISO 14229, revision 2006 (PCAN-UDS.dll, version 1.x)
  • General code enhancements

1.3.4 22/11/2019

Améliorations
  • New sample project in C#
  • Automatic correction of server address: When setting the server address, the value is now automatically corrected to fit into a byte (except if address is specified as enhanced)
Corrections de bugs
  • Fixed different issues caused by frames with non-default priorityFixed issue when receiving a 29-bit ISO-TP frame with non-default priorityFixed issue when waiting for a service with a 29-bit UDS message with non-default priorityFixed issue with an internal check for CAN-TP confirmation with non-default priority 29-bit message
  • Structure alignment information was missing within the header files
  • Fixed issue when receiving a 29-bit ISO-TP frame with non-default priority
  • Fixed issue when waiting for a service with a 29-bit UDS message with non-default priority
  • Fixed issue with an internal check for CAN-TP confirmation with non-default priority 29-bit message

1.3.3 27/06/2019

Améliorations
  • Certificate checking of the libraries improved. In some special environments the initialization process of a channel could last about 20 seconds
Corrections de bugs
  • Fixed problems with Endianness conversions
  • The following missing RDTCI definitions have been added which are now supported by the UDS_SvcReadDTCInformationNoParam function:PUDS_SVC_PARAM_RDTCI_RDTCFDCPUDS_SVC_PARAM_RDTCI_RDTCWPS
  • PUDS_SVC_PARAM_RDTCI_RDTCFDC
  • PUDS_SVC_PARAM_RDTCI_RDTCWPS

1.3.2 24/05/2019

Améliorations
  • New function 'CheckResponse' in TPUDSMsg (C#, VB.NET, and C++/CLR) for checking UDS service responses for validity, supersedes 'IsPositiveResponse'
  • The function 'IsPositiveResponse' of TPUDSMsg has been marked as obsolete/deprecated
  • New enumeration TPUDSServiceResult (C#, VB.NET, and C++/CLR), representing result values of UDS services
  • Added support for UUDT message writing with new protocol: PUDS_PROTOCOL_NONE
  • General code enhancements
  • The documentation was updated

1.3.1 05/03/2018

Améliorations
  • Added parameters PUDS_PARAM_MAPPING_ADD and PUDS_PARAM_MAPPING_REMOVE to configure non-standard UDS messages
  • Added support for UUDT response with new PUDS message type: PUDS_MESSAGE_TYPE_CONFIRM_UUDT
Corrections de bugs
  • Wrong signature of the function 'SvcWriteMemoryByAddress' in the Pascal header file PUDS.pas corrected

1.3.0 03/02/2017

Améliorations
  • Added support for new ISO-TP message type PCANTP_MESSAGE_INDICATION_TX
  • Added PUDS_MESSAGE_INDICATION_TX to TPUDSMessageType to distinguish incoming and outgoing start of message

1.2.1 22/04/2016

Améliorations
  • Added parameter PUDS_PARAM_PADDING_VALUE to set value for CAN Data Padding
  • Updated to support new PCAN channels (PCAN-Basic 4.x)
Corrections de bugs
  • Fixed timeout deadlock when calling PUDS_Uninitialize with value PUDS_NONEBUS

1.2.0 01/09/2015

Améliorations
  • PCAN-UDS header files edited to support PCAN-Basic 4.x
Corrections de bugs
  • C++ header file was edited: default value for parameters in "UDS_Initialize" are now C-compatible

1.1.0 13/08/2015

Améliorations
  • General updates due to ISO-TP changes
  • General performance improved

1.0.0 14/11/2014

Changements
  • First release

Neutralisé