We use cookies on this site to enhance your user experience. By using this site, you are giving your consent for us to set cookies.


Based on the public CVIM specification version 1.2.0 which is accessible from https://automat-project.eu/content/open-cvim-specification

Introduction

This page is an initial analysis made of the Common Vehicle Information Model (CVIM) specification in the context of the Cloud & Connected Services project.

The current specification edition is versioned as 1.2.0 which was released on 30.03.2018 under the Creative Commons Attribution 4.0 license. The funding was done by European Union’s Horizon 2020 research and innovation programme and the project group consisted of OEMs, suppliers, service providers and research institutes.

Scope and content

The AutoMat project is focused on Big Data and how to enable an open ecosystem driven by vehicle data. The project provides an end-to-end framework starting from data-capturing in the vehicle to data consumption by 3rd parties through marketplaces.

Data harmonisation is seen as a key factor for enabling AutoMat, therefore CVIM was developed to form a common understanding of data and information formats. CVIM is intended to be:

  • Brand-independent
  • Independent of data source (e.g. CAN, Ethernet)
  • Transparent
  • Easily expandable for specific needs
  • Handling both personalised and anonymous vehicle data


To enable this, the document holds a specification for three different layers that each have a JSON representation:

  • Signal: Primitive data structures within the vehicle that contain information, such as vehicle odometer reading, speed or VIN. Can be interpreted of data typically sent through the CAN-bus.
  • Measurement Channel: This layer describes how many signals was measured and in which frequency. It also can include GPS coordinates as meta information. A measurement channel encapsulates many signals.
  • Data Package: The data package is an overall container that encapsulates many measurement channels. It contains important meta information such as timestamps, data ownership, CVIM version and a cryptographic signature generated by the vehicle when putting together the package.


The output from a data capture is a JSON file that can be theoretically just a few kb up to gigabytes of data:


Data package example
{
    "data-package-id": "...",
    "cvim-version": "1.2.0",
    "type": "time-series",
    "measurement-channel-id": "9031",
    "timestamp-start": "2017-07-06T08:00:00.00Z",
    "timestamp-stop": "2017-07-06T08:00:09.00Z",
    "mileage-start": 100.00,
    "mileage-stop": 100.14,
    "geo-bounding-box": {
        "latitude-min": 51.497615,
        "latitude-max": 51.497688,
        "longitude-min": 7.451854,
        "longitude-max": 7.453866,
     }
    "number-of-samples": 4,
    "statistic-properties": {
        "min": 48.0,
        "max": 52.0,
        "average": 50.0
    }
    "data": [
        {"timestamp": "2017-07-06T08:00:00.00Z", "value": 50.0},
        {"timestamp": "2017-07-06T08:00:01.00Z", "value": 51.0},
        {"timestamp": "2017-07-06T08:00:01.95Z", "value": 52.0},
        {"timestamp": "2017-07-06T08:00:03.00Z", "value": 51.0}
    ] 
}


Out of scope

Although CVIM specifies the different primitive data types of signals, it does not provide a full data catalog of all possible (or an initial scope) of different data points that can be captured in the vehicle. It is stated that it is achievable to create such a data catalog based on the specification, but it is not part of the current specification. Hence there is no taxonomy tree of the data that can be generated by the vehicle and their relationships.

CVIM also does not define any minimum datasets that an OEM should deliver. That’s something that probably no specification will manage today.

Tools & serialization

A code repo for CVIM developers is provided on GitHub https://github.com/automat-project/SDK that implements the specification in the Swagger (Open API) format. Together with Swagger tools it’s possible to use this repo to generate both server and client side code for a REST interface. In order to test the API requests a marketplace reference implementation (also delivered within the AutoMat project) should be used.

Further steps

The next steps for CVIM and the AutoMat project in general not known at the moment.

Update Information from weekly call on August 5th: the AutoMat project was not continued since this paper was released.

  • No labels