The Unified Diagnostic Services (UDS) protocol, defined by the ISO 14229 standard, is the essential communication backbone for diagnostics, troubleshooting, and ECU reprogramming in modern vehicles. It establishes a standardized client-server communication between an external diagnostic tester tool (client) and the Electronic Control Units (ECUs) within the vehicle (server).
RAPIDSEA UDS Stack isn't just a standard implementation; it's a performance-optimized, ready-to-integrate solution built for the demands of today's and tomorrow's Software-Defined Vehicle (SDV) architectures. Our stack cuts down your development cycles by providing a robust, pre-validated core that is both hardware-agnostic and fully compliant with the latest specifications. Our Flint IDE allows developers to configure this stack easily using intuitive graphical interfaces.
Some of the popular MCUs on which our stack is ported are being used today for automotive ECU development are Renesas RH850/F1K, RH850/D1M1A, Renesas RL78, NXP S32K, Infineon Traveo S6J3360 etc.

Our stack implements all mandatory and widely used optional Unified Diagnostic Services (SIDs) as per ISO 14229-1, ensuring full functional coverage for all diagnostic needs, from basic fault reading to advanced Secure Flashing.
| Service ID | Name | Description |
|---|---|---|
| 10h | Diagnostic Session Control | Initiate different types of diagnostics sessions |
| 11h | ECU Reset | Perform ECU Reset to revert back to default session |
| 14h | Clear Diagnostic Information | Clear diagnostic trouble codes (DTC) stored in the ECU |
| 19h | Read DTC Information | Read diagnostic trouble codes (DTC) |
| 22h | Read Data By Identifier | Request data from the ECU |
| 23h | Read Memory By Address | Read data from the memory address provided |
| 27h | Security Access | Limit access to data and services to prevent unauthorized access |
| 28h | Communication Control | Manage the exchange of messages in the ECUs |
| 2Eh | Write Data By Identifier | Write data onto the server |
| 2Fh | IO Control By Identifier | Control the input/output signals through the diagnostic interface |
| 31h | Routine Control | Perform start, stop and get status on predefined routines |
| 34h | Request Download | Request server to initiate download data |
| 35h | Request Upload | Request server to initiate upload data |
| 36h | Transfer Data | Perform data transfer to/from server |
| 37h | Request Transfer Exit | Terminate and exit data transfer |
| 3Dh | Write Memory By Address | Write information into the ECU memory location |
| 3Eh | Tester Present | Indicate that the client is still connected and keep diagnostic sessions active. |
| 85h | Control DTC Setting | Enable/disable updating of DTC settings in ECU |
| 7Fh | Negative Response Handling | Manage error handling for unsupported or failure requests |
All these services are available for Server and client mode of operations and hence can be utilized to implement both OBD2 UDS diagnostics ECUs and testers.

RAPIDSEA UDS runs unchanged over ISO 15765-2 DoCAN/CAN-FD, ISO 13400 DoIP (100/1000BASE-T1 Automotive Ethernet), FlexRay, and LIN (via lightweight gateway). The same binary can listen on multiple physical interfaces simultaneously – a capability proven in zonal controllers and telematics gateways. This future-proof design eliminates the need for multiple protocol variants and dramatically reduces validation effort when migrating from CAN to Ethernet-based architectures.
RAPIDSEA’s ISO 14229 UDS stack empowers OEMs and Tier-1 suppliers to embed full diagnostic capabilities directly into ECUs and mobility infrastructure (e.g., charging systems, gateway units, BMS, powertrain ECUs). Key advantages include:
Offer a trusted and secure communication link between diagnostic tools and ECUs, safeguarding diagnostic and configuration data.
Leverage the full breadth of UDS services: session management, DTC reading and clearing, memory access, data-by-identifier (DID) read/write, I/O control, routine execution, and more.
Easily collect, store, retrieve, and clear diagnostic trouble codes along with comprehensive ECU status and health-related telemetry data.
Designed for portability across varied MCU architectures (8-, 16-, 32-, 64-bit), enabling seamless integration regardless of hardware or OS choice.
Program vehicle- or variant-specific settings using DIDs, set up configuration data, and manage variant calibration during manufacturing or service.
Embed the server stack into existing ECU firmware with minimal changes, enabling secure firmware updates and reprogramming when needed.
For diagnostic-tool developers, workshop solution providers, or calibration-tool vendors, the RAPIDSEA UDS Client stack offers a highly configurable, high-performance foundation to build Windows, PC-based, or embedded diagnostic applications. Key features include:
Fine-tune critical parameters such as P1/P2 timing windows, message sizes, and frame counts to match target ECU behavior and ensure stable diagnostics.
From reading/writing DIDs and memory, fault code interrogation, I/O control, to secure operations via Security Access, giving you end-to-end diagnostic and configuration control.
Easily retrieve calibration data or load updated parameters to ECUs, ideal for actuator calibration, sensor tuning, or variant configuration.
Pre-built client stack available as Windows DLL for .NET / desktop applications; also compatible with common diagnostic toolchains such as Vector and PEAK.
Use the client stack as a validation suite to verify conformance, error-handling (negative responses), security mechanisms, and full system diagnostics.
Abstracted handling of security keys for authenticated diagnostic or firmware-update access, for controlled and safe interactions with ECUs.

While the RAPIDSEA UDS stack is being supported for a plethora of MCUs and platforms, Embien can help port the same to unsupported customer platforms and targets. With support for both DoCAN and DoIP transport layers, we can help run the UDS stack over one or both interfaces in an optimized manner as per the target architecture.

While the RAPIDSEA UDS stack provides mechanisms to enable different services, it is important to seamlessly integrate the same to the underlying business logic. Whether it is the DTC management or reading/writing DIDs or performing routine control operations, Embien can help integrate your diagnostics feature logic seamlessly with our stack.

One of the major use cases of the UDS functionality is to perform firmware update on the target Engine Control Unit (ECU). Embien with its other offering of RAPIDSEA CAN bootloader and its proven expertise on performing firmware updates on numerous ECUs, can help customers quickly integrate this crucial feature for their devices.

With rich experience in diagnostics tools from leading vendors like Vector, Embien can help customers validate their UDS implementation against standards. We can also identify the functional and performance issues and sort them out and assist in bringing out the product quickly to the market in conformance to the specifications.

Apart from supporting the server functionality, our RAPIDSEA UDS stack also supports client or tester feature. Embien has leveraged this on Telematics Control Unit and Telematics Gateway Units to support remote firmware. The TCU/TGC downloads the latest update images over Wi-Fi/LTE etc. and can perform ECU updates one after another.

Having worked to enable cybersecurity features on various embedded devices and applications, Embien can help customers realize fool-proof security for their automotive ECUs. Right from supporting secure bootloader to protecting UDS data using its security mechanisms, we can prepare your ECUs to withstand against the next generation of cyberthreats.
Security and standards compliance are fundamental to RAPIDSEA’s UDS stack:
Contact sales to learn moreThis stack provides multiple-level, authenticated diagnostic access to protect critical operations.
Works with bootloaders that validate signed firmware (for example: RSA, other cryptographic schemes).
Embien provides UDS implementation validation (unit tests, integration tests, etc.), including negative response handling.
Written in MISRA-C, fully documented with High-Level and Low-Level design documents, & supported by detailed test reports.

Implement UDS services in ECUs (BMS, MCUs, instrument clusters, TCUs) for diagnostics, end-of-line calibration, and variant configuration.
Create high-performance diagnostic tools / testers for workshop or engineering environments, with support for all UDS services.
Use UDS services (Request Download, Transfer Data, Request Transfer Exit) to perform reliable and secure in-vehicle or in-factory firmware flashing.
With DoIP transport, run UDS in TCUs / gateways to enable OTA updates, remote fault reporting, and remote calibration.
Use Security Access (SID 0x27) to guard sensitive ECUs or operations.
If you are coder, we have a detailed list of APIs with example implementations, that can be readily integrated in your application. If you are not, it is even easier. Leverage our Flint System Configurator to configure and utilize the same.