Skip to content

Enable E2E support for android and handling addition/removal of CRC data from SOME-I/P message #861

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

thangarajpvaleo
Copy link

@thangarajpvaleo thangarajpvaleo commented Mar 5, 2025

Description:

In the original e2e implementation,

  1. The vsomeip application was required to reserve a certain number of bytes from the payload for adding E2E Header. The vsomeip stack would then use these reserved bytes to add E2E Header after the CRC calculation, based on the e2e profile.

  2. If the application changes the profile, the application developer needs to update the code, reserve the required number of bytes for CRC in the payload, and reflect the profile changes in the JSON configuration.

Motivation for this change:

  • Since it is not obvious that the application should reserve bytes for E2E Header in the payload, and because all profiles have different CRC lengths, we’ve made changes to remove the dependency on application developers to reserve bytes for CRC.
  • The vsomeip stack will now take on the responsibility of resizing the byte buffer for the payload and adding the E2E Header.
  • In the updated implementation, if the application wants to change the profile after the initial implementation, no code changes are required. The application only needs to update the JSON configuration.

Changes that we have done:

  1. e2e sender & receiver side implementation

    • The allocation of the e2e header for CRC, handled within the vsomeip stack.
    • Removal of E2E header from the vsomeip stack and forwards it to the application.
  2. To handle the error case when crc check or counter fails

    • When CRC Check fails, it will not be notified to the application.
  3. Remove instance ID from data_id in vsomeip E2E protect & check

    • According to the AUTOSAR E2E protocol specification,
      there is no requirement to include an instance ID along with the Data ID.
      references:

      [PRS_E2E_00323]

      dataID is a unique identifier of the exchanged data/information. 
      In case of multiple instantiation, each single instance gets typically a separate dataID, 
      even if the same type of information is transmitted.
      

      [PRS_E2E_00324]

       And in Configuration Parameters, no definition of instanceID is seen.
      

Validation:

  • verified on two ubuntu pc's with the sample e2e application.

  - e2e enable
  - e2e receiver side impl
  - To handle the error case when crc check or counter fails
  - E2E sender side implementation
  - Remove instance ID from data_id in vsomeip E2E protect
  - Remove instance ID from data_id in vsomeip E2E check
      According to the AUTOSAR E2E protocol specification,
      there is no requirement to include an instance ID
      along with the Data ID.

Signed-off-by: Thangaraj Palanisamy <thangaraj.palanisamy@valeo.com>
@thangarajpvaleo thangarajpvaleo changed the title Enable E2E support for android and handling crc data to on VSOMEIP-STACK Enable E2E support for android and handling addition/removal of CRC data from SOME-I/P message Mar 5, 2025
@thangarajpvaleo
Copy link
Author

Hi Covesa, May i know the status of this pull request. Please update, Thanks.

@duartenfonseca
Copy link
Collaborator

Hi @thangarajpvaleo we have plans to add this, but not for now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants