Skip to main content

Diagnostic Session : Function 4 - Synchronize different Diagnostic Processes.

A diagnostic session enables a specific set of diagnostic services and/or functionalities in the server(s). Along with this, we need to focus on the services which are synchronized tightly with the session. Any change in the session is directly interlinked with the functionality of diagnostic services. 

As these services are linked to ECU processes (like message transmission, DTC setting and fail safe actions, Security Access) along with session change, these processes need to be aligned. Session change does not have an impact on non-volatile memory. 

Lets dive in-depth:

Below are the services which are impacted majorly due to session changes in server. 

  1. Communication Control - 0x28
  2. Control DTC Setting - 0x85
  3. Response on Event - 0x86
  4. Security Access - 0x27

Let us take an example of Communication Control service (0x28).

Communication Control (0x28) service is used for enabling and disabling the normal communication and network management messages of an ECU. It is one of the important service of UDS. This service behaviour is majorly impacted due to session changes. Let us see how.

Consider that client wants to flash an ECU and takes ECU to extended session.

Client requests for disabling transmission of all messages from Server. Hence server does not transmit any of the message. Now client next requests for programming session.  

When client requests session change either to same session or different session, server needs to take an action as specified by UDS standard.

Diagnostic Session Control Service section in UDS has a descriptive paragraph mentioning how each service will be impacted. 

Considering that, while entering programming session, effect of service  Communication Control (0x28) remains as it is. Server does not transmit any message till it is in programming session.

After programming ends server is pushed to default session by client. Now as per the standard, server may start transmission of the messages. So If ECU is flashed properly then we could see network traffic of outgoing messages from ECU. It denotes that effect of  Communication Control (0x28) is over in this transition of session. 

For your understanding below is the explanatory chart briefing on effect of session transitions on service  Communication Control (0x28).

Let us see the use cases:
  1. Current session - Default session and Next Session - Default session : This transition  is not possible for this service as this service is not supported in default session.
  2. Current session - Default session and Next Session - Non-Default session : This transition is not possible for this service as this service is not supported in default session.
  3. Current session - Non-default session and Next Session - Default session : The service effect shall be diminished. Transmission and reception activities shall be reset to default settings of server. 
  4. Current session - Non-default session and Next Session - Non-default session : This transition  shall not affect the transmission activities set as per service  Communication Control (0x28). in current session. 
Like this you can study the impact of session change on other services as well. 

For example, DTC setting can be enabled or disabled by service Control DTC Setting (0x85). Session change impacts on DTC setting mechanism and finally many ECU processes are impacted due to this.

Diagnostic session provides a fore-ground for initiation, extension and termination of different ECU processes which are controlled by specific services. 
 
I hope this clarifies the concept of session change and its impact on other services and processes.

Comments

Popular posts from this blog

What is UDS on CAN or Diagnostic on CAN ?

OSI Model and Diagnostics : OSI model has 7 layers and each layer has defined functionality. To understand this you can refer this excellent IEEE  publication. It explains OSI Model for CAN , Ethernet, flexray and MOST.  External reference : http://www.ieee802.org/1/files/public/docs2013/new-tsn-diarra-osi-layers-in-automotive-networks-0313-v01.pdf   So let us understand,  what is this UDS on CAN  ? When a Diagnostic Message formatted  as per ISO 14229 -1 i.e UDS Standard is sent over Controller Network we say Diagnostics Communication is happening as per UDS on CAN. So as per this : Below layers participate in Diagnostic Communication Over CAN :  1. Application Layer :  ISO 14229-1:2013 ROAD VEHICLES — UNIFIED DIAGNOSTIC SERVICES (UDS) — PART 1: SPECIFICATION AND REQUIREMENTS  ISO 14229-3:2012 ROAD VEHICLES — UNIFIED DIAGNOSTIC SERVICES (UDS) — PART 3: UNIFIED DIAGNOSTIC SERVICES ON CAN IMPLEMENTATION (UDSON...

Diagnostic Session Function 3 - Security and authorization of the user – Use of Seed and Key for authenticating -

 Let us see how the function of Security Access is served by Diagnostic Session.   Security is an important aspect of an UDS implementation. It is required to avoid unauthorized access to ECU. As one can control ECU functionality through usage of UDS services, it becomes vital to secure ECU from unintended or vulnerable access.  Hence UDS has provisioned a special service called Security Access SID 0x27 to authorize a user.It works on the principle of Seed and key mechanism. You can get lot many websites explaining how security service works. The intention of this write up is to know how session is important for the implementation of security of an ECU. As mentioned in the blog (https://thevehiclediagnostics.blogspot.com/2020/01/what-is-diagnostic-session.html )  a diagnostic session of an ECU is a timed window. Session management helps in following manner for security 1 . Limit a secured access for timed window i.e session. 2 . End se...

Diagnostic Session : Function 5 - Session Oriented Access to Services

  There are multiple users those need to use UDS protocol for various purposes like Garage person for fault detection, ECU manufacture for Testing activities and development purpose. Also  OEM needs  access to ECU memory for flashing purposes.   UDS services can be categorized in different groups like few services will just read some Data from memory,a few will write or update the data to memory, some will erase/update ECU sw itself , some will control Inputs outs of ECU directly.  So there are chances that any improper usage of UDS service may result in safety issues , security breaches or damage to ECU resources. Hence, it doesn't make sense to give access to all services to everyone. To achieve this UDS has designed some mechanisms like Sessions, Security Authentication, Preconditions. I hope you are aware about what a Diagnostic Session is. Please visit :  https://thevehiclediagnostics.blogspot.com/2020/01/what-is-diagnostic-session.html   if you ...