Patent Description:
Performing diagnostics of a vehicle from a remote location is important in order to be able to establish an understanding at a central location of the condition and update requirements of certain components within a vehicle. This is order to make centralized decisions regarding maintenance, error fixes, software updates, etc., required by the vehicle. This is particularly useful in case of attempting to effectively manage a fleet of vehicles. Some examples of such vehicles may comprise heavy-duty vehicles, such as, trailers, semi-trailer vehicles, trucks for cargo transport, etc., and working machines, such as, e.g. excavators, fork lifts, loaders, haulers, etc..

In order to perform diagnostics of a vehicle and its components from a remote location, the remote vehicle diagnostics system needs to be able to remotely communicate with an on-board Controller Area Network, CAN, bus over a wireless connection. The CAN bus provides an on-board network connection to various components in the vehicle. According to one example, such a wireless connection may be set up by establishing a private link with the vehicle using a static IP address that is known, or can be predicted, by the remote vehicle diagnostics system. In other words, a private Access Point Name, APN, link over a wireless telecommunications network may be established, wherein the IP addresses are distributed by the remote vehicle diagnostics system or systems connected thereto. In this case, the system(s) may here also be queried by other systems or devices wishing to communicated with the system(s). However, while data may be obtained from the vehicle over the established private APN link using, e.g. event logging, vehicle data reports or data acquisition frameworks, this wireless connection does not permit data to be obtained by a remote vehicle diagnostics system which enables the remote vehicle diagnostics system to perform synchronous, i.e. real-time, vehicle diagnostics.

<CIT>describe a remote vehicle diagnostics system using statically configured IP over a private APN.

It is an object of embodiments herein to provide a remote vehicle diagnostics system and method therein, along with computer program products and a vehicle, for enabling synchronous remote vehicle diagnostics for a plurality of vehicles that seeks to mitigate, alleviate, or eliminate all or at least some of the above-discussed drawbacks of presently known solutions.

According to the invention, the object is achieved by a method performed by vehicle diagnostics system for enabling synchronous remote vehicle diagnostics for a plurality of vehicles. The method comprises obtaining information indicating that an application in the vehicle diagnostics system is requesting to perform synchronous remote vehicle diagnostics on a selected vehicle among the plurality of vehicles. The method also comprises determining, by using an Application Programming Interface, API, available to the vehicle diagnostics system, a logical network location of an on-board connectivity device, OCD, integrated in an on-board network of the selected vehicle. Further, the method comprise establishing, using the API, a logical network connection between the determined logical network location of the OCD and the logical network location of the vehicle diagnostics system over a wireless communications network.

By having a vehicle diagnostics system according to the above, a remote testing application in the vehicle diagnostics system is able to select a specific vehicle for which to perform synchronous vehicle diagnostics, whereby the APIs available to the vehicle diagnostics system in the logical network in which the vehicle diagnostics system operates may be used to establish a logical network connection towards an OCD in the selected vehicle over existing network interfaces of a wireless communications network. Thus, the remote testing application in the vehicle diagnostics system will be communicatively connected to the OCD in the vehicle and thus be able to perform synchronous, real-time remote vehicle diagnostics on the selected vehicle agnostically.

In some embodiments, the method may further comprise transmitting, to the OCD, information indicating that the vehicle diagnostics system is requesting to perform synchronous remote vehicle diagnostics on the vehicle over the established logical network connection. In this case, the method also comprise performing synchronous remote vehicle diagnostics of the selected vehicle via the established logical network connection based on synchronous data information from the OCD originating from on-board vehicle components via the on-board network of the selected vehicle. This means that synchronous real-time data obtained via a variety of different protocols of the on-board network comprising the CAN bus may be transferred agnostically over the established logical network connection and used by the remote testing application in the vehicle diagnostics system. Also, in the invention, the API is adapted to communicate with the OCD by using API libraries, available to the vehicle diagnostics system, capable of supporting network discovery.

In some embodiments, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to the same logical network, the determination of the logical network location and establishment of the logical network connection may be performed via an edge node in the wireless communications network, wherein the edge node is adapted to enable communication between separate logical network locations belonging to the same logical network. Thus, an edge node may advantageously facilitate the discovery of the network location of the OCD and bridge the logical network over the wireless communications network. This may, for example, be used in case the vehicle diagnostics system and the OCD are part of the same WiFi network.

Alternatively, according to some embodiments, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to separate logical networks, the determination of the logical network location and establishment of the logical network connection may be performed via a cloud server in or connected to a wireless communications network, wherein the cloud server is adapted to enable communications between the separate logical networks using virtual tunneling protocols. Thus, a cloud server may advantageously facilitate the discovery of the network location of the OCD and provide virtual tunnels between the vehicle diagnostics system and the OCD over the wireless communications network. This may, for example, be used in case the OCD is part of a remote logical network compared to vehicle diagnostics system, such as, in remote logical network of a wireless telecommunications network, e.g. a <NUM>/<NUM>/LTE/<NUM> telecommunications network.

According to a second aspect of embodiments herein, the object is achieved by a vehicle diagnostics system for enabling synchronous remote vehicle diagnostics for a plurality of vehicles. The vehicle diagnostics system is configured to obtain information indicating that an application in the vehicle diagnostics system is requesting to perform synchronous remote vehicle diagnostics on a selected vehicle among the plurality of vehicles. Also, the vehicle diagnostics system is configured to determine, by using an API, available to the vehicle diagnostics system, a logical network location of an OCD integrated in an on-board network of the selected vehicle. Further, the vehicle diagnostics system is configured to establish, using the API, a logical network connection between the determined logical network location of the OCD and the logical network location of the vehicle diagnostics system over a wireless communications network.

In some embodiments, the vehicle diagnostics system may further be configured to transmit, to the OCD, information indicating that the vehicle diagnostics system is requesting to perform synchronous remote vehicle diagnostics on the vehicle over the established logical network connection. In this case, the vehicle diagnostics system may also be configured to perform synchronous remote vehicle diagnostics of the selected vehicle via the established logical network connection based on synchronous data information from the OCD originating from on-board vehicle components via the on-board network of the selected vehicle. Also, in some embodiments, the API may be adapted to communicate with the OCD by using API libraries, available to the vehicle diagnostics system, capable of supporting network discovery.

In some embodiments, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to the same logical network, the vehicle diagnostics system may further be configured to determine the logical network location of the OCD and establish the logical network connection via an edge node in the wireless communications network, wherein the edge node is adapted to enable communication between separate logical network locations belonging to the same logical network. Alternatively, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to separate logical networks, the vehicle diagnostics system may further be configured to determine the logical network location of the OCD and establish the logical network connection via a cloud server in or connected to the wireless communications network, wherein the cloud server is adapted to enable communications between the separate logical networks using virtual tunneling protocols.

According to a third aspect of embodiments herein, the object is achieved by a method performed by an on-board connectivity device, OCD, for enabling synchronous remote vehicle diagnostics to be performed on a vehicle. Here, the OCD is integrated in an on-board network of the vehicle interfacing with on-board vehicle components. The method comprising establishing a logical network connection between the logical network location of the OCD in a wireless communications network and a logical network location of the vehicle diagnostics system. The method also comprises receiving information indicating that a vehicle diagnostics system is requesting to perform synchronous remote vehicle diagnostics on the vehicle over the established logical network connection. Further, the method comprise providing to the vehicle diagnostics system via the established logical network connection, synchronous data information from the on-board vehicle components obtained via the on-board network of the vehicle.

In some embodiments, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to the same logical network, the establishment of the logical network connection may further be performed via an edge node of the wireless communications network, wherein the edge node is adapted to enable communication between separate logical network locations belonging to the same logical network. Alternative, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to separate logical networks, the establishment of the logical network connection may further be performed via a cloud server in or connected to a wireless communications network, wherein the cloud server is adapted to enable communications between the separate logical networks using virtual tunneling protocols.

According to a fourth aspect of embodiments herein, the object is achieved by an n-board connectivity device, OCD, for enabling synchronous remote vehicle diagnostics to be performed on a vehicle. The OCD is integrated in an on-board network of the vehicle interfacing with on-board vehicle components. The OCD is configured to establish a logical network connection between the logical network location of the OCD in a wireless communications network and a logical network location of the vehicle diagnostics system in the wireless communications network. Also, the OCD is configured to receive information indicating that a vehicle diagnostics system is requesting to perform synchronous remote vehicle diagnostics on the vehicle over the established logical network connection. Further, the OCD is configured to provide, to the vehicle diagnostics system via the established logical network connection, synchronous data information from the on-board vehicle components obtained via the on-board network of the vehicle.

In some embodiments, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to the same logical network, the OCD may be configured to establish the logical network connection via an edge node of the wireless communications network, wherein the edge node is adapted to enable communication between separate logical network locations belonging to the same logical network. Alternatively, in case the logical network location of the vehicle diagnostics system and the logical network location of the OCD belongs to separate logical networks, the OCD may be configured to establish the logical network connection via a cloud server in or connected to a wireless communications network, wherein the cloud server is adapted to enable communications between the separate logical networks using virtual tunneling protocols.

According to a fifth aspect of the embodiments herein, the object is achieved by a computer program comprising instructions which, when executed in a processing circuitry, cause the processing circuitry to carry out the methods described above. According to a sixth aspect of the embodiments herein, the object is achieved by a carrier containing the computer program described above, wherein the carrier is one of an electronic signal, optical signal, radio signal, or computer-readable storage medium. According to a seventh aspect of the embodiments herein, the object is achieved by a vehicle comprising an OCD according to the embodiments described above.

It is to be understood that the present invention is limited by the scope of the appended claims.

<FIG> illustrates embodiments of a vehicle diagnostics system <NUM> and a plurality of vehicles 31a,. , 31x connected to a wireless communications network <NUM>.

The vehicle diagnostics system <NUM> may comprise one or more applications <NUM>. The one or more applications <NUM> may be one or more remote testing applications or programs being executed and running in the vehicle diagnostics system <NUM> capable of performing vehicle diagnostics based on data obtained from one or more on-board components of one or more vehicles among the plurality of vehicles 31a,. The vehicle diagnostics system <NUM> may also comprise a user interface (not shown) arrange to receive commands from a user of the one or more applications <NUM> in the vehicle diagnostics system <NUM>.

The vehicle diagnostics system <NUM> may be located in a first logical network <NUM> provided by a local Operating System Environment, OSE (not shown). The OSE may, for example, be an operating system operated and executed locally on a number of servers <NUM> which is capable of supporting the vehicle diagnostics system <NUM> with a computation environment in which the vehicle diagnostics system <NUM> may be execute and perform its operations, i.e. run the one of more applications <NUM>. In other words, this means that the vehicle diagnostics system <NUM> may be operated within the OSE. Also, this means that the vehicle diagnostics system <NUM> may be configured with at least one logical network location, such as, e.g. a TCP/IP address, in the first logical network <NUM>. The vehicle diagnostics system <NUM> may also be configured to use a number of network interfaces of the OSE for communication with the wireless communications network <NUM>. For this purpose, the vehicle diagnostics system <NUM> is also configured to use the Application Programming Interface, API, library available to it via the OSE. The API library of the OSE may comprise one or more APIs capable of interacting with the network interfaces of the OSE for communication over the wireless communications network <NUM>. The one or more APIs are also capable of supporting network discovery.

The wireless communications network <NUM> may, for example, comprise an edge node <NUM>, an access point <NUM>, and a cloud server <NUM>. Here, it should be noted that the edge node <NUM> and the access point <NUM> may be a single integrated communications node or separate entities depending on the implementation. The wireless communications network <NUM> may also be connected with and communicating over the Internet.

According to some embodiments, the wireless communications network <NUM> may comprise a remote WiFi network. In this case, the edge node <NUM> may configured to use the access point <NUM>, e.g. a WiFi access point, to communicate with wireless devices over the remote WiFi network. The edge node <NUM> is here capable of bridging a logical network, e.g. extend the first logical network <NUM> across the wireless communications network <NUM> to include a separated, but directly connected, logical network, such as, e.g. the second logical network <NUM> as described below according to some embodiments. In this example, the first logical network <NUM> and the second logical network <NUM> are part of the same logical network, although remotely connected. Optionally, according to some embodiments, the wireless communications network <NUM> may comprise a mobile or wireless telecommunications network. In this case, the access point <NUM> may be a radio base station. Hence, the access point <NUM> may be configured to communicate with wireless devices over the wireless telecommunications network. Here, the wireless communications network <NUM> may also comprise, or be in communications with, a cloud server <NUM>. The cloud server <NUM> may be configured to initiate and maintain VPN tunnels according to standard VPN tunneling protocols. This means that the cloud server <NUM> is capable of carrying network data traffic across the boundary of different logical networks, i.e. enable data communication between the first logical network <NUM> and a remote different logical network, such as, e.g. the second logical network <NUM> as described below according to some embodiments. In this example, the first logical network <NUM> and the second logical network <NUM> are not part of the same logical network, although remotely connected.

Each of the vehicles 31a,. , 31x in the plurality of vehicles comprise an on-board connectivity device, OCD 32a,. In some embodiments, the OCDs 32a,. , 32x, may be wireless devices arranged to communicate with the access point <NUM> in the wireless communications network <NUM>, e.g. over WiFi or via telecommunication. Each OCD 32a,. , 32x may also be integrated with the on-board local network of each vehicle 31a,. This means that the OCDs 32a,. , 32x may be configured to communicate with one or more of the on-board components of each vehicle 31a,. , 31x in a secure and trusted manner. The OCDs 32a,. , 32x may be integrated via an on-board Controller Area Network, CAN, bus. The CAN bus is a central part of the on-board local network of each vehicle 31a,. , 31x connecting, and capable of communicating with, one or more of the on-board components of each vehicle 31a,. Each of the OCDs 32a,. , 32x has been configured with a logical network location, such as, e.g. an TCP/IP address, in a second logical network <NUM>. Here, it should be noted that the second logical network <NUM> may be the same logical network as the first logical network <NUM>, e.g. in case of a WiFi network implementation, or may be a logical network that is different and remote from the first logical network <NUM>, e.g. in case of wireless telecommunications network implementation as described above.

According to some embodiments, the vehicle diagnostics system <NUM> and the OCDs 32a,. , 32x may be configured to establish a logical network connection <NUM> via the wireless communications network <NUM>. This may be performed as described below with reference to <FIG>.

As part of developing the embodiments described herein, it has been realized that there are numerous known solutions that allows for a remote vehicle diagnostics system to perform synchronous, real-time vehicle diagnostics towards a remote vehicle.

For example, the standard RP1210c has defined an API that allows an application to interface and communicate with a CAN bus on a vehicle. However, existing applications using the API of the standard RP1210c also have direct connectivity towards the vehicle in the form of a wired connection, such as, USB, Ethernet or PCie. Therefore, these applications does not share the same connectivity issues as described above for a remote testing application attempting to operate via a wireless communications network, such as, the internet or mobile network. Some examples also exists wherein local standard RP1210c adapters may be used in order to locally and directly connect a remote testing application to a CAN bus via WiFi. Also, here the direct communication link over WiFi does not share the same connectivity issues as described above for a remote testing application attempting to operate via a wireless communications network, such as, the internet or mobile network.

However, none of these known solutions addresses the problem of transporting synchronous, real-time data in accordance with a variety of different protocols agnostically between the vehicle and the remote vehicle diagnostics system over a wireless communications network, such as, the internet or mobile networks. Here, the term agnostically is meant to be used in the sense that the method or format of data transmission is irrelevant to the vehicle diagnostics system's function. In other words, the vehicle diagnostics system should be able to receive data in multiple formats or from multiple sources, and still process that data effectively. This is enabled by the embodiments described herein.

Examples of embodiments of a method performed by vehicle diagnostics system <NUM> for enabling synchronous remote vehicle diagnostics for a plurality of vehicles 31a,. , 31x, will now be described with reference to the flowchart depicted in <FIG> is an illustrated example of actions, steps or operations which may be performed by the vehicle diagnostics system <NUM> as described above with reference to <FIG>. The method may comprise the following actions, steps or operations.

Action <NUM>. The control unit <NUM> obtains information indicating that an application <NUM> in the vehicle diagnostics system <NUM> is requesting to perform synchronous remote vehicle diagnostics on a selected vehicle 31a among the plurality of vehicles 31a,. This means that the application <NUM>, or a user of the application <NUM>, may request the vehicle diagnostics system <NUM> to perform synchronous remote vehicle diagnostics on a specific vehicle among the plurality of vehicles 31a,. Thus, the vehicle diagnostics system <NUM> may receive a request to perform synchronous remote vehicle diagnostics on a selected vehicle 31a via the application <NUM>.

Action <NUM>. After obtaining the information in Action <NUM>, the vehicle diagnostics system <NUM> determines, by using an Application Programming Interface, API, available to the vehicle diagnostics system <NUM>, a logical network location of an on-board connectivity device, OCD 32a, integrated in an on-board network of the selected vehicle 31a. This means that the vehicle diagnostics system <NUM> may advantageously use the API library of the OSE in which the vehicle diagnostics system <NUM> is operating to discover a logical network location, e.g. a TCP/IP address, of the OCD 32a in the selected vehicle 31a over a wireless communications network <NUM>. In some embodiments, the API may be adapted to communicate with the OCD 32a by using API libraries available to the vehicle diagnostics system <NUM> capable of supporting network discovery. In other words, the API library may be used to interact with the network interfaces available to the vehicle diagnostics system <NUM> in the OSE to determine logical network location of the OCD 32a, i.e. perform discovery of the logical network location of the OCD 32a.

In some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD 32a belongs to the same logical network <NUM>, <NUM>, the vehicle diagnostics system <NUM> may determine the logical network location of the OCD 32a and establish the logical network connection <NUM> via an edge node <NUM> in the wireless communications network <NUM>, wherein the edge node <NUM> is adapted to enable communication between separate logical network locations belonging to the same logical network. For example, the vehicle diagnostics system <NUM> may, in this cases when the one or more APIs and the OCD 32a is located on the same logical network, use the one or more APIs to perform the discovery of the logical network location of the OCDs 32a via the edge node <NUM>. In some embodiments, this may be performed by broadcasting to all client and hosts contactable on the logical network. Alternatively, a multicast transmission to a subset of client and hosts subscribing to certain network groups may be performed. Another option is to perform a unicast transmission to a specific client or host, wherein the specific client or host is responsible for receiving notifications or registrations for the selected vehicle 31a as a whole, or certain processes or system in the selected vehicle 31a. It should be noted that multicast or broadcast transmissions are unable to, on their own, transit the boundary between the logical network locations in the same logical network. This is facilitated by the edge node <NUM>, i.e. the multicast or broadcast discovery transmissions and responses may be received by the edge node <NUM> and then communicated to the OCD 31a and the one or more APIs used by the vehicle diagnostics system <NUM>, respectively. This may, for example, be performed by using a network protocol, such as, e.g. a Representational State Transfer, REST, protocol.

Optionally, according to some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD 32a belongs to separate logical networks <NUM>, <NUM>, the vehicle diagnostics system <NUM> may determine the logical network location of the OCD 32a and establish the logical network connection <NUM> via a cloud server <NUM> in or connected to a wireless communications network <NUM>, wherein the cloud server <NUM> is adapted to enable communications between the separate logical networks using virtual tunneling protocols. For example, the vehicle diagnostics system <NUM> may, in this cases when the one or more APIs and the OCD 32a is located on completely separate logical networks, use the one or more APIs to perform the discovery of the logical network location of the OCDs 32a via the cloud server <NUM>. The cloud server <NUM> may here initiate and maintain a tunnel, such as, e.g. a Virtual Private Network, VPN, tunnel, towards the OCD 32a, e.g. via a Virtual Delivery Agent, VDA, running in the OCD 32a. This means that the vehicle diagnostics system <NUM> may use the cloud server <NUM> to carry network data traffic across the logical network boundary between the separate logical networks, i.e. the first logical network <NUM> and the second logical network <NUM>. Here, the vehicle diagnostics system <NUM> may use the one or more APIs to request the cloud server <NUM> to create and maintain the tunnel towards the OCD 32a, and e.g. a specific VDA therein, on behalf of the application <NUM> running in the vehicle diagnostics system <NUM>.

Here, it may also be noted that any communication between the vehicle diagnostics system <NUM> and the OCD 32a, such as, e.g. discovery messages, notifications or registrations, may preferably be made in a format that is secure. For example, by using an authentication and integrity protection mechanism according to Domain Name System Security Extensions, DNSSEC. According to another example, this may be made by transmitting the discovery messages, notifications or registrations over a Transport Layer Security, TLS, tunnel or an Internet Protocol Security, IPSEC, tunnel. Optionally, the discovery messages, notifications or registrations may also comprise within itself, or trigger, an authentication method, such as, an Open Authorization, OAUTH, protocol.

Action <NUM>. After the determination in Action <NUM>, the vehicle diagnostics system <NUM> establishes, using the API, a logical network connection <NUM> between the determined logical network location of the OCD 32a and the logical network location of the vehicle diagnostics system <NUM> over a wireless communications network <NUM>. This advantageously enables the vehicle diagnostics system <NUM> to perform synchronous remote vehicle diagnostics of the selected vehicle 31a based on synchronous data information from the OCD 32a originating from on-board vehicle components 33a,. , 33x via the on-board network of the selected vehicle 31a.

Action <NUM>. Optionally, after the establishment of the logical network connection <NUM>, the vehicle diagnostics system <NUM> may transmit information indicating that the vehicle diagnostics system <NUM> is requesting to perform synchronous remote vehicle diagnostics on the vehicle 31a over the established logical network connection <NUM>. This may, for example, be performed in response to obtains information indicating that an application <NUM> in the vehicle diagnostics system <NUM> is requesting to perform synchronous remote vehicle diagnostics on a selected vehicle 31a among the plurality of vehicles 31a,. , 31x in Action <NUM>.

Action <NUM>. After transmitting the information in Action <NUM>, the vehicle diagnostics system <NUM> may perform synchronous remote vehicle diagnostics of the selected vehicle 31a via the established logical network connection <NUM> based on synchronous data information from the OCD 32a originating from on-board vehicle components 33a,. , 33x via the on-board network of the selected vehicle 31a. This means that the vehicle diagnostics system <NUM> may receive synchronous data information from on-board vehicle components 33a,. , 33x of the selected vehicle 31a via the OCD 32a, and perform synchronous remote vehicle diagnostics based thereon.

Examples of embodiments of a method performed by an on-board connectivity device, OCD 32a, for enabling synchronous remote vehicle diagnostics to be performed on a vehicle 31a, wherein the OCD 32a is integrated in an on-board network of the vehicle 31a interfacing with on-board vehicle components 33a,. , 33x, will now be described with reference to the flowchart depicted in <FIG> is an illustrated example of actions, steps or operations which may be performed by the OCD 32a as described above with reference to <FIG>. The method may comprise the following actions, steps or operations.

Action <NUM>. The OCD 32a establishes a logical network connection <NUM> between the logical network location of the OCD 32a in a wireless communications network <NUM> and a logical network location of the vehicle diagnostics system <NUM>. This may be performed by the OCD 32a mutually in cooperation with the vehicle diagnostics system <NUM> in Action <NUM>, e.g. by exchanging messages for setting up the logical network connection <NUM>. In some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD 32a belongs to the same logical network <NUM>, <NUM>, the OCD 32a may establish the logical network connection <NUM> via an edge node <NUM> of the wireless communications network <NUM>, wherein the edge node <NUM> is adapted to enable communication between separate logical network locations belonging to the same logical network. Optionally, in some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD (32a) belongs to separate logical networks <NUM>, <NUM>, the OCD 32a may establish the logical network connection <NUM> via a cloud server <NUM> in or connected to a wireless communications network <NUM>, wherein the cloud server <NUM> is adapted to enable communications between the separate logical networks using virtual tunneling protocols.

Action <NUM>. After the establishment of the logical network connection <NUM>, the OCD 32a receives information indicating that a vehicle diagnostics system <NUM> is requesting to perform synchronous remote vehicle diagnostics on the vehicle 31a over the established logical network connection <NUM>. This may, for example, be a request originating from the application <NUM> in the vehicle diagnostics system <NUM> indicating the that application <NUM>, or user thereof, is requesting to perform synchronous remote vehicle diagnostics on the vehicle 31a, and therefore require the OCD 32a to provide synchronous data information from on-board vehicle components 33a,. , 33x of the vehicle 31a.

Action <NUM>. After the receiving the information in Action <NUM>, the OCD 32a provides, to the vehicle diagnostics system <NUM> via the established logical network connection <NUM>, synchronous data information from the on-board vehicle components 33a,. , 33x obtained via the on-board network of the vehicle 31a. This enables the application <NUM> in the vehicle diagnostics system <NUM> to perform synchronous remote vehicle diagnostics on the vehicle 31a.

To perform the method actions for enabling synchronous remote vehicle diagnostics for a plurality of vehicles 31a,. , 31x, the vehicle diagnostics system <NUM> may comprise the following arrangement depicted in <FIG> shows a schematic block diagram of embodiments of the vehicle diagnostics system <NUM>. It should also be noted that, although not shown in <FIG>, known conventional features for operating a vehicle diagnostics system <NUM>, such as, for example, a connection to a power source, e.g. a battery or the mains, may be assumed to be comprised in the vehicle diagnostics system <NUM>, but is not shown or described in any further detail in regards to <FIG>.

The vehicle diagnostics system <NUM> may comprise processing circuitry <NUM> and a memory <NUM>. It should also be noted that some or all of the functionality described in the embodiments above as being performed by the vehicle diagnostics system <NUM> may be provided by the processing circuitry <NUM> executing instructions stored on a computer-readable medium, such as, e.g. the memory <NUM> shown in <FIG>. Alternative embodiments of the vehicle diagnostics system <NUM> may comprise additional components, such as, for example, an obtaining module <NUM>, a determining module <NUM>, an establishing module <NUM>, a transmitting module <NUM>, and a performing module <NUM>, whereby each module may be configured and responsible for providing its dedicated functionality to support the embodiments described herein. Here, it should be noted that the obtaining module <NUM> and the transmitting module <NUM> may form part of the same I/O module or transceiver for receiving and transmitting network data information over a logical network.

The vehicle diagnostics system <NUM> or processing circuitry <NUM> is configured to, or may comprise the obtaining module <NUM> being configured to, obtain information indicating that an application <NUM> in the vehicle diagnostics system <NUM> is requesting to perform synchronous remote vehicle diagnostics on a selected vehicle 31a among the plurality of vehicles 31a,. Also, the vehicle diagnostics system <NUM> or processing circuitry <NUM> is configured to, or may comprise the determining module <NUM> being configured to, determine, by using an Application Programming Interface, API, available to the vehicle diagnostics system <NUM>, a logical network location of an on-board connectivity device, OCD 32a, integrated in an on-board network of the selected vehicle 31a. Further, the vehicle diagnostics system <NUM> or processing circuitry <NUM> is configured to, or may comprise the establishing module <NUM> being configured to, establish, using the API, a logical network connection <NUM> between the determined logical network location of the OCD 32a and the logical network location of the vehicle diagnostics system <NUM> over a wireless communications network <NUM>.

In some embodiments, the vehicle diagnostics system <NUM> or processing circuitry <NUM> may be configured to, or may comprise the transmitting module <NUM> being configured to, transmit, to the OCD 32a, information indicating that the vehicle diagnostics system <NUM> is requesting to perform synchronous remote vehicle diagnostics on the vehicle 31a over the established logical network connection <NUM>. Here, the vehicle diagnostics system <NUM> or processing circuitry <NUM> may also be configured to, or may comprise the performing module <NUM> being configured to, perform synchronous remote vehicle diagnostics of the selected vehicle 31a via the established logical network connection <NUM> based on synchronous data information from the OCD 32a originating from on-board vehicle components 33a,. , 33x via the on-board network of the selected vehicle 31a. Also, in the invention, the API is adapted to communicate with the OCD 32a by using API libraries available to the vehicle diagnostics system <NUM> capable of supporting network discovery.

Further, in some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD 32a belongs to the same logical network <NUM>, <NUM>, the vehicle diagnostics system <NUM> or processing circuitry <NUM> may be further configured to, or may comprise the determining module <NUM> being further configured to, determine the logical network location of the OCD 32a via an edge node <NUM> in the wireless communications network <NUM>, wherein the edge node <NUM> is adapted to enable communication between separate logical network locations belonging to the same logical network. Here, the vehicle diagnostics system <NUM> or processing circuitry <NUM> may also be further configured to, or may comprise the establishing module <NUM> being further configured to, establish the logical network connection <NUM> via the edge node <NUM> in the wireless communications network <NUM>.

Optionally, in some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD 32a belongs to separate logical networks <NUM>, <NUM>, the vehicle diagnostics system <NUM> or processing circuitry <NUM> may be further configured to, or may comprise the determining module <NUM> being further configured to, determine the logical network location of the OCD 32a via a cloud server <NUM> in or connected to the wireless communications network <NUM>, wherein the cloud server <NUM> is adapted to enable communications between the separate logical networks using virtual tunneling protocols. Here, the vehicle diagnostics system <NUM> or processing circuitry <NUM> may also be further configured to, or may comprise the establishing module <NUM> being further configured to, establish the logical network connection <NUM> via the cloud server <NUM> in or connected to the wireless communications network <NUM>.

Furthermore, the embodiments for enabling synchronous remote vehicle diagnostics for a plurality of vehicles 31a,. , 31x described above may be at least partly implemented through one or more processors, such as, the processing circuitry <NUM> in the vehicle diagnostics system <NUM> depicted in <FIG>, together with computer program code for performing the functions and actions of the embodiments herein. The program code mentioned above may also be provided as a computer program product, for instance in the form of a data carrier carrying computer program code or code means for performing the embodiments herein when being loaded into the processing circuitry <NUM> in the vehicle diagnostics system <NUM>. The data carrier, or computer readable medium, may be one of an electronic signal, optical signal, radio signal or computer-readable storage medium. The computer program code may e.g. be provided as pure program code in the vehicle diagnostics system <NUM> or on a server and downloaded to the vehicle diagnostics system <NUM>. Thus, it should be noted that the functions of the vehicle diagnostics system <NUM> may in some embodiments be implemented as computer programs stored in memory <NUM> in <FIG>, e.g. a computer readable storage unit, for execution by processors or processing modules, e.g. the processing circuitry <NUM> in the vehicle diagnostics system <NUM> of <FIG>.

Those skilled in the art will also appreciate that the processing circuitry <NUM> and the memory <NUM> described above may refer to a combination of analog and digital circuits, and/or one or more processors configured with software and/or firmware, e.g. stored in a memory, that when executed by the one or more processors such as the processing circuitry <NUM> perform as described above. One or more of these processors, as well as the other digital hardware, may be included in a single application-specific integrated circuit (ASIC), or several processors and various digital hardware may be distributed among several separate components, whether individually packaged or assembled into a system-on-a-chip (SoC).

To perform the method actions for enabling synchronous remote vehicle diagnostics to be performed on a vehicle 31a, the OCD 32a may comprise the following arrangement depicted in <FIG>. Here, the OCD 32a is integrated in an on-board network of the vehicle 31a interfacing with the on-board vehicle components 33a,. , 33x, e.g. via an I/O module <NUM>. The I/O module <NUM> may be connected to or be integrated with the CAN bus on-board the vehicle 31a. <FIG> shows a schematic block diagram of embodiments of the OCD 32a. It should also be noted that, although not shown in <FIG>, known conventional features for operating the OCD 32a, such as, for example, a connection to a power source, e.g. a battery or other on-board power source, may be assumed to be comprised in the OCD 32a, but is not shown or described in any further detail in regards to <FIG>.

The OCD 32a may comprise processing circuitry <NUM> and a memory <NUM>. It should also be noted that some or all of the functionality described in the embodiments above as being performed by the OCD 32a may be provided by the processing circuitry <NUM> executing instructions stored on a computer-readable medium, such as, e.g. the memory <NUM> shown in <FIG>. Alternative embodiments of the OCD 32a may comprise additional components, such as, for example, an establishing module <NUM>, a receiving module <NUM>, and a providing module <NUM>, whereby each module may be configured and responsible for providing its dedicated functionality to support the embodiments described herein.

The OCD 32a or processing circuitry <NUM> is configured to, or may comprise the establishing module <NUM> being configured to, obtain establish a logical network connection <NUM> between the logical network location of the OCD 32a in a wireless communications network <NUM> and a logical network location of the vehicle diagnostics system <NUM> in the wireless communications network <NUM>. Also, the OCD 32a or processing circuitry <NUM> is configured to, or may comprise the receiving module <NUM> being configured to, receive information indicating that a vehicle diagnostics system <NUM> is requesting to perform synchronous remote vehicle diagnostics on the vehicle 31a over the established logical network connection <NUM>. Further, the OCD 32a or processing circuitry <NUM> is configured to, or may comprise the providing module <NUM> being configured to, provide, to the vehicle diagnostics system <NUM> via the established logical network connection <NUM>, synchronous data information from the on-board vehicle components 33a,. , 33x obtained via the on-board network of the vehicle 31a.

In some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD 32a belongs to the same logical network <NUM>, <NUM>, the OCD 32a or processing circuitry <NUM> may be configured to, or may comprise the establishing module <NUM> being configured to, establish the logical network connection <NUM> via an edge node <NUM> of the wireless communications network <NUM>, wherein the edge node <NUM> is adapted to enable communication between separate logical network locations belonging to the same logical network. Optionally, in some embodiments, in case the logical network location of the vehicle diagnostics system <NUM> and the logical network location of the OCD 32a belongs to separate logical networks <NUM>, <NUM>, the OCD 32a or processing circuitry <NUM> may be configured to, or may comprise the establishing module <NUM> being configured to, establish the logical network connection <NUM> via a cloud server <NUM> in or connected to a wireless communications network <NUM>, wherein the cloud server <NUM> is adapted to enable communications between the separate logical networks using virtual tunneling protocols.

Furthermore, the embodiments for enabling synchronous remote vehicle diagnostics to be performed on a vehicle 31a described above may be at least partly implemented through one or more processors, such as, the processing circuitry <NUM> in the OCD 32a depicted in <FIG>, together with computer program code for performing the functions and actions of the embodiments herein. The program code mentioned above may also be provided as a computer program product, for instance in the form of a data carrier carrying computer program code or code means for performing the embodiments herein when being loaded into the processing circuitry <NUM> in the OCD 32a. The data carrier, or computer readable medium, may be one of an electronic signal, optical signal, radio signal or computer-readable storage medium. The computer program code may e.g. be provided as pure program code in the OCD 32a or on a server and downloaded to the OCD 32a. Thus, it should be noted that the functions of the OCD 32a may in some embodiments be implemented as computer programs stored in memory <NUM> in <FIG>, e.g. a computer readable storage unit, for execution by processors or processing modules, e.g. the processing circuitry <NUM> in the OCD 32a of <FIG>.

Claim 1:
A method performed by vehicle diagnostics system (<NUM>) for enabling synchronous remote vehicle diagnostics for a plurality of vehicles (31a, ..., 31x), the method comprising
obtaining (<NUM>) information indicating that an application (<NUM>) in the vehicle diagnostics system (<NUM>) is requesting to perform synchronous remote vehicle diagnostics on a selected vehicle (31a) among the plurality of vehicles (31a, ..., 31x);
the method being characterized in that
determining (<NUM>) a logical network location of an on-board connectivity device (32a), integrated in an on-board network of the selected vehicle (31a), wherein the logical network location is determined by using an Application Programming Interface, available to the vehicle diagnostics system (<NUM>) and
wherein the Application Programming interface is adapted to communicate with the on-board connectivity device (32a) by using Application Programming interface libraries available to the vehicle diagnostics system (<NUM>) capable of supporting network discovery; and
establishing (<NUM>), using the Application Programming Interface, a logical network connection (<NUM>) between the determined logical network location of the on-board connectivity device (32a) and the logical network location of the vehicle diagnostics system (<NUM>) over a wireless communications network (<NUM>).