{"id":5044,"date":"2026-07-30T15:30:43","date_gmt":"2026-07-30T13:30:43","guid":{"rendered":"https:\/\/w3.ime-actia.de\/vehicle-diagnostics\/d-server\/"},"modified":"2026-08-10T13:15:22","modified_gmt":"2026-08-10T11:15:22","slug":"d-server","status":"publish","type":"page","link":"https:\/\/www.ime-actia.de\/en\/vehicle-diagnostics\/d-server\/","title":{"rendered":"D-Server"},"content":{"rendered":"\n<div class=\"wp-block-essential-blocks-button root-eb-button-qyls3\"><div class=\"eb-parent-wrapper eb-parent-eb-button-qyls3 \"><div class=\"eb-button-wrapper eb-button-alignment eb-button-qyls3\"><div class=\"eb-button\"><div class=\"eb-button-inner-wrapper \"><a class=\"eb-button-anchor \" href=\"https:\/\/www.ime-actia.de\/en\/vehicle-diagnostics\/\" rel=\"noopener\"><i icon=\"fas fa-arrow-left\" class=\"fas fa-arrow-left eb-button-icon eb-button-icon-left hvr-icon\"><\/i>Back to Vehicle Diagnostics<\/a><\/div><\/div><\/div><\/div><\/div>\n\n<h2 class=\"wp-block-heading\" style=\"margin-top:var(--wp--preset--spacing--60)\">D-Server &#8211; ISO 22900-3<\/h2>\n\n<p class=\"wp-block-paragraph\">The introduction of ISO 22900-3 (ASAM MCD-3 D) was intended to define a universal programming interface for vehicle diagnostics across various applications. Vehicle diagnostics include, among other things, the following tasks:  <\/p>\n\n<ul class=\"wp-block-list\">\n<li>Reading the emissions-related data, <\/li>\n\n\n\n<li>Analysis of the error memory of individual control units, <\/li>\n\n\n\n<li>Configuration and calibration of control units, <\/li>\n\n\n\n<li>Software Update.<\/li>\n<\/ul>\n\n<p class=\"wp-block-paragraph\">In the early days of vehicle diagnostics (late 1980s to mid-1990s), all of these scenarios were implemented using OEM-specific methods. As part of the standardization process, two key areas were standardized first: vehicle description (data base) and data transport (transport or protocol layer).  <\/p>\n\n<ul class=\"wp-block-list\">\n<li>The vehicle description has been standardized in ISO 22901-1 (ASAM MCD-2 D) using the newly introduced ODX format.<\/li>\n\n\n\n<li>Access to the protocol layer via a universal API has been standardized in ISO 22900-2.<\/li>\n<\/ul>\n\n<p class=\"wp-block-paragraph\">The interface between the vehicle description and the transport layer is the D-server (also known as the MVCI server or MVCI kernel) introduced in ISO 22900-3.<\/p>\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"754\" height=\"447\" src=\"https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/07\/image-14.png\" alt=\"D-server, diagram, visual representation\" class=\"wp-image-4676\" style=\"width:571px;height:auto\" srcset=\"https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/07\/image-14.png 754w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/07\/image-14-300x178.png 300w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/07\/image-14-600x356.png 600w\" sizes=\"auto, (max-width: 754px) 100vw, 754px\" \/><figcaption class=\"wp-element-caption\"><em>D-Server<\/em><\/figcaption><\/figure>\n\n<p class=\"wp-block-paragraph\">The following diagram shows the simplified process by which an application can use the D-server to run a diagnostic service.<\/p>\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"887\" height=\"2560\" src=\"https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-scaled.png\" alt=\"Simplified Sequence for Running a Diagnostic Service Using the D-Server\" class=\"wp-image-4883\" style=\"aspect-ratio:0.34668154292690423;width:842px;height:auto\" srcset=\"https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-scaled.png 887w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-104x300.png 104w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-355x1024.png 355w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-768x2216.png 768w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-532x1536.png 532w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-710x2048.png 710w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2026\/08\/D-Server-600x1731.png 600w\" sizes=\"auto, (max-width: 887px) 100vw, 887px\" \/><figcaption class=\"wp-element-caption\"><em>Simplified Sequence for Running a Diagnostic Service Using the D-Server<br\/><\/em><\/figcaption><\/figure>\n\n<p class=\"wp-block-paragraph\">Access to the individual elements (vehicle types, control units, diagnostic services, and their parameters) is provided via the names of these elements as defined in the ODX specification. The application can access the individual request\/response parameters directly. These are available not only as raw data but also as appropriately converted physical values, including units. The D-server performs the conversion based on the ODX data. A D-server can also be used to search and display ODX data without active communication with a vehicle. D-server objects are thus broadly divided into two groups: database objects and runtime objects.     <\/p>\n\n<p class=\"wp-block-paragraph\">Database objects are created from the ODX data and serve as templates. Runtime objects are created from the corresponding database templates, usually only when a connection to the D-PDU API exists. These objects are required for active communication with the control units.  <\/p>\n\n<h3 class=\"wp-block-heading\">Features<\/h3>\n\n<ul class=\"wp-block-list\">\n<li>Symbolic Access<\/li>\n\n\n\n<li>Supports automatic ECU variant detection and selection<\/li>\n\n\n\n<li>Auxiliary Classes for ECU Variant Coding<\/li>\n\n\n\n<li>Auxiliary Classes for flashing ECUs (software update)<\/li>\n\n\n\n<li>Reloadability of Flash Data and ECU Configuration Data<\/li>\n\n\n\n<li>Runtime system for executing complex processes\/jobs (see below)<\/li>\n\n\n\n<li>Simultaneous Use of Multiple VCIs<\/li>\n\n\n\n<li>Parallel Communication with Multiple ECUs via a VCI<\/li>\n\n\n\n<li>Synchronous, asynchronous, cyclic, and repetitive diagnostic service execution<\/li>\n\n\n\n<li>Events<\/li>\n\n\n\n<li>Object-Oriented Programming Interface<\/li>\n\n\n\n<li>Error Handling by Intercepting Exceptions<\/li>\n<\/ul>\n\n<p class=\"wp-block-paragraph\">In addition to the simple diagnostic services that can be mapped using a D-PDU API ComPrimitive, a D-Server offers the ability to group complex processes\u2014such as flashing\u2014into a so-called job. Most implementations allow users to describe such complex diagnostic processes in Java using the D-Server JNI. This approach is specified in ISO 22900-3. In this context, a D-server can use a Java Virtual Machine at runtime to interpret the Java jobs.   <\/p>\n\n<p class=\"wp-block-paragraph\">ISO 22900-3 (ASAM MCD-3 D) defines an object-oriented programming interface for vehicle diagnostics. The definition of the programming interface is vendor-neutral, so it can be implemented in any object-oriented programming language. It is typically implemented in Java and C++.  <\/p>\n\n<div class=\"wp-block-cover alignfull cta-footer\" style=\"margin-top:var(--wp--preset--spacing--80);margin-bottom:0;min-height:430px;aspect-ratio:unset;\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-ast-global-color-5-background-color has-background-dim-100 has-background-dim\"><\/span><div class=\"wp-block-cover__inner-container is-layout-constrained wp-container-core-cover-is-layout-15ae893d wp-block-cover-is-layout-constrained\">\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-2c464be3 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:300px\">\n<figure class=\"wp-block-image aligncenter size-full has-custom-border\"><img loading=\"lazy\" decoding=\"async\" width=\"2000\" height=\"437\" src=\"https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB.png\" alt=\"ACTIA logo\" class=\"wp-image-11\" style=\"border-radius:0px;box-shadow:none;object-fit:cover\" srcset=\"https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB.png 2000w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB-300x66.png 300w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB-1024x224.png 1024w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB-768x168.png 768w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB-1536x336.png 1536w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB-600x131.png 600w, https:\/\/www.ime-actia.de\/wp-content\/uploads\/2025\/11\/cropped-ACTIA_QUADRI_RVB-109x24.png 109w\" sizes=\"auto, (max-width: 2000px) 100vw, 2000px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\n<h2 class=\"wp-block-heading has-ast-global-color-2-color has-text-color has-link-color wp-elements-1\">Do you have any questions about our products or services?<\/h2>\n\n\n\n<p class=\"has-ast-global-color-3-color has-text-color has-link-color wp-elements-2 wp-block-paragraph\"><strong>We are here for you! Send us your inquiry using the contact form \u2013 our team will get back to you as soon as possible. <\/strong><\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.ime-actia.de\/en\/contact\/\">Contact us<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>D-Server &#8211; ISO 22900-3 The introduction of ISO 22900-3 (ASAM MCD-3 D) was intended to define a universal programming interface [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":5042,"parent":2227,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_eb_attr":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-5044","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/pages\/5044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/comments?post=5044"}],"version-history":[{"count":1,"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/pages\/5044\/revisions"}],"predecessor-version":[{"id":5047,"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/pages\/5044\/revisions\/5047"}],"up":[{"embeddable":true,"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/pages\/2227"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/media\/5042"}],"wp:attachment":[{"href":"https:\/\/www.ime-actia.de\/en\/wp-json\/wp\/v2\/media?parent=5044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}