site-logo

SAE J1939 Protocol Software: Configuration to Deployment

A Ready-to-Integrate SAE J1939 protocol software package

automotive_spice
Tisax
Certification-Badge-Nov-2023
Development-Maintenance-Center-CMMI-Development
logo-2-4
logo-2-4

Enabling Standardization of ECU Diagnostics Data and Services

Diagnostics functionality is a must for vehicle ECUs as they need to operate in fault-free conditions. The ECU must identify any fault in the system and communicate to other subsystems to get it rectified. SAE J1939 protocol defines all such features and provides a standard to communicate diagnostics data and messages.

Enabling Standardization of ECU Diagnostics Data and Services

SAE J1939 protocol is a set of standards that define standardized method for ECU communication across manufactures.

Quick facts about SAE J1939

  • It is a higher layer protocol built on CAN as the physical layer
  • Supports both node addressing and message addressing
  • Can transmit up to 1785 bytes
  • It is a higher layer protocol built on CAN as the physical layer

Embitel offers a ready-to-deploy J1939 protocol software package. With our J1939 stack, you can implement vehicle diagnostics capabilities in your production programs in no time.

We can configure the required diagnostics services and provide other customizations as per your specific requirements.

Know more about our J1939 protocol software business model, features, use-cases, and technical specifications.

Download J1939 factsheet
 Embedded Product Design Services for Solar Energy Harvesting System

Striking Features of our J1939 Protocol Stack

  • Our J1939 protocol stack has a modular architecture making it simpler to integrate to your existing automotive system and hardware.
  • The J1939 stack is implemented in ANSI-C and is independent of the CAN controller, CPU and operating system.
  • Unit, Integration and Functional testing of SAE J1939 with relevant tools are performed and test reports are shared with the customer.
  • J1939 Datalink + Transport layer (J1939/21) and Network Management layer (J1939/81) are pre-tested and pre-packaged as per the SAE J1939 protocol standard. These layers are ‘re-usable’ for any automotive ECU and/or automotive tooling applications.
  • J1939 protocol software code is compliant to 2012 MISRA C standards.
  • We offer our industry recognized SAE J1939 protocol software under a one-time licensing fee model.
  • Terms & conditions for J1939 delivery model are completely transparent and fully aligned with the customer’s requirements and vision.
  • Our J1939 stack finds applications in implementation of diagnostics system for all kinds of vehicle ECU and external diagnostic device.
  • Enablement of vehicle diagnostics capabilities, ECU communication and ECU flashing through J1939 bootloader are some of the most common use-cases.

A Closer Look at Our J1939 Stack Architecture

Our J1939 stack can be integrated with your automotive ECU and/or tooling applications, to fast-track your product development process.

We provide the following J1939 software layers as part of the stack:

  • J1939 Application layer (J1939/71) defines SPNs and PGNs to be configured.
  • Network Management layer (J1939/81) is concerned with the management of source addresses and the association of those addresses with an actual function.
  • Data link layer/Transport layer (J1939/21) describes the data link defined in CAN (ISO 11898) protocol.
 A Closer Look at Our J1939 Stack Architecture

Embitel’s Service Offerings for SAE J1939 Software and its Integration

J1939/73-diagnostics layer services

  • Configuration of fault-code memory in SAE J1939 Diagnostic stack
  • Configuration of DM services for active faults, passive faults, and clearing faults, OBD-II compliance and flash bootloader operations
  • Cyclic transmission and reception of messages
  • Configuration of J1939 PGN list and J1939 SPN

J1939/71 application layer services

  • Configuration and scheduling of Rx and Tx messages between SAE J1939 protocol stack and end-user application.
  • Designing an interface for CAN communication between J1939 application layer and end-user application layer

Diagnostic tester tooling solution development

  • Simulation of vehicle condition at production/end-of-line stage using SAE J1939 diagnostic tool
  • Design and development of SAE J1939 diagnostic tool based on C# or Qt
  • Support for loading, saving, and editing of DB files (.dbc)
  • Configuration of diagnostics services as per the end-user application requirements

J1939 Conformance testing

  • Application testing and validation as per the SAE test cases defined in J1939/82
  • Support for testing of all layers- data link to application layer
  • Last-mile validation services post SAE J1939 stack integration

J1939 Bootloader development

  • SAE J1939 bootloader development for automotive ECU reprogramming
  • Configuring reprogramming sequence based on automotive application requirements
  • Verification and validation services for the bootloader

End-user Application analysis

  • Requirement gathering and analysis workshops with our automotive domain experts
  • J1939 Diagnostic Stack integration strategy – project road-map for J1939/73 and J1939/71 customizations and driver development

200+

customers supported since 2010

100+

scalable and reusable Bootloader platforms delivered

30%

quicker time-to-market enabled

95%

lesser development time with PC-based automation tools

Embitel’s Advantage

1
Industry-wide Recognition

We have integrated ISOBUS stack for several production programs across the globe. The extensive experience gives us an edge in the implementation of ECU communication in agricultural and forestry vehicles.

2
CMMi Level 3 Certified

As a CMMI level 3 certified organization, we have a robust process model in place. This ensures that the ISOBUS stack along with other stacks are reliable, bug-free, and efficient.

3
Configuration & Integration Support

Our ISOBUS protocol software is designed to be fully configurable as per project specifications. We provide support for configuration of ISOBUS Stack.

4
Support for After-market Solutions

Development, testing and maintenance support for after-Market products for forestry and agricultural vehicles related to ECU communication and diagnostics.

Embitel’s Advantage

FAQs about J1939 Stack Integration

Ans. J1939 protocol is a standard (set of embedded software specifications) defined by SAE (Society of Automotive Engineers). The SAE J1939 protocol specifications are defined for CAN bus, and J1939 stack is an embedded software code with layered architecture and is compliant with J1939 standard.

The J1939 protocol stack is best suited for automotive ECU and tooling applications in commercial vehicles.

Ans. Our stack follows SAE J1939 standard and hence, it supports different transmission modes including cyclic transmission of PGN data. If your project has any kind of configuration required in terms of transmission mode, we will be happy to assist you in all possible ways.

Ans. For transmission of larger files, Transport Protocol layer is equipped with both BAM (Broadcast Announce Message) protocol and peer-to-peer transmission protocol. The stack is configured with special parameter groups used for connection management (TP-CM) and data transmission (TP-DT).

Ans. Yes, the vehicle application layer J1939-71 is equipped with feature for message filtering according to the source address and PGN.

Ans. The network management in J1939 is designed for address claiming for dynamic allocation of address. This feature makes J1939 one of a kind. Our J1939 protocol stack supports both Static and Arbitrary addressing schemes.

Ans. We have designed our J1939 stack to handle these requirements. We support all three requirements- request message processing, diagnostics processing and message timeout monitoring.

The different types of messages shall be handled by different layers in J1939 stack. For example Request message processing shall be handled by Data link layer, Diagnostics message processing shall be handled by DM Layer(j1939/73), Message timeout shall be handled in J1939/71 layer

Ans. Our J1939 stack is hardware and platform independent. By virtue of being hardware agnostic, it can be ported into a hardware environment of your choice.

Ans. We provide support and upgrade for J1939 stacks so that our customers have a smooth experience of integrating our stack. The exact period of support and upgrade can be discussed in detail based on customers’ requirement. Since, these standards do not change very frequently, instances of upgrade are few. However, should a need arise, we will implement the changes at a nominal cost.

Ans. No, our J1939 Stack doesn’t include the CAN Driver. However, we can support developing the CAN Driver with additional cost.

Ans. Our J1939 software stack consists of validated and verified software layer services.

Following are the software specifications of the included layers:

ISO-OSI MODEL LAYER EMBEDDED SOFTWARE SPECIFICATION
Data link / Transport Layer J1939/21
Data link / Transport Layer J1939/21
Data link / Transport Layer J1939/21
Data link / Transport Layer J1939/21

Ans. As part of the SLA, our software team will work closely with your team to analyze the end-user application.

Based on your business requirement, we provide customization and integration of the J1939 stack with your hardware platform and software application.

To summarize, we will partner with your team to deliver following services along with the stack:

  • Integration of the J1939 stack to your hardware platform
  • Integration of J1939 solution with target application
  • Development of bootloader software based on J1939 standard
  • Development of driver modules like CAN, UART and more
  • Verification &validation (testing services)of your target application after integration

Ans. The modules that support the bootloader functionality are already included in the software stack. We also provide additional integration support for ECU reprogramming.

This includes segregating the memory as boot and application area, implementing boot loader logic in both boot and application, CRC checks, Flash driver and more.

Ans. The J1939 software stack is complaint with ISO J1939 standard. The software source code is developed using embedded C in compliance with MISRA-C standard.

At an organization level, we also follow all the software development best practices as per CMMI level 3 standards.

Ans. We have more than 10 years of experience and domain expertise in partnering with global automotive OEMs’ and Suppliers We have a team of expert automotive software engineers, who have delivered key solutions for integration, end-of-line testing and support for the implementation J1939 protocol software stack across multiple platforms

Ans. We have a well-defined support and maintenance process for your post-production requirements.

As per your project requirements and partnership expectations, post-production support will be part of the SLA at the onset of the J1939 stack integration project

Ans. Our business module enables one-time licensing which provides the customer with IP rights and source code for the software stack.

The IP rights help your business to reuse the software code across multiple projects.

However the business model can be re-framed according to the business needs of the customer and project specifications.

J1939 Customer Success Stories:

Android based Infotainment system – J1939 stack integration for ECU communication and vehicle data collection

Android based Infotainment system – J1939 stack integration for ECU communication and vehicle data collection

Business Challenge:

Infotainment application communicates with several ECUs to fetch various vehicle parameters. Embitel’s infotainment software development team needed an off-the-shelf communication layer that can be configured easily. This would ensure reduced development time and add value to the bottom-line of the project costs.

Embitel Solution:

  • The team decided to integrate the J1939 stack, designed in-house for CAN communication, to save time and costs. Hence our cross-functional expertise in Embedded and Automotive technology added value to our client’s product roadmap
Advanced EPS system – Code optimization, J1939 Stack Integration, Onsite Support and
                                    In-Vehicle Testing

Advanced EPS system – Code optimization, J1939 Stack Integration, Onsite Support and In-Vehicle Testing

Business Challenge:

  • Our customer (Automotive Tier-I Supplier of steering and driveline components) encountered a major roadblock during software porting.Due to limited on-chip memory (RAM and ROM) of DsPIC 30F4011 platform, it became imperative for the customer to port highly-optimized embedded software to the EPS system.

Embitel Solution:

After several engineering workshops with the customer for understanding and analyzing the EPS system, Team Embitel was able to overcome the hurdle with the help of following solution:

  • A light-weight and re-usable SAE J1939 compliant stack best suited for commercial vehicles was integrated with the system
  • The entire code was optimized around J1939 stack and since the stack has layered architecture, the optimized software was successfully ported thus overcoming the memory issue

Features of the Reusable J1939 Stack:

  • enables in-vehicle network communications (ECU communications)
  • supports vehicle diagnostics services and fault-code memory
  • J1939 bootloader supports in-vehicle ECU reprogramming
  • The embedded software code of the Stack is MISRA-C complaint.

Why Partner with us for J1939 Stack Integration Project:

1
Leverage our automotive domain expertise and project experience in J1939 integration to reduce time-to-market and application development costs
2
We are a CMMi Level 3 and ISO 9001:2008 & ISO 27001:2013 certified organization
3
Robust project management processes based on EmbiQ – an engagement model. This model is built on three critical pillars – People, Process and Technology
Embitel’s Advantage
Scroll to Top