Kitt.Message.BSM (kitt v0.4.0) View Source
Defines the structure and instantiation function for creating a J2735-compliant BasicSafetyMessage
A BSM defines the basic interchange of presence data
between DSRC-capable vehicles and infrastructure
Link to this section Summary
Types
Defines the BasicSafetyMessage type and the data elements comprising its component fields
Functions
Produces a BSM message struct from an equivalent map or keyword input.
The coreData primary field is instantiated as a CoreData struct recursively
Returns the BSM identifying atom recognized by the ASN1 spec
Returns the BSM identifying integer
Link to this section Types
Specs
lights_state() :: :lowBeamHeadlightsOn | :highBeamHeadlightsOn | :leftTurnSignalOn | :rightTurnSignalOn | :hazardSignalOn | :automaticLightControlOn | :daytimeRunningLightsOn | :fogLightOn | :parkingLightsOn
Specs
partIIcontent() :: %{
"partII-Id": non_neg_integer(),
"partII-Value": partIIextension()
}
Specs
partIIextension() :: vehicle_safety_extensions() | special_vehicle_extensions() | supplemental_vehicle_extensions()
Specs
special_vehicle_extensions() :: %{
vehicleAlerts: Kitt.Types.emergency_details(),
description: Kitt.Types.event_description(),
trailers: Kitt.Types.trailer_data()
}
Specs
supplemental_vehicle_extensions() :: %{
classification: non_neg_integer(),
classDetails: Kitt.Types.vehicle_classification(),
vehicleData: Kitt.Types.vehicle_data(),
weatherReport: Kitt.Types.weather_report(),
weatherProbe: Kitt.Types.weather_probe(),
obstacle: Kitt.Types.obstacle_detection(),
status: Kitt.Types.disabled_vehicle(),
speedProfile: Kitt.Types.speed_profile(),
theRTCM: Kitt.Types.rtcm_package(),
regional: [map()]
}
Specs
t() :: %Kitt.Message.BSM{
coreData: Kitt.Message.BSM.CoreData.t(),
partII: [partIIcontent()],
regional: [map()]
}
Defines the BasicSafetyMessage type and the data elements comprising its component fields
Specs
vehicle_safety_extensions() :: %{
events: Kitt.Types.event_flag(),
pathHistory: Kitt.Types.path_history(),
pathPrediction: Kitt.Types.path_prediction(),
lights: lights_state()
}
Link to this section Functions
Specs
Produces a BSM message struct from an equivalent map or keyword input.
The coreData primary field is instantiated as a CoreData struct recursively
Specs
type() :: atom()
Returns the BSM identifying atom recognized by the ASN1 spec
Specs
type_id() :: non_neg_integer()
Returns the BSM identifying integer