Keep vanetza-idf in obu-firmware, so a plain clone builds the firmware
obu-firmware builds against the vanetza-idf C-ITS library, which until now came from the colleague's microbu-esp32c5 tree beside the repository and was not tracked here, so a clone of this repository could not build the firmware it ships. The library alone is now part of obu-firmware, as obu-firmware/external/vanetza-idf: their external/vanetza-idf at commit cf4b99f, unchanged (9775 files; see its PROVENANCE.md). CMake takes it from there by default; -DVANETZA_IDF_DIR still points the build elsewhere. The rest of the colleague's tree (their own VAM firmware, PKI tooling, station-link Python tools, the V2X2MAP bridge) stays out of this repository and gitignored; nothing is pushed to their repository. NOTES.md, docs/06, TODO.md and the pcap verifier's usage line point at the new location.
This commit is contained in:
@@ -0,0 +1,372 @@
|
||||
CPM-PDU-Descriptions {
|
||||
itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) tr (103562) cpm (1) version (1)
|
||||
}
|
||||
|
||||
DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
BEGIN
|
||||
|
||||
IMPORTS ItsPduHeader, Heading, ReferencePosition, Speed, DriveDirection, LongitudinalAcceleration, LateralAcceleration, VerticalAcceleration, StationType, VehicleLength, VehicleWidth, YawRate, SpeedConfidence
|
||||
FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2) }
|
||||
IntersectionReferenceID, LaneID, NodeOffsetPointXY, Offset-B10, Offset-B11, Offset-B12, Offset-B13, Offset-B14, Offset-B16, RoadSegmentReferenceID, VehicleHeight
|
||||
FROM DSRC { iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2) }
|
||||
GenerationDeltaTime FROM CAM-PDU-Descriptions { itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) en(302637) cam(2) version(2)} ;
|
||||
|
||||
-- The root data frame for collective perception message
|
||||
CPM ::= SEQUENCE {
|
||||
header ItsPduHeader,
|
||||
cpm CollectivePerceptionMessage
|
||||
}
|
||||
|
||||
CollectivePerceptionMessage ::= SEQUENCE {
|
||||
generationDeltaTime GenerationDeltaTime,
|
||||
cpmParameters CpmParameters
|
||||
}
|
||||
|
||||
CpmParameters ::= SEQUENCE {
|
||||
managementContainer CpmManagementContainer,
|
||||
stationDataContainer StationDataContainer OPTIONAL,
|
||||
sensorInformationContainer SensorInformationContainer OPTIONAL,
|
||||
perceivedObjectContainer PerceivedObjectContainer OPTIONAL,
|
||||
freeSpaceAddendumContainer FreeSpaceAddendumContainer OPTIONAL,
|
||||
numberOfPerceivedObjects NumberOfPerceivedObjects,
|
||||
...
|
||||
}
|
||||
|
||||
CpmManagementContainer ::= SEQUENCE {
|
||||
stationType StationType,
|
||||
perceivedObjectContainerSegmentInfo PerceivedObjectContainerSegmentInfo OPTIONAL,
|
||||
referencePosition ReferencePosition,
|
||||
...
|
||||
}
|
||||
|
||||
StationDataContainer ::= CHOICE {
|
||||
originatingVehicleContainer OriginatingVehicleContainer,
|
||||
originatingRSUContainer OriginatingRSUContainer,
|
||||
...
|
||||
}
|
||||
|
||||
OriginatingVehicleContainer ::= SEQUENCE {
|
||||
heading Heading,
|
||||
speed Speed,
|
||||
vehicleOrientationAngle WGS84Angle OPTIONAL,
|
||||
driveDirection DriveDirection DEFAULT forward,
|
||||
longitudinalAcceleration LongitudinalAcceleration OPTIONAL,
|
||||
lateralAcceleration LateralAcceleration OPTIONAL,
|
||||
verticalAcceleration VerticalAcceleration OPTIONAL,
|
||||
yawRate YawRate OPTIONAL,
|
||||
pitchAngle CartesianAngle OPTIONAL,
|
||||
rollAngle CartesianAngle OPTIONAL,
|
||||
vehicleLength VehicleLength OPTIONAL,
|
||||
vehicleWidth VehicleWidth OPTIONAL,
|
||||
vehicleHeight VehicleHeight OPTIONAL,
|
||||
trailerDataContainer TrailerDataContainer OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
OriginatingRSUContainer ::= CHOICE {
|
||||
intersectionReferenceId IntersectionReferenceID,
|
||||
roadSegmentReferenceId RoadSegmentReferenceID,
|
||||
...
|
||||
}
|
||||
|
||||
SensorInformationContainer ::= SEQUENCE SIZE(1..128, ...) OF SensorInformation
|
||||
|
||||
SensorInformation ::= SEQUENCE {
|
||||
sensorID Identifier,
|
||||
type SensorType,
|
||||
detectionArea DetectionArea,
|
||||
freeSpaceConfidence FreeSpaceConfidence OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
PerceivedObjectContainer ::= SEQUENCE SIZE(1..128, ...) OF PerceivedObject
|
||||
|
||||
PerceivedObject ::= SEQUENCE {
|
||||
objectID Identifier,
|
||||
sensorIDList SensorIdList OPTIONAL,
|
||||
timeOfMeasurement TimeOfMeasurement,
|
||||
objectAge ObjectAge OPTIONAL,
|
||||
objectConfidence ObjectConfidence DEFAULT 0,
|
||||
xDistance ObjectDistanceWithConfidence,
|
||||
yDistance ObjectDistanceWithConfidence,
|
||||
zDistance ObjectDistanceWithConfidence OPTIONAL,
|
||||
xSpeed SpeedExtended,
|
||||
ySpeed SpeedExtended,
|
||||
zSpeed SpeedExtended OPTIONAL,
|
||||
xAcceleration LongitudinalAcceleration OPTIONAL,
|
||||
yAcceleration LateralAcceleration OPTIONAL,
|
||||
zAcceleration VerticalAcceleration OPTIONAL,
|
||||
yawAngle CartesianAngle OPTIONAL,
|
||||
planarObjectDimension1 ObjectDimension OPTIONAL,
|
||||
planarObjectDimension2 ObjectDimension OPTIONAL,
|
||||
verticalObjectDimension ObjectDimension OPTIONAL,
|
||||
objectRefPoint ObjectRefPoint DEFAULT 0,
|
||||
dynamicStatus DynamicStatus OPTIONAL,
|
||||
classification ObjectClassDescription OPTIONAL,
|
||||
matchedPosition MatchedPosition OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
DetectionArea ::= CHOICE {
|
||||
vehicleSensor VehicleSensor,
|
||||
stationarySensorRadial AreaRadial,
|
||||
stationarySensorPolygon AreaPolygon,
|
||||
stationarySensorCircular AreaCircular,
|
||||
stationarySensorEllipse AreaEllipse,
|
||||
stationarySensorRectangle AreaRectangle,
|
||||
...
|
||||
}
|
||||
|
||||
VehicleSensor ::= SEQUENCE {
|
||||
refPointId RefPointId DEFAULT 0,
|
||||
xSensorOffset XSensorOffset,
|
||||
ySensorOffset YSensorOffset,
|
||||
zSensorOffset ZSensorOffset OPTIONAL,
|
||||
vehicleSensorPropertyList VehicleSensorPropertyList,
|
||||
...
|
||||
}
|
||||
|
||||
VehicleSensorPropertyList ::= SEQUENCE SIZE(1..10) OF VehicleSensorProperties
|
||||
|
||||
VehicleSensorProperties ::= SEQUENCE {
|
||||
range Range,
|
||||
horizontalOpeningAngleStart CartesianAngleValue,
|
||||
horizontalOpeningAngleEnd CartesianAngleValue,
|
||||
verticalOpeningAngleStart CartesianAngleValue OPTIONAL,
|
||||
verticalOpeningAngleEnd CartesianAngleValue OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
AreaCircular ::= SEQUENCE {
|
||||
nodeCenterPoint OffsetPoint OPTIONAL,
|
||||
radius Radius
|
||||
}
|
||||
|
||||
AreaEllipse ::= SEQUENCE {
|
||||
nodeCenterPoint OffsetPoint OPTIONAL,
|
||||
semiMinorRangeLength SemiRangeLength,
|
||||
semiMajorRangeLength SemiRangeLength,
|
||||
semiMajorRangeOrientation WGS84AngleValue,
|
||||
semiHeight SemiRangeLength OPTIONAL
|
||||
}
|
||||
|
||||
AreaRectangle ::= SEQUENCE {
|
||||
nodeCenterPoint OffsetPoint OPTIONAL,
|
||||
semiMajorRangeLength SemiRangeLength,
|
||||
semiMinorRangeLength SemiRangeLength,
|
||||
semiMajorRangeOrientation WGS84AngleValue,
|
||||
semiHeight SemiRangeLength OPTIONAL
|
||||
}
|
||||
|
||||
AreaPolygon ::= SEQUENCE {
|
||||
polyPointList PolyPointList
|
||||
}
|
||||
|
||||
PolyPointList ::= SEQUENCE (SIZE(3..16, ...)) OF OffsetPoint
|
||||
|
||||
AreaRadial ::= SEQUENCE {
|
||||
range Range,
|
||||
stationaryHorizontalOpeningAngleStart WGS84AngleValue,
|
||||
stationaryHorizontalOpeningAngleEnd WGS84AngleValue,
|
||||
verticalOpeningAngleStart CartesianAngleValue OPTIONAL,
|
||||
verticalOpeningAngleEnd CartesianAngleValue OPTIONAL,
|
||||
sensorPositionOffset OffsetPoint OPTIONAL,
|
||||
sensorHeight SensorHeight OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
FreeSpaceAddendumContainer ::= SEQUENCE SIZE(1..128, ...) OF FreeSpaceAddendum
|
||||
|
||||
FreeSpaceAddendum ::= SEQUENCE {
|
||||
freeSpaceConfidence FreeSpaceConfidence,
|
||||
freeSpaceArea FreeSpaceArea,
|
||||
sensorIDList SensorIdList OPTIONAL,
|
||||
shadowingApplies ShadowingApplies DEFAULT TRUE,
|
||||
...
|
||||
}
|
||||
|
||||
FreeSpaceArea ::= CHOICE {
|
||||
freeSpacePolygon AreaPolygon,
|
||||
freeSpaceCircular AreaCircular,
|
||||
freeSpaceEllipse AreaEllipse,
|
||||
freeSpaceRectangle AreaRectangle,
|
||||
...
|
||||
}
|
||||
|
||||
ObjectDistanceWithConfidence ::= SEQUENCE {
|
||||
value DistanceValue,
|
||||
confidence DistanceConfidence
|
||||
}
|
||||
|
||||
ObjectDimension ::= SEQUENCE {
|
||||
value ObjectDimensionValue,
|
||||
confidence ObjectDimensionConfidence
|
||||
}
|
||||
|
||||
CartesianAngle ::= SEQUENCE {
|
||||
value CartesianAngleValue,
|
||||
confidence AngleConfidence
|
||||
}
|
||||
|
||||
WGS84Angle ::= SEQUENCE {
|
||||
value WGS84AngleValue,
|
||||
confidence AngleConfidence
|
||||
}
|
||||
|
||||
SpeedExtended ::= SEQUENCE {
|
||||
value SpeedValueExtended,
|
||||
confidence SpeedConfidence
|
||||
}
|
||||
|
||||
SensorIdList ::= SEQUENCE SIZE(1..128, ...) OF Identifier
|
||||
|
||||
TrailerDataContainer ::= SEQUENCE SIZE(1..2) OF TrailerData
|
||||
|
||||
TrailerData ::= SEQUENCE {
|
||||
refPointId RefPointId,
|
||||
hitchPointOffset HitchPointOffset,
|
||||
frontOverhang FrontOverhang,
|
||||
rearOverhang RearOverhang,
|
||||
trailerWidth VehicleWidth OPTIONAL,
|
||||
hitchAngle CartesianAngle OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
LongitudinalLanePosition ::= SEQUENCE {
|
||||
longitudinalLanePositionValue LongitudinalLanePositionValue,
|
||||
longitudinalLanePositionConfidence LongitudinalLanePositionConfidence
|
||||
}
|
||||
|
||||
MatchedPosition ::= SEQUENCE {
|
||||
laneID LaneID OPTIONAL,
|
||||
longitudinalLanePosition LongitudinalLanePosition OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
PerceivedObjectContainerSegmentInfo ::= SEQUENCE {
|
||||
totalMsgSegments SegmentCount,
|
||||
thisSegmentNum SegmentCount
|
||||
}
|
||||
|
||||
ObjectClassDescription ::= SEQUENCE (SIZE(1..8)) OF ObjectClass
|
||||
|
||||
ObjectClass ::= SEQUENCE {
|
||||
confidence ClassConfidence,
|
||||
class CHOICE {
|
||||
vehicle VehicleSubclass,
|
||||
person PersonSubclass,
|
||||
animal AnimalSubclass,
|
||||
other OtherSubclass
|
||||
}
|
||||
}
|
||||
|
||||
VehicleSubclass ::= SEQUENCE {
|
||||
type VehicleSubclassType DEFAULT 0,
|
||||
confidence ClassConfidence DEFAULT 0
|
||||
}
|
||||
|
||||
PersonSubclass ::= SEQUENCE {
|
||||
type PersonSubclassType DEFAULT 0,
|
||||
confidence ClassConfidence DEFAULT 0
|
||||
}
|
||||
|
||||
AnimalSubclass ::= SEQUENCE {
|
||||
type AnimalSubclassType DEFAULT 0,
|
||||
confidence ClassConfidence DEFAULT 0
|
||||
}
|
||||
|
||||
OtherSubclass ::= SEQUENCE {
|
||||
type OtherSublassType DEFAULT 0,
|
||||
confidence ClassConfidence DEFAULT 0
|
||||
}
|
||||
|
||||
OffsetPoint ::= SEQUENCE {
|
||||
nodeOffsetPointxy NodeOffsetPointXY (WITH COMPONENTS {..., node-LatLon ABSENT, regional ABSENT}),
|
||||
nodeOffsetPointZ NodeOffsetPointZ OPTIONAL
|
||||
}
|
||||
|
||||
NodeOffsetPointZ ::= CHOICE {
|
||||
node-Z1 Offset-B10, -- node is within 5.11m of last node
|
||||
node-Z2 Offset-B11, -- node is within 10.23m of last node
|
||||
node-Z3 Offset-B12, -- node is within 20.47m of last node
|
||||
node-Z4 Offset-B13, -- node is within 40.96m of last node
|
||||
node-Z5 Offset-B14, -- node is within 81.91m of last node
|
||||
node-Z6 Offset-B16 -- node is within 327.67m of last node
|
||||
}
|
||||
|
||||
AnimalSubclassType ::= INTEGER {unknown(0)} (0..255)
|
||||
|
||||
ClassConfidence ::= INTEGER {unknown(0), onePercent(1), oneHundredPercent(100), unavailable(101)} (0..101)
|
||||
|
||||
WGS84AngleValue ::= INTEGER {wgs84North(0), wgs84East(900), wgs84South(1800), wgs84West(2700), unavailable(3601)} (0..3601)
|
||||
|
||||
CartesianAngleValue ::= INTEGER {zeroPointOneDegree(1), oneDegree(10), unavailable(3601)} (0..3601)
|
||||
|
||||
AngleConfidence ::= INTEGER {zeroPointOneDegree (1), oneDegree (10), outOfRange(126), unavailable(127)} (1..127)
|
||||
|
||||
SemiRangeLength ::= INTEGER {zeroPointOneMeter(1), oneMeter(10)} (0..10000)
|
||||
|
||||
DistanceValue ::= INTEGER {zeroPointZeroOneMeter(1), oneMeter(100)} (-132768..132767)
|
||||
|
||||
DistanceConfidence ::= INTEGER {zeroPointZeroOneMeter(1), oneMeter(100), outOfRange(101), unavailable(102)} (0..102)
|
||||
|
||||
DynamicStatus ::= INTEGER {dynamic(0), hasBeenDynamic(1), static(2)} (0..2)
|
||||
|
||||
HitchPointOffset ::= INTEGER {zeroPointOneMeter(1), oneMeter(10)} (0..100)
|
||||
|
||||
FrontOverhang ::= INTEGER {zeroPointOneMeter(1), oneMeter(10)} (0..50)
|
||||
|
||||
FreeSpaceConfidence ::= INTEGER {unknown(0), onePercent(1), oneHundredPercent(100), unavailable(101)} (0..101)
|
||||
|
||||
LongitudinalLanePositionValue ::= INTEGER {zeroPointOneMeter(1)} (0..32767)
|
||||
|
||||
LongitudinalLanePositionConfidence ::= INTEGER {zeroPointZeroOneMeter(1), oneMeter(100), outOfRange(101), unavailable(102)} (0..102)
|
||||
|
||||
ObjectAge ::= INTEGER {oneMiliSec(1)} (0..1500)
|
||||
|
||||
ObjectConfidence ::= INTEGER {unknown(0), onePercent(1), oneHundredPercent(100), unavailable(101)} (0..101)
|
||||
|
||||
ObjectDimensionValue ::= INTEGER {zeroPointOneMeter(1), oneMeter(10)} (0..1023)
|
||||
|
||||
ObjectDimensionConfidence ::= INTEGER {zeroPointZeroOneMeter(1), oneMeter(100), outOfRange(101), unavailable(102)} (0..102)
|
||||
|
||||
ObjectRefPoint ::= INTEGER {mid(0), bottomLeft(1), midLeft(2), topLeft(3), bottomMid(4), topMid(5), bottomRight(6), midRight(7), topRight(8)} (0..8)
|
||||
|
||||
OtherSublassType ::= INTEGER {unknown(0), roadSideUnit(1)} (0..255)
|
||||
|
||||
PersonSubclassType ::= INTEGER {unknown(0), pedestrian(1), personInWheelchair(2), cyclist(3), personWithStroller(4), personOnSkates(5), personGroup(6)} (0..255)
|
||||
|
||||
Radius ::= INTEGER {zeroPointOneMeter(1), oneMeter(10)} (0..10000)
|
||||
|
||||
Range ::= INTEGER {zeroPointOneMeter(1), oneMeter(10)} (0..10000)
|
||||
|
||||
RearOverhang ::= INTEGER {zeroPointOneMeter(1), oneMeter(10)} (0..150)
|
||||
|
||||
RefPointId ::= INTEGER (0..255)
|
||||
|
||||
SensorHeight ::= INTEGER {zeroPointZeroOneMeter(1)} (-5000..5000)
|
||||
|
||||
ShadowingApplies ::= BOOLEAN
|
||||
|
||||
Identifier ::= INTEGER (0..255)
|
||||
|
||||
NumberOfPerceivedObjects ::= INTEGER (0..255)
|
||||
|
||||
SensorType ::= INTEGER {undefined(0), radar(1), lidar(2), monovideo(3), stereovision(4), nightvision(5), ultrasonic(6), pmd(7), fusion(8), inductionloop(9), sphericalCamera(10), itssaggregation(11)} (0..15)
|
||||
|
||||
SegmentCount ::= INTEGER(1..127)
|
||||
|
||||
SpeedValueExtended ::= INTEGER {standstill(0), oneCentimeterPerSec(1),unavailable(16383)} (-16383..16383)
|
||||
|
||||
TimeOfMeasurement ::= INTEGER {oneMilliSecond(1)} (-1500..1500)
|
||||
|
||||
VehicleSubclassType ::= INTEGER {unknown(0), moped(1), motorcycle(2), passengerCar(3), bus(4), lightTruck(5), heavyTruck(6), trailer(7), specialVehicles(8), tram(9), emergencyVehicle(10), agricultural(11)} (0..255)
|
||||
|
||||
XSensorOffset ::= INTEGER {negativeZeroPointZeroOneMeter(-1), negativeOneMeter(-100)} (-5000..0)
|
||||
|
||||
YSensorOffset ::= INTEGER {zeroPointZeroOneMeter(1), oneMeter(100)} (-1000..1000)
|
||||
|
||||
ZSensorOffset ::= INTEGER {zeroPointZeroOneMeter(1), oneMeter(100)} (0..1000)
|
||||
|
||||
END
|
||||
Reference in New Issue
Block a user