Tools and Technologies
- Communication Protocols: J1939, CAN ISO-TP, PWM, VPW, J2534
- Software Layer: Base Software (BSW) integration
- Platform: RTOS-based system (Zephyr based environment)
- Hardware: NXP microcontroller platform (MIMXRT1062)
- Architecture: Platform-independent protocol stack design
- IDE – MCUExpress
- Flashing tool – MCUXpresso Secure Provisioning Tool
- Debugger – Jlink
About the Customer
Our customer is an advanced air mobility company developing an avionics-led flying car platform. As the platform moved closer to vehicle-level validation, the customer needed an onboard diagnostics framework aligned with modern automotive standards.
Business Challenge
The customer had limited prior experience with automotive diagnostic protocols like OBD, UDS etc. Their platform required a standardized onboard diagnostics (OBD) approach that could support vehicle health monitoring, fault-code handling, and parameter-level diagnostic data access.
Key challenges included:
- Identifying the right diagnostic standard for a modern mobility platform
- Moving away from legacy OBD approaches toward a UDS-based implementation
- Supporting standardized diagnostic access to vehicle parameters and fault codes
- Integrating the protocol stack with the existing software platform
- Reducing development time by using a proven ready-to-deploy diagnostic protocol IP
Embitel's Solution
Our automotive team worked closely with the customer from the technology selection stage through complete software integration.
- Diagnostic Architecture Consulting
- J1979-2 Protocol Stack Integration
- ISO-TP transport layer for CAN-based message transport
- J1979-2 diagnostic layer
- Standardized Parameter ID (PID) handling
- Diagnostic request and response processing
- Fault code management interfaces
- UDS Service Implementation
- ReadDataByIdentifier (0x22): Retrieves standardized vehicle parameters (PIDs) such as system operating values and diagnostic information.
- ReadDTCInformation (0x19): Reads stored Diagnostic Trouble Codes (DTCs) along with associated diagnostic data.
- ClearDiagnosticInformation (0x14): Clears stored fault codes after servicing or validation.
- RoutineControl (0x31): Executes standardized diagnostic routines required by the OBD specification.
- Supporting Diagnostic Software Components
- Fault Code Memory (FCM) for storing and managing Diagnostic Trouble Codes.
- NVM Handler for non-volatile memory read, write, and erase operations required by the diagnostic subsystem.
- Platform Integration and Configuration
- Integrated the protocol stack with the customer’s software architecture.
- Configured protocol parameters and diagnostic data mappings.
- Adapted the software to the customer’s platform interfaces.
- Performed integration testing and functional validation.
- Delivered a production-ready software package.
- Verification and Validation
- Source code (licensed for a single MCU variant)
- Software design documentation
- MISRA compliance reports
- Static analysis reports
- Dynamic analysis reports
- Functional test reports
- Integration support
Since the customer was entering the automotive diagnostics domain for the first time, our team evaluated the platform requirements and recommended adopting SAE J1979-2. Unlike legacy OBD implementations, J1979-2 leverages UDS services and provides a standardized approach for accessing vehicle diagnostic information.
We integrated our production-ready J1979-2 protocol IP into the customer’s software platform. Since, our protocol stack was pre-tested, we were able to deploy it with minimum modifications.
The implementation included the complete diagnostic communication path:

The implementation supported the four standardized UDS services defined by J1979-2 for onboard diagnostics.
By mapping legacy OBD functionality onto these four UDS services, our solution completed J1979-2 compliant diagnostic capability.
To complete the diagnostic framework, Embitel also developed and integrated supporting software modules, including:
These modules worked together with the J1979-2 protocol to provide a complete onboard diagnostics solution.
Embitel took end-to-end ownership of protocol integration.
The customer provided the target hardware and platform software. Our team took it from there and:
Approximately 1,500 protocol test specifications were generated using AI-assisted test automation and manually verified by Embitel engineers before execution.
The complete deliverables included:
Embitel's Impact
- Reduced J1979-2 implementation effort from an estimated 6-month development cycle to 2–3 weeks
- AI powered V&V reduced test specification effort from 10-15 man days to 1 man day
- Delivered approximately 1,500 AI-assisted test specifications with manual validation
- Enabled a reusable, standards-aligned OBD architecture for the customer’s advanced mobility platform
- Helped the customer avoid a custom diagnostic implementation and adopt a scalable UDS-based approach
