# Copyright (c) 2016 Contributors to COVESA # # This program and the accompanying materials are made available under the # terms of the Mozilla Public License 2.0 which is available at # https://www.mozilla.org/en-US/MPL/2.0/ # # SPDX-License-Identifier: MPL-2.0 # # Highlevel vehicle signals and attributes. # # # VSS Versioning information # VersionVSS: type: branch description: Supported Version of VSS. VersionVSS.Major: datatype: uint32 type: attribute default: 7 description: Supported Version of VSS - Major version. VersionVSS.Minor: datatype: uint32 type: attribute default: 0 description: Supported Version of VSS - Minor version. VersionVSS.Patch: datatype: uint32 type: attribute default: 0 description: Supported Version of VSS - Patch version. VersionVSS.Label: datatype: string type: attribute default: 'dev' description: Label to further describe the version. comment: COVESA VSS project typically use dev for latest master, and empty string for released versions. # # Vehicle identification attributes. # VehicleIdentification: type: branch description: Attributes that identify a vehicle. VehicleIdentification.VIN: datatype: string type: attribute description: 17-character Vehicle Identification Number (VIN) as defined by ISO 3779. pattern: ^([0-9A-HJ-NPR-Z]{3})([0-9A-HJ-NPR-Z]{6})([0-9A-HJ-NPR-Z]{4}[0-9]{4})$ VehicleIdentification.WMI: datatype: string type: attribute description: 3-character World Manufacturer Identification (WMI) as defined by ISO 3780. VehicleIdentification.Brand: datatype: string type: attribute description: Vehicle brand or manufacturer. VehicleIdentification.Model: datatype: string type: attribute description: Vehicle model. VehicleIdentification.Year: datatype: uint16 type: attribute description: Model year of the vehicle. # # Imports from https://schema.org/Car # Names from https://schema.org/Car reused, but first character capitalized # Example: Original schema.org name: https://schema.org/acrissCode # Name used in VSS: VehicleIdentification.AcrissCode # Note: Only a subset of the properties from https://schema.org/Car have been imported. VehicleIdentification.AcrissCode: datatype: string type: attribute description: The ACRISS Car Classification Code is a code used by many car rental companies. VehicleIdentification.BodyType: datatype: string type: attribute description: Indicates the design and body style of the vehicle (e.g. station wagon, hatchback, etc.). VehicleIdentification.DateVehicleFirstRegistered: datatype: string type: attribute unit: iso8601 description: The date in ISO 8601 format of the first registration of the vehicle with the respective public authorities. VehicleIdentification.LicensePlate: datatype: string type: attribute description: The license plate of the vehicle. comment: Depending on the context, this attribute might not be up to date or might be misconfigured, and therefore should be considered untrustworthy in the absence of another method of verification. VehicleIdentification.MeetsEmissionStandard: datatype: string type: attribute description: Indicates that the vehicle meets the respective emission standard. VehicleIdentification.ProductionDate: datatype: string type: attribute unit: iso8601 description: The date in ISO 8601 format of production of the item, e.g. vehicle. VehicleIdentification.PurchaseDate: datatype: string type: attribute unit: iso8601 description: The date in ISO 8601 format of the item e.g. vehicle was purchased by the current owner. VehicleIdentification.VehicleModelDate: datatype: string type: attribute unit: iso8601 description: The release date in ISO 8601 format of a vehicle model (often used to differentiate versions of the same make and model). VehicleIdentification.VehicleConfiguration: datatype: string type: attribute description: A short text indicating the configuration of the vehicle, e.g. '5dr hatchback ST 2.5 MT 225 hp' or 'limited edition'. VehicleIdentification.VehicleSeatingCapacity: datatype: uint16 type: attribute description: The number of passengers that can be seated in the vehicle, both in terms of the physical space available, and in terms of limitations set by law. VehicleIdentification.VehicleSpecialUsage: datatype: string type: attribute description: Indicates whether the vehicle has been used for special purposes, like commercial rental, driving school. VehicleIdentification.VehicleExteriorColor: datatype: string type: attribute description: The main color of the exterior within the basic color palette (eg. red, blue, black, white, ...). VehicleIdentification.VehicleInteriorColor: datatype: string type: attribute description: The color or color combination of the interior of the vehicle. VehicleIdentification.VehicleInteriorType: datatype: string type: attribute description: The type or material of the interior of the vehicle (e.g. synthetic fabric, leather, wood, etc.). VehicleIdentification.KnownVehicleDamages: datatype: string type: attribute description: A textual description of known damages, both repaired and unrepaired. VehicleIdentification.OptionalExtras: datatype: string[] type: attribute description: Optional extras refers to all car equipment options that are not installed as standard by the manufacturer. comment: Allowed values are not standardized, each OEM can specify detail descriptions of array elements. # # Vehicle signals # LowVoltageSystemState: datatype: string type: sensor allowed: [ 'UNDEFINED', # State of low voltage system not known 'LOCK', # Low voltage system off, steering lock or equivalent engaged 'OFF', # Low voltage system off, steering lock or equivalent not engaged 'ACC', # Vehicle Accessories on/living 'ON', # Engine start enabled (e.g. ignition on, diesel pre-heating, electrical drive released) 'START' # Engine starter relay closed (not applicable for electrical vehicles) ] description: State of the supply voltage of the control units (usually 12V). ## # Low voltage battery ## LowVoltageBattery: type: branch description: Signals related to low voltage battery. #include Battery.vspec LowVoltageBattery Speed: datatype: float type: sensor unit: km/h description: Vehicle speed. TraveledDistance: datatype: uint32 type: sensor unit: m description: Odometer reading, total distance traveled during the lifetime of the vehicle. TraveledDistanceSinceStart: datatype: uint32 type: sensor unit: m description: Distance traveled since start of current trip. comment: A new trip is considered to start when engine gets enabled (e.g. LowVoltageSystemState in ON or START mode). A trip is considered to end when engine is no longer enabled. The signal may however keep the value of the last trip until a new trip is started. StartTime: datatype: string type: attribute default: '0000-01-01T00:00Z' unit: iso8601 description: Start time of current or latest trip, formatted according to ISO 8601 with UTC time zone. comment: This signal is supposed to be set whenever a new trip starts. A new trip is considered to start when engine gets enabled (e.g. LowVoltageSystemState in ON or START mode). A trip is considered to end when engine is no longer enabled. The default value indicates that the vehicle never has been started, or that latest start time is unknown. TripDuration: datatype: float type: sensor unit: s description: Duration of latest trip. comment: This signal is not assumed to be continuously updated, but instead set to 0 when a trip starts and set to the actual duration of the trip when a trip ends. A new trip is considered to start when engine gets enabled (e.g. LowVoltageSystemState in ON or START mode). A trip is considered to end when engine is no longer enabled. TripMeterReading: datatype: uint32 type: actuator unit: m description: Trip meter reading. comment: The trip meter is an odometer that can be manually reset by the driver IsBrokenDown: datatype: boolean type: sensor description: Vehicle breakdown or any similar event causing vehicle to stop on the road, that might pose a risk to other road users. True = Vehicle broken down on the road, due to e.g. engine problems, flat tire, out of gas, brake problems. False = Vehicle not broken down. comment: Actual criteria and method used to decide if a vehicle is broken down is implementation specific. IsMoving: datatype: boolean type: sensor description: Indicates whether the vehicle is stationary or moving. AverageSpeed: datatype: float type: sensor unit: km/h description: Average speed for the current trip. comment: A new trip is considered to start when engine gets enabled (e.g. LowVoltageSystemState in ON or START mode). A trip is considered to end when engine is no longer enabled. The signal may however keep the value of the last trip until a new trip is started. Calculation of average speed may exclude periods when the vehicle for example is not moving or transmission is in neutral. # # Spatial Acceleration # Acceleration: type: branch description: Spatial acceleration. Axis definitions according to ISO 8855. Acceleration.Longitudinal: datatype: float type: sensor unit: m/s^2 description: Vehicle acceleration in X (longitudinal acceleration). Acceleration.Lateral: datatype: float type: sensor unit: m/s^2 description: Vehicle acceleration in Y (lateral acceleration). Acceleration.Vertical: datatype: float type: sensor unit: m/s^2 description: Vehicle acceleration in Z (vertical acceleration). # # Spatial Rotation # AngularVelocity: type: branch description: Spatial rotation. Axis definitions according to ISO 8855. AngularVelocity.Roll: datatype: float type: sensor unit: degrees/s description: Vehicle rotation rate along X (longitudinal). AngularVelocity.Pitch: datatype: float type: sensor unit: degrees/s description: Vehicle rotation rate along Y (lateral). AngularVelocity.Yaw: datatype: float type: sensor unit: degrees/s description: Vehicle rotation rate along Z (vertical). # # Spatial Orientation # Orientation: type: branch description: Spatial orientation. Axis definitions according to ISO 8855. Orientation.Roll: datatype: float type: sensor unit: degrees min: -180 max: 180 description: Vehicle rotation (tilt) around X (longitudinal). Positive values = right side down. comment: > Reference is the vehicle at rest on a level surface. Useful for rollover detection and off-road applications. Related to VSS issue #877 (Connected Safety signals). Orientation.Pitch: datatype: float type: sensor unit: degrees min: -180 max: 180 description: Vehicle rotation (tilt) around Y (lateral). Positive values = nose up. comment: > Reference is the vehicle at rest on a level surface. Useful for incline detection and trailer loading applications. Related to VSS issue #877 (Connected Safety signals). Orientation.Yaw: datatype: float type: sensor unit: degrees min: 0 max: 360 description: Vehicle rotation around Z (vertical) relative to geographic north. comment: > 0 = North, 90 = East, 180 = South, 270 = West. Complements CurrentLocation.Heading by providing IMU-derived orientation rather than GNSS-derived heading. Related to VSS issue #877 (Connected Safety signals). # # Schema from schema.org # RoofLoad: datatype: int16 type: attribute unit: kg description: The permitted total weight of cargo and installations (e.g. a roof rack) on top of the vehicle. CargoVolume: datatype: float type: attribute unit: l description: The available volume for cargo or luggage. For automobiles, this is usually the trunk volume. min: 0 EmissionsCO2: datatype: int16 type: attribute description: The CO2 emissions. unit: g/km # # Vehicle Weight and Dimension attributes # CurrentOverallWeight: datatype: uint16 type: sensor unit: kg description: Current overall Vehicle weight. Including passengers, cargo and other load inside the car. CurbWeight: datatype: uint16 type: attribute default: 0 unit: kg description: Vehicle curb weight, including all liquids and full tank of fuel, but no cargo or passengers. GrossWeight: datatype: uint16 type: attribute default: 0 unit: kg description: Curb weight of vehicle, including all liquids and full tank of fuel and full load of cargo and passengers. MaxTowWeight: datatype: uint16 type: attribute default: 0 unit: kg description: Maximum weight of trailer. MaxTowBallWeight: datatype: uint16 type: attribute default: 0 unit: kg description: Maximum vertical weight on the tow ball of a trailer. Length: datatype: uint16 type: attribute default: 0 unit: mm description: Overall vehicle length. Height: datatype: uint16 type: attribute default: 0 unit: mm description: Overall vehicle height. WidthExcludingMirrors: datatype: uint16 type: attribute default: 0 unit: mm description: Overall vehicle width excluding mirrors, as defined by SAE J1100-2009 W103. WidthIncludingMirrors: datatype: uint16 type: attribute unit: mm description: Overall vehicle width including mirrors, as defined by SAE J1100-2009 W144. WidthFoldedMirrors: datatype: uint16 type: attribute unit: mm description: Overall vehicle width with mirrors folded, as defined by SAE J1100-2009 W145. TurningDiameter: datatype: uint16 type: attribute unit: mm description: Minimum turning diameter, Wall-to-Wall, as defined by SAE J1100-2009 D102. # # Trailer # Trailer: type: branch description: Trailer signals. Trailer.IsConnected: datatype: boolean type: sensor description: Signal indicating if trailer is connected or not. # # Location # CurrentLocation: type: branch description: The current latitude and longitude of the vehicle. CurrentLocation.Timestamp: datatype: string type: sensor unit: iso8601 description: Timestamp from GNSS system for current location, formatted according to ISO 8601 with UTC time zone. CurrentLocation.Latitude: datatype: double type: sensor min: -90 max: 90 unit: degrees description: Current latitude of vehicle in WGS 84 geodetic coordinates, as measured at the position of GNSS receiver antenna. CurrentLocation.Longitude: datatype: double type: sensor min: -180 max: 180 unit: degrees description: Current longitude of vehicle in WGS 84 geodetic coordinates, as measured at the position of GNSS receiver antenna. CurrentLocation.Heading: datatype: double type: sensor min: 0 max: 360 unit: degrees description: Current heading relative to geographic north. 0 = North, 90 = East, 180 = South, 270 = West. CurrentLocation.HorizontalAccuracy: datatype: double type: sensor unit: m description: Accuracy of the latitude and longitude coordinates. CurrentLocation.Altitude: datatype: double type: sensor unit: m description: Current altitude relative to WGS 84 reference ellipsoid, as measured at the position of GNSS receiver antenna. CurrentLocation.VerticalAccuracy: datatype: double type: sensor unit: m description: Accuracy of altitude. CurrentLocation.GNSSReceiver: type: branch description: Information on the GNSS receiver used for determining current location. CurrentLocation.GNSSReceiver.FixType: datatype: string type: sensor allowed: ['NONE', 'TWO_D', 'TWO_D_SATELLITE_BASED_AUGMENTATION', 'TWO_D_GROUND_BASED_AUGMENTATION', 'TWO_D_SATELLITE_AND_GROUND_BASED_AUGMENTATION', 'THREE_D', 'THREE_D_SATELLITE_BASED_AUGMENTATION', 'THREE_D_GROUND_BASED_AUGMENTATION', 'THREE_D_SATELLITE_AND_GROUND_BASED_AUGMENTATION'] description: Fix status of GNSS receiver. CurrentLocation.GNSSReceiver.MountingPosition: type: branch description: Mounting position of GNSS receiver antenna relative to vehicle coordinate system. Axis definitions according to ISO 8855. Origin at center of (first) rear axle. CurrentLocation.GNSSReceiver.MountingPosition.X: datatype: int16 type: attribute unit: mm description: Mounting position of GNSS receiver antenna relative to vehicle coordinate system. Axis definitions according to ISO 8855. Origin at center of (first) rear axle. Positive values = forward of rear axle. Negative values = backward of rear axle. CurrentLocation.GNSSReceiver.MountingPosition.Y: datatype: int16 type: attribute unit: mm description: Mounting position of GNSS receiver antenna relative to vehicle coordinate system. Axis definitions according to ISO 8855. Origin at center of (first) rear axle. Positive values = left of origin. Negative values = right of origin. Left/Right is as seen from driver perspective, i.e. by a person looking forward. CurrentLocation.GNSSReceiver.MountingPosition.Z: datatype: int16 type: attribute unit: mm description: Mounting position of GNSS receiver on Z-axis. Axis definitions according to ISO 8855. Origin at center of (first) rear axle. Positive values = above center of rear axle. Negative values = below center of rear axle. #include include/PowerOptimize.vspec