ETSI-ITS-DSRC.md 200 KB
Newer Older
ritterth's avatar
ritterth committed

    **Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
PriorityRequestType ::= ENUMERATED {
  priorityRequestTypeReserved (0),
  priorityRequest             (1),
  priorityRequestUpdate       (2),
  priorityCancellation        (3),
  ...
}
```

ritterth's avatar
ritterth committed
```asn1
noRegion
RegionId ::= 0 
addGrpA
RegionId ::= 1 
addGrpB
RegionId ::= 2 
addGrpC
RegionId ::= 3 

```

ritterth's avatar
ritterth committed
### <a name="RegionId"></a>RegionId
```asn1
RegionId ::= INTEGER (0..255)
  noRegion     RegionId ::= 0
  addGrpA      RegionId ::= 1
  addGrpB      RegionId ::= 2
  addGrpC      RegionId ::= 3
```

### <a name="RequestID"></a>RequestID
ritterth's avatar
ritterth committed

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RequestID ::= INTEGER (0..255)
```

### <a name="RequestImportanceLevel"></a>RequestImportanceLevel
ritterth's avatar
ritterth committed
The RequestImportanceLevel data element is used to state what type of signal request is being made to a signal
controller by a DSRC device in a defined role (such as a police vehicle). The levels of the request typically convey a
sense of urgency or importance with respect to other demands to allow the controller to use predefined business rules to
determine how to respond. These rules will vary in terms of how details of overall importance and urgency are to be
ranked, so they are to be implemented locally. As a result of this regional process, the list below should be assigned well-
defined meanings by the local deployment. These meaning will typically result in assigning a set of values to list for each
vehicle role type that is to be supported.

requestImportanceLevel1
(1), -- The least important request
requestImportanceLevel14
(14), -- The most important request
requestImportanceReserved
(15) -- Reserved for future use
ritterth's avatar
ritterth committed

Values:
* **requestImportanceLevelUnKnown** (0)<br>
* **requestImportanceLevel1** (1)<br>
* **requestImportanceLevel2** (2)<br>
* **requestImportanceLevel3** (3)<br>
* **requestImportanceLevel4** (4)<br>
* **requestImportanceLevel5** (5)<br>
* **requestImportanceLevel6** (6)<br>
* **requestImportanceLevel7** (7)<br>
* **requestImportanceLevel8** (8)<br>
* **requestImportanceLevel9** (9)<br>
* **requestImportanceLevel10** (10)<br>
* **requestImportanceLevel11** (11)<br>
* **requestImportanceLevel12** (12)<br>
* **requestImportanceLevel13** (13)<br>
* **requestImportanceLevel14** (14)<br>
* **requestImportanceReserved** (15)<br>
ritterth's avatar
ritterth committed
* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RequestImportanceLevel ::= ENUMERATED {
  requestImportanceLevelUnKnown  (0),
  requestImportanceLevel1        (1),
  requestImportanceLevel2        (2),
  requestImportanceLevel3        (3),
  requestImportanceLevel4        (4),
  requestImportanceLevel5        (5),
  requestImportanceLevel6        (6),
  requestImportanceLevel7        (7),
  requestImportanceLevel8        (8),
  requestImportanceLevel9        (9),
  requestImportanceLevel10      (10),
  requestImportanceLevel11      (11),
  requestImportanceLevel12      (12),
  requestImportanceLevel13      (13),
  requestImportanceLevel14      (14),
  requestImportanceReserved     (15)
}
```

### <a name="RequestSubRole"></a>RequestSubRole
ritterth's avatar
ritterth committed
The RequestSubRole data element is used to further define the details of the role which any DSRC device might
play when making a request to a signal controller. This value is not always needed. For example, perhaps in a
deployment all police vehicles are to be treated equally. The taxonomy of what details are selected to be entered into the
list is a regional choice but should be devised to allow the controller to use predefined business rules to respond using the
data. As another example, perhaps in a regional deployment a cross-city express type of transit vehicle is given a different
service response for the same request than another type of transit vehicle making an otherwise similar request. As a
result of this regional process, the list below should be assigned well-defined meanings by the local deployment. These
meanings will typically result in assigning a set of values to list for each vehicle role type that is to be supported.

requestSubRole1 (1), -- The first type of sub role
requestSubRole14
(14), -- The last type of sub role
requestSubRoleReserved (15) -- Reserved for future use
ritterth's avatar
ritterth committed

Values:
* **requestSubRoleUnKnown** (0)<br>
* **requestSubRole1** (1)<br>
* **requestSubRole2** (2)<br>
* **requestSubRole3** (3)<br>
* **requestSubRole4** (4)<br>
* **requestSubRole5** (5)<br>
* **requestSubRole6** (6)<br>
* **requestSubRole7** (7)<br>
* **requestSubRole8** (8)<br>
* **requestSubRole9** (9)<br>
* **requestSubRole10** (10)<br>
* **requestSubRole11** (11)<br>
* **requestSubRole12** (12)<br>
* **requestSubRole13** (13)<br>
* **requestSubRole14** (14)<br>
* **requestSubRoleReserved** (15)<br>
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RequestSubRole ::= ENUMERATED {
  requestSubRoleUnKnown    (0),
  requestSubRole1          (1),
  requestSubRole2          (2),
  requestSubRole3          (3),
  requestSubRole4          (4),
  requestSubRole5          (5),
  requestSubRole6          (6),
  requestSubRole7          (7),
  requestSubRole8          (8),
  requestSubRole9          (9),
  requestSubRole10        (10),
  requestSubRole11        (11),
  requestSubRole12        (12),
  requestSubRole13        (13),
  requestSubRole14        (14),
  requestSubRoleReserved  (15)
}
```

### <a name="RestrictionAppliesTo"></a>RestrictionAppliesTo
ritterth's avatar
ritterth committed
The RestrictionAppliesTo data element provides a short list of common vehicle types which may have one or more
special movements at an intersection. In general, these movements are not visible to other traffic with signal heads, but
the SPAT data reflects the state of the movement. Various restricted movements at an intersection can be expressed
using this element to indicate where the movement applies.

none,
-- applies to nothing
equippedTransit,
-- buses etc.
equippedTaxis,
equippedOther,
-- other vehicle types with
-- necessary signal phase state
-- reception equipment
emissionCompliant, -- regional variants with more
-- definitive items also exist
equippedBicycle,
weightCompliant,
heightCompliant,
-- Items dealing with traveler needs serviced by the infrastructure
-- These end users (which are not vehicles) are presumed to be suitably equipped
pedestrians,
slowMovingPersons,
wheelchairUsers,
visualDisabilities,
audioDisabilities, -- hearing

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RestrictionAppliesTo ::= ENUMERATED {
  none,
  equippedTransit,
  equippedTaxis,
  equippedOther,
  emissionCompliant,
  equippedBicycle,
  weightCompliant,
  heightCompliant,
  pedestrians,
  slowMovingPersons,
  wheelchairUsers,
  visualDisabilities,
  audioDisabilities,
  otherUnknownDisabilities,
  ...
}
```

### <a name="RestrictionClassID"></a>RestrictionClassID
ritterth's avatar
ritterth committed
The DE_RestrictionClass data element defines an intersection-unique value to convey data about classes of users.
The mapping used varies with each intersection and is defined in the MAP message if needed. The defined mappings
found there are used to determine when a given class is meant. The typical use of this element is to map additional
movement restrictions or rights (in both the MAP and SPAT messages) to special classes of users (trucks, high sided
vehicles, special vehicles etc.). There is the general presumption that in the absence of this data, any allowed movement
extends to all users.

-- An index value to identify data about classes of users
-- the value used varies with each intersection's
-- needs and is defined in the map to the assigned
-- classes of supported users.

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RestrictionClassID ::= INTEGER (0..255)
```

### <a name="RoadRegulatorID"></a>RoadRegulatorID
ritterth's avatar
ritterth committed
The RoadRegulatorID is a 16-bit globally unique identifier assigned to an entity responsible for assigning
Intersection IDs in the region over which it has such authority. The value zero shall be used for testing, and should only be
used in the absence of a suitable assignment. A single entity which assigns intersection IDs may be assigned several
RoadRegulatorIDs. These assignments are presumed to be permanent.

The value zero shall be used for testing only

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RoadRegulatorID ::= INTEGER (0..65535)
```

### <a name="RoadSegmentID"></a>RoadSegmentID
ritterth's avatar
ritterth committed
The RoadSegmentID is used to uniquely define a section of roadway within a country or region in a 16-bit field.
Assignment rules for this value are established elsewhere and may use regional assignment schemas that vary. Within
the region the policies used to ensure an assigned value’s uniqueness before that value is reused is the responsibility of
that region. Such reuse is expected to occur, but over somewhat lengthy epoch (months).

-- The values zero to 255 shall be used for testing only
-- Note that the value assigned to an RoadSegment will be
-- unique within a given regional ID only during its use

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RoadSegmentID ::= INTEGER (0..65535)
```

### <a name="RoadwayCrownAngle"></a>RoadwayCrownAngle
ritterth's avatar
ritterth committed
The RoadwayCrownAngle data element relates the gross tangential angle of the roadway surface with respect to
the local horizontal axis and is measured at the indicated part of the lane. This measurement is typically made at the
crown (centerline) or at an edge of the lane path. Its typical use is to relate data used in speed warning and traction
calculations for the lane segment or roadway segment in which the measurement is taken.

-- In LSB units of 0.3 degrees of angle
-- over a range of -38.1 to + 38.1 degrees
-- The value -128 shall be used for unknown
-- The value zero shall be used for angles
-- which are between -0.15 and +0.15

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RoadwayCrownAngle ::= INTEGER (-128..127)
```

### <a name="RTCMmessage"></a>RTCMmessage
ritterth's avatar
ritterth committed
The RTCMmessage data element contains the stream of octets of the actual RTCM message that is being sent.
The message’s contents are defined in RTCM Standard 10403.1 and in RTCM Standard 10402.1 and its successors.
Note that most RTCM messages are considerably smaller than the size limit defined here, but that some messages may
need to be broken into smaller messages (as per the rules defined in the RTCM work) in order to be transmitted over
DSRC.

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RTCMmessage ::= OCTET STRING (SIZE(1..1023))
```

### <a name="RTCM-Revision"></a>RTCM-Revision
ritterth's avatar
ritterth committed
The RTCM-Revision data element provides the specific revision of the RTCM standard which is being used. This is
helpful to know precisely the mapping of the message types to their definitions, as well as some minor transport layer
ordering details when received in the mobile unit. All RTCM SC-104 messages follow a common message numbering
method (wherein all defined messages are given unique values) which can be decoded from the initial octets of the
message. This operation is typically performed by the GNSS rover that consumes the messages, so it is transparent at
the DSRC message set level.

rtcmRev2
(1), -- Std 10402.x et al
rtcmRev3
(2), -- Std 10403.x et al

Remarks: In order to fully support the use of networked transport of RTCM corrections (so-called Ntrip systems), the
enumerated list of protocol types provides for all the common types outlined in RTCM Standard 10410.0, Appendix B. It is
anticipated that revisions 3.x and 2.3 will predominate in practice as they do today. It should also be noted that RTCM
standards use the term `byte` for an 8-bit value, while in this standard the term `octet` is used.
ritterth's avatar
ritterth committed

Values:
* **unknown** (0)<br>
* **rtcmRev2** (1)<br>
* **rtcmRev3** (2)<br>
* **reserved** (3)<br>
ritterth's avatar
ritterth committed
* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
RTCM-Revision ::= ENUMERATED {
  unknown (0),
  rtcmRev2 (1), 
  rtcmRev3 (2), 
  reserved (3),
  ...
}
```

### <a name="Scale-B12"></a>Scale-B12
ritterth's avatar
ritterth committed
A 12-bit signed scaling factor supporting scales from zero (which is not used) to >200%. In this data element, the
value zero is taken to represent a value of one (scale 1:1). Values above and below this add or remove exactly 0.05%
from the initial value of 100%. Hence, a value of 2047 adds 102.35% to 100%, resulting in a scale of 202.35% exactly (the
largest valid scale value). Negative values which would result in an effective final value below zero are not supported. The
smallest valid value allowed is -1999 and the remaining negative values are reserved for future definition.

in steps of 0.05 percent

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
Scale-B12 ::= INTEGER (-2048..2047)
```

### <a name="SignalGroupID"></a>SignalGroupID
ritterth's avatar
ritterth committed
The SignalGroupID is an index used to map between the internal state machine of one or more signal controllers (or
other types of traffic flow devices) and a common numbering system that can represent all possible combinations of active
states (movements and phases in US traffic terminology). All possible movement variations are assigned a unique value
within the intersection. Conceptually, the ID represents a means to provide a list of lanes in a set which would otherwise
need to be enumerated in the message. The values zero and 255 are reserved, so there may up to 254 different signal
group IDs within one single intersection. The value 255 represents a protected-Movement-Allowed or permissive-
Movement-Allowed condition that exists at all times. This value is applied to lanes, with or without traffic control devices,
that operate as free-flow lanes. Typically referred to as Channelized Right/Left Turn Lanes (in right/left-hand drive
countries).

-- The value 0 shall be used when the ID is
-- not available or not known
-- the value 255 is reserved to indicate a
-- permanent green movement state
-- therefore a simple 8 phase signal controller
-- device might use 1..9 as its groupIDs

* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
SignalGroupID ::= INTEGER (0..255)
```

### <a name="SegmentAttributeXY"></a>SegmentAttributeXY
ritterth's avatar
ritterth committed
This DE is an enumerated list of attributes about the current lane segment which
 may be enabled or disabled to indicate the presence or absence of the selected attribute on the segment. A segment is
 one or more of the straight lines formed between each set of node points. It is common for a segment attribute to persist
 for more than one set of node points if there is any curvature in the lane itself. The described attributes are all binary flags
 in that they do not need to convey any additional data. Other attributes allow sending short data values to reflect a setting
 which is set and persists in a similar fashion.

 Various values which can be Enabled and Disabled for a lane segment
 - reserved:
 - doNotBlock:
 - whiteLine: segment where a vehicle may not come to a stop segment where lane crossing not allowed such as the final few meters of a lane Porous Lane states, merging, turn outs, parking etc.
 - mergingLaneLeft
 - mergingLaneRight,
,-- indicates porous lanes
 - curbOnLeft
 - curbOnRight,
,-- indicates presence of curbs
 - loadingzoneOnLeft:  loading or drop off zones
 - loadingzoneOnRight: loading or drop off zones
 - turnOutPointOnLeft
 - turnOutPointOnRight,
,-- opening to adjacent street/alley/road
 - adjacentParkingOnLeft
 - adjacentParkingOnRight, -- side of road parking
,
-- Bike Lane Needs
 - adjacentBikeLaneOnLeft
 - adjacentBikeLaneOnRight, -- presence of marked bike lanes
 - sharedBikeLane
 - bikeBoxInFront
-- Transit Needs
 - transitStopOnLeft
 - transitStopOnRight
 - transitStopInLane
, -- right of way is shared with bikes
-- who may occupy entire lane width
, -- any form of bus/transit loading
-- with pull in-out access to lane on left
, -- any form of bus/transit loading
-- with pull in-out access to lane on right
, -- any form of bus/transit loading
-- in mid path of the lane
, -- lane is shared with train or trolley
-- not used for crossing tracks
-- Pedestrian Support Attributes
 - safeIsland: begin/end a safety island in path
 - lowCurbsPresent: for ADA support
 - rumbleStripPresent: for ADA support
 - audibleSignalingPresent: for ADA support
 - adaptiveTimingPresent: for ADA support
 - rfSignalRequestPresent: Supports RF push to walk technologies
 - partialCurbIntrusion: path is blocked by a median or curb but at least 1 meter remains open for use
                         and at-grade passage Lane geometry details
 - taperToLeft
 - taperToRight
 - taperToCenterLine
(see standard for defined shapes)
, -- Used to control final path shape
, -- Used to control final path shape
, -- Used to control final path shape
 - parallelParking: Parking at an angle with the street
 - headInParking:   Parking at an angle with the street
 - freeParking:     No restriction on use of parking
 - timeRestrictionsOnParking: Parking is not permitted at all times
                              typically used when the 'parking' lane becomes a driving lane at times
 - costToPark: Used where parking has a cost
 - midBlockCurbPresent: a protruding curb near lane edge
 - unEvenPavementPresent: a disjoint height at lane edge
ritterth's avatar
ritterth committed

Values:
* **reserved** <br>
* **doNotBlock** <br>
* **whiteLine** <br>
* **mergingLaneLeft** <br>
* **mergingLaneRight** <br>
* **curbOnLeft** <br>
* **curbOnRight** <br>
* **loadingzoneOnLeft** <br>
* **loadingzoneOnRight** <br>
* **turnOutPointOnLeft** <br>
* **turnOutPointOnRight** <br>
* **adjacentParkingOnLeft** <br>
* **adjacentParkingOnRight** <br>
* **adjacentBikeLaneOnLeft** <br>
* **adjacentBikeLaneOnRight** <br>
* **sharedBikeLane** <br>
* **bikeBoxInFront** <br>
* **transitStopOnLeft** <br>
* **transitStopOnRight** <br>
* **transitStopInLane** <br>
* **sharedWithTrackedVehicle** <br>
* **safeIsland** <br>
* **lowCurbsPresent** <br>
* **rumbleStripPresent** <br>
* **audibleSignalingPresent** <br>
* **adaptiveTimingPresent** <br>
* **rfSignalRequestPresent** <br>
* **partialCurbIntrusion** <br>
* **taperToLeft** <br>
* **taperToRight** <br>
* **taperToCenterLine** <br>
* **parallelParking** <br>
* **headInParking** <br>
* **freeParking** <br>
* **timeRestrictionsOnParking** <br>
* **costToPark** <br>
* **midBlockCurbPresent** <br>
* **unEvenPavementPresent** <br>
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
SegmentAttributeXY ::= ENUMERATED {
  reserved                  ,
  doNotBlock                ,
  whiteLine                 ,
  mergingLaneLeft           ,
  mergingLaneRight          ,
  curbOnLeft                ,
  curbOnRight               ,
  loadingzoneOnLeft         ,
  loadingzoneOnRight        ,
  turnOutPointOnLeft        ,
  turnOutPointOnRight       ,
  adjacentParkingOnLeft     ,
  adjacentParkingOnRight    ,
  adjacentBikeLaneOnLeft    ,
  adjacentBikeLaneOnRight   ,
  sharedBikeLane            ,
  bikeBoxInFront            ,
  transitStopOnLeft         ,
  transitStopOnRight        ,
  transitStopInLane         ,
  sharedWithTrackedVehicle  ,
  safeIsland                ,
  lowCurbsPresent           ,
  rumbleStripPresent        ,
  audibleSignalingPresent   ,
  adaptiveTimingPresent     ,
  rfSignalRequestPresent    ,
  partialCurbIntrusion      ,
  taperToLeft               ,
  taperToRight              ,
  taperToCenterLine         ,
  parallelParking           ,
  headInParking             ,
  freeParking               ,
  timeRestrictionsOnParking ,
  costToPark                ,
  midBlockCurbPresent       ,
  unEvenPavementPresent     ,
  ...
}
```

### <a name="SemiMajorAxisAccuracy"></a>SemiMajorAxisAccuracy
ritterth's avatar
ritterth committed
This DE is used to express the radius (length) of the semi-major axis of an
 ellipsoid representing the accuracy which can be expected from a GNSS system in 5cm steps,
 typically at a one sigma level of confidence.

 Value is semi-major axis accuracy at one standard dev.
 - Range 0-12.7 meter, LSB = .05m
 - 254 = any value equal or greater than 12.70 meter
 - 255 = unavailable semi-major axis value

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.05m_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
SemiMajorAxisAccuracy ::= INTEGER (0..255)
```

### <a name="SemiMajorAxisOrientation"></a>SemiMajorAxisOrientation
ritterth's avatar
ritterth committed
This DE is used to orientate the angle of the semi-major axis of an
 ellipsoid representing the accuracy which can be expected from a GNSS system with respect to the coordinate system.

 Value is orientation of semi-major axis
 - relative to true north (0~359.9945078786 degrees)
 - LSB units of 360/65535 deg = 0.0054932479
 - a value of 0 shall be 0 degrees
 - a value of 1 shall be 0.0054932479 degrees
 - a value of 65534 shall be 359.9945078786 deg
 - a value of 65535 shall be used for orientation unavailable

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _360/65535 degree_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
SemiMajorAxisOrientation ::= INTEGER (0..65535)
```

### <a name="SemiMinorAxisAccuracy"></a>SemiMinorAxisAccuracy
ritterth's avatar
ritterth committed
This DE is used to express the radius of the semi-minor axis of an ellipsoid
 representing the accuracy which can be expected from a GNSS system in 5cm steps, typically at a one sigma level of
 confidence.

 Value is semi-minor axis accuracy at one standard dev
 - range 0-12.7 meter, LSB = .05m
 - 254 = any value equal or greater than 12.70 meter
 - 255 = unavailable semi-minor axis value

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.05m_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
SemiMinorAxisAccuracy ::= INTEGER (0..255)
```

### <a name="SpeedAdvice"></a>SpeedAdvice
ritterth's avatar
ritterth committed
This data element represents the recommended velocity of an object, typically a vehicle speed along a roadway,
 expressed in unsigned units of 0.1 meters per second.

 - LSB units are 0.1 m/s
 - the value 499 shall be used for values at or greater than 49.9 m/s
 - the value 500 shall be used to indicate that speed is unavailable

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _0.1 m/s_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
SpeedAdvice ::= INTEGER (0..500)
```

### <a name="SpeedConfidenceDSRC"></a>SpeedConfidenceDSRC
ritterth's avatar
ritterth committed
This DE is used to provide the 95% confidence level for the currently reported
 value of DE_Speed, taking into account the current calibration and precision of the sensor(s) used to measure and/or
 calculate the value. This data element is only to provide the listener with information on the limitations of the sensing
 system, not to support any type of automatic error correction or to imply a guaranteed maximum error. This data element
 should not be used for fault detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should
 be increased accordingly. The frame of reference and axis of rotation used shall be in accordance with that defined
 Section 11.

 - 0 - `unavailable` : Not Equipped or unavailable
 - 1 - `prec100ms`   : 100  meters / sec
 - 2 - `prec10ms`    : 10   meters / sec
 - 3 - `prec5ms`     : 5    meters / sec
 - 4 - `prec1ms`     : 1    meters / sec
 - 5 - `prec0-1ms`   : 0.1  meters / sec
 - 6 - `prec0-05ms`  : 0.05 meters / sec
 - 7 - `prec0-01ms`  : 0.01 meters / sec
ritterth's avatar
ritterth committed

Values:
* **unavailable** (0)<br>
* **prec100ms** (1)<br>
* **prec10ms** (2)<br>
* **prec5ms** (3)<br>
* **prec1ms** (4)<br>
* **prec0-1ms** (5)<br>
* **prec0-05ms** (6)<br>
* **prec0-01ms** (7)  <br>
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
SpeedConfidenceDSRC ::= ENUMERATED {
   unavailable (0), 
   prec100ms   (1), 
   prec10ms    (2), 
   prec5ms     (3), 
   prec1ms     (4), 
   prec0-1ms   (5), 
   prec0-05ms  (6), 
   prec0-01ms  (7)  
ritterth's avatar
ritterth committed
 }
ritterth's avatar
ritterth committed
```

### <a name="TemporaryID"></a>TemporaryID
ritterth's avatar
ritterth committed
This is the 4 octet random device identifier, called the TemporaryID. When used for a mobile OBU device, this value
 will change periodically to ensure the overall anonymity of the vehicle, unlike a typical wireless or wired 802 device ID.
 Because this value is used as a means to identify the local vehicles that are interacting during an encounter, it is used in
 the message set. Other devices, such as infrastructure (RSUs), may have a fixed value for the temporary ID value. See
 also [**StationId**](#StationId) which is used in other deployment regions.

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_

>>>
NOTE:&emsp;The circumstances and times at which various DSRC devices (notably OBUs) create and change their current
        Temporary ID is a complex application level topic. It should be noted that the Temporary ID is not the same as a device
        MAC value, although when used as a means to uniquely identify a device, both have many common properties. It should
        further be noted that the MAC value for a mobile OBU device (unlike a typical wireless or wired 802 device) will
        periodically change to a new random value to ensure the overall anonymity of the vehicle.
>>>

ritterth's avatar
ritterth committed
```asn1
TemporaryID ::= OCTET STRING (SIZE(4))
```

### <a name="ThrottleConfidence"></a>ThrottleConfidence
ritterth's avatar
ritterth committed
This DE is used to provide the 95% confidence level for the currently reported
 value of DE [**Throttle**](#Throttle), taking into account the current calibration and precision of the sensor(s) used to measure and/or
 calculate the value. This data element is only to provide information on the limitations of the sensing system, not to
 support any type of automatic error correction or to imply a guaranteed maximum error. This data element should not be
 used for fault detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should be increased
 accordingly. If a fault that triggers the MIL is of a nature to render throttle performance unreliable, then ThrottleConfidence
 should be represented as "notEquipped."

 - 0 - `unavailable`:    B'00 Not Equipped or unavailable
 - 1 - `prec10percent`:  B'01 10 percent Confidence level
 - 2 - `prec1percent`:   B'10 1 percent Confidence level
 - 3 - `prec0-5percent`: B'11 0.5 percent Confidence level
ritterth's avatar
ritterth committed

Values:
* **unavailable** (0)<br>
* **prec10percent** (1)<br>
* **prec1percent** (2)<br>
* **prec0-5percent** (3)<br>
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
ThrottleConfidence ::= ENUMERATED {
   unavailable     (0),
   prec10percent   (1),
   prec1percent    (2),
   prec0-5percent  (3)
ritterth's avatar
ritterth committed
 }
ritterth's avatar
ritterth committed
```

### <a name="TimeConfidence"></a>TimeConfidence
ritterth's avatar
ritterth committed
The DE_TimeConfidence data element is used to provide the 95% confidence level for the currently reported value
 of time, taking into account the current calibration and precision of the sensor(s) used to measure and/or calculate the
 value. This data element is only to provide information on the limitations of the sensing system, not to support any type of
 automatic error correction or to imply a guaranteed maximum error. This data element should not be used for fault
 detection or diagnosis, but if a vehicle is able to detect a fault, the confidence interval should be increased accordingly.

 - 0 - `unavailable`  : Not Equipped or unavailable
 - 1 - `time-100-000` : Better than 100 Seconds
 - 2 - `time-050-000` : Better than 50 Seconds
 - 3 - `time-020-000` : Better than 20 Seconds
 - 4 - `time-010-000` : Better than 10 Seconds
 - 5 - `time-002-000` : Better than 2 Seconds
 - 6 - `time-001-000` : Better than 1 Second
 - 7 - `time-000-500` : Better than 0.5 Seconds
 - 8 - `time-000-200` : Better than 0.2 Seconds
 - 9 - `time-000-100` : Better than 0.1 Seconds
 - 10 - `time-000-050` : Better than 0.05 Seconds
 - 12 - `time-000-020` : Better than 0.02 Seconds
 - 12 - `time-000-010
time-000-005
time-000-002
time-000-001
(12), -- Better than
(13), -- Better than
(14), -- Better than
(15), -- Better than
-- Better than
time-000-000-5
(16), -- Better than
time-000-000-2
(17), -- Better than
time-000-000-1
(18), -- Better than
time-000-000-05
(19), -- Better than
time-000-000-02
(20), -- Better than
time-000-000-01
(21), -- Better than
time-000-000-005
(22), -- Better than
time-000-000-002
(23), -- Better than
time-000-000-001
(24), -- Better than
-- Better than
time-000-000-000-5
(25), -- Better than
time-000-000-000-2
(26), -- Better than
time-000-000-000-1
(27), -- Better than
time-000-000-000-05
(28), -- Better than
time-000-000-000-02
(29), -- Better than
time-000-000-000-01
(30), -- Better than
time-000-000-000-005
(31), -- Better than
time-000-000-000-002
(32), -- Better than
time-000-000-000-001
(33), -- Better than
-- Better than
time-000-000-000-000-5 (34), -- Better than
time-000-000-000-000-2 (35), -- Better than
time-000-000-000-000-1 (36), -- Better than
time-000-000-000-000-05 (37), -- Better than
time-000-000-000-000-02 (38), -- Better than
time-000-000-000-000-01 (39) -- Better than
}
Page 201 of 267
0.01 Seconds
0.005 Seconds
0.002 Seconds
0.001 Seconds
one millisecond
0.000,5 Seconds
0.000,2 Seconds
0.000,1 Seconds
0.000,05 Seconds
0.000,02 Seconds
0.000,01 Seconds
0.000,005 Seconds
0.000,002 Seconds
0.000,001 Seconds
one micro second
0.000,000,5 Seconds
0.000,000,2 Seconds
0.000,000,1 Seconds
0.000,000,05 Seconds
0.000,000,02 Seconds
0.000,000,01 Seconds
0.000,000,005 Seconds
0.000,000,002 Seconds
0.000,000,001 Seconds
one nano second
0.000,000,000,5 Seconds
0.000,000,000,2 Seconds
0.000,000,000,1 Seconds
0.000,000,000,05 Seconds
0.000,000,000,02 Seconds
0.000,000,000,01 Seconds
ritterth's avatar
ritterth committed

Values:
* **unavailable** (0)<br>
* **time-100-000** (1)<br>
* **time-050-000** (2)<br>
* **time-020-000** (3)<br>
* **time-010-000** (4)<br>
* **time-002-000** (5)<br>
* **time-001-000** (6)<br>
* **time-000-500** (7)<br>
* **time-000-200** (8)<br>
* **time-000-100** (9)<br>
* **time-000-050** (10)<br>
* **time-000-020** (11)<br>
* **time-000-010** (12)<br>
* **time-000-005** (13)<br>
* **time-000-002** (14)<br>
* **time-000-001** (15)<br>
* **time-000-000-5** (16)<br>
* **time-000-000-2** (17)<br>
* **time-000-000-1** (18)<br>
* **time-000-000-05** (19)<br>
* **time-000-000-02** (20)<br>
* **time-000-000-01** (21)<br>
* **time-000-000-005** (22)<br>
* **time-000-000-002** (23)<br>
* **time-000-000-001** (24)<br>
* **time-000-000-000-5** (25)<br>
* **time-000-000-000-2** (26)<br>
* **time-000-000-000-1** (27)<br>
* **time-000-000-000-05** (28)<br>
* **time-000-000-000-02** (29)<br>
* **time-000-000-000-01** (30)<br>
* **time-000-000-000-005** (31)<br>
* **time-000-000-000-002** (32)<br>
* **time-000-000-000-001** (33)<br>
* **time-000-000-000-000-5** (34)<br>
* **time-000-000-000-000-2** (35)<br>
* **time-000-000-000-000-1** (36)<br>
* **time-000-000-000-000-05** (37)<br>
* **time-000-000-000-000-02** (38)<br>
* **time-000-000-000-000-01** (39)<br>
ritterth's avatar
ritterth committed
* xxxxx<br>
  .


&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
TimeConfidence ::= ENUMERATED {
   unavailable              (0),
   time-100-000             (1),
   time-050-000             (2),
   time-020-000             (3),
   time-010-000             (4),
   time-002-000             (5),
   time-001-000             (6),
   time-000-500             (7),
   time-000-200             (8),
   time-000-100             (9),
   time-000-050            (10),
   time-000-020            (11),
   time-000-010            (12),
   time-000-005            (13),
   time-000-002            (14),
   time-000-001            (15),
   time-000-000-5          (16),
   time-000-000-2          (17),
   time-000-000-1          (18),
   time-000-000-05         (19),
   time-000-000-02         (20),
   time-000-000-01         (21),
   time-000-000-005        (22),
   time-000-000-002        (23),
   time-000-000-001        (24),
   time-000-000-000-5      (25),
   time-000-000-000-2      (26),
   time-000-000-000-1      (27),
   time-000-000-000-05     (28),
   time-000-000-000-02     (29),
   time-000-000-000-01     (30),
   time-000-000-000-005    (31),
   time-000-000-000-002    (32),
   time-000-000-000-001    (33),
   time-000-000-000-000-5  (34),
   time-000-000-000-000-2  (35),
   time-000-000-000-000-1  (36),
   time-000-000-000-000-05 (37),
   time-000-000-000-000-02 (38),
   time-000-000-000-000-01 (39)
}
```

### <a name="TimeIntervalConfidence"></a>TimeIntervalConfidence
ritterth's avatar
ritterth committed
This is the statistical confidence for the predicted time of signal group state change. For evaluation, the formula
 10<sup>(x/a)</sup>-b with a=82.5 and b=1.3 was used. The values are encoded as probability classes with proposed values listed in
 the below table in the ASN.1 specification.

 Value: Probability
 - 0 - 21%
 - 1 - 36%
 - 2 - 47%
 - 3 - 56%
 - 4 - 62%
 - 5 - 68%
 - 6 - 73%
 - 7 - 77%
 - 8 - 81%
 - 9 - 85%
 - 10 - 88%
 - 11 - 91%
 - 12 - 94%
 - 13 - 96%
 - 14 - 98%
 - 15 - 100%

&nbsp;&nbsp;&nbsp;&nbsp;**Unit:** _percent_

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
TimeIntervalConfidence ::= INTEGER (0..15)
```

### <a name="TransitVehicleOccupancy"></a>TransitVehicleOccupancy
ritterth's avatar
ritterth committed
This DE is used to relate basic level of current ridership.
ritterth's avatar
ritterth committed

Values:
* **occupancyUnknown** (0)<br>
* **occupancyEmpty** (1)<br>
* **occupancyVeryLow** (2)<br>
* **occupancyLow** (3)<br>
* **occupancyMed** (4)<br>
* **occupancyHigh** (5)<br>
* **occupancyNearlyFull** (6)<br>
* **occupancyFull** (7)<br>
ritterth's avatar
ritterth committed

&nbsp;&nbsp;&nbsp;&nbsp;**Categories:** Infrastructure information 

&nbsp;&nbsp;&nbsp;&nbsp;**Revision:** _V1.3.1_
ritterth's avatar
ritterth committed
```asn1
TransitVehicleOccupancy ::= ENUMERATED {
  occupancyUnknown    (0),
  occupancyEmpty      (1),
  occupancyVeryLow    (2),
  occupancyLow        (3),
  occupancyMed        (4),
  occupancyHigh       (5),