Wiki › Messages › RSM, the Road Safety Message of SAE J2945/4: structured work zones and incidents

Updated 2026-10-09

What it is and who sends it

The Road Safety Message is a roadside message defined in SAE J2945/4 that describes a road condition in a structured way: a work zone with its reduced speed, its lane closures and the detour path; an incident; a sharp curve with an advisory speed. Where a TIM says "road construction, reduced to one lane" as a list of phrases and leaves the vehicle to interpret it, an RSM says which lanes are closed, from where to where, what the speed limit inside the zone is, when the zone starts and ends, and whether workers are present. Automated driving systems and advanced driver assistance can act on that; a human-readable TIM they can only display. The ASN.1 type is RoadSafetyMessage, DSRCmsgID 33, carried in the same MessageFrame as every other J2735 message and broadcast by an RSU from an agency's work-zone or incident data.

When it is broadcast

PropertyValue
Rate1 Hz is typical; J2945/4 allows slower for long-lived zones
PSID0x8003 (p-encoded 8003), the same as TIM; receivers tell them apart by messageId
ChannelSame C-V2X channel as everything else
SigningSigned with the RSU's 0x8003 application certificate
SourceAgency work-zone system (often from a WZDx feed) → RSU store-and-repeat table; update when the zone changes, with eventUpdate incremented
Size100 to 600 bytes; several containers can share one message

Structure, section by section

CommonContainer

FieldMeaningUnits and rangeTypical value
eventInfo.eventIDIdentifier of the event, stable across updatesoctet string
eventInfo.eventUpdateIncrement on each revision of the eventMsgCount 0 … 1271
eventInfo.eventCancellationWhether the event is being cancelledboolean-like Activityfalse
eventInfo.startDateTime, endDateTimeValidity as DDateTime (year, month, day, hour, minute, second in ms)2026-10-08 06:00 → 18:00
eventInfo.eventRecurrenceDaily or weekly recurrence of a scheduled zoneoptional
eventInfo.causeCode, subCauseCodeITIS group and code of the cause (road work, accident, weather…)ITIS1025 road construction
eventInfo.affectedVehiclesVehicle groups the event applies toITIS 9217 … (all-vehicles, trucks, buses…)
regionInfo[].referencePointAnchor position of the region1/10 microdegree, 0.1 m
regionInfo[].referencePointTypestartOfEvent or arbitraryenumstartOfEvent
regionInfo[].approachRegionWhere the message applies: a broadRegion or a list of paths, each a node-offset chain like a MAP lane
regionInfo[].scaleOffset scale factor0 … 150
crossLinkingReferences to related MAP intersections or other RSMsoptional

Content containers (1 … 4 per message)

ContainerWhat it carriesKey fields
rszContainer (reduced speed zone)The zone's speed limit and the geometry it applies tospeedLimit (type and speed in 0.02 m/s), rszRegion paths, speedLimitRegionList
laneClosureContainerWhich lanes are open or closed, per lane, along a pathlaneStatus list (lane number and open/closed flags), laneClosureRegion
curveContainerA curve's geometry and advisory speedcurveRegion, advisorySpeed
dynamicInfoContainerWorkers present, moving work zone, flagger, dynamic speedworkersPresent, movingWorkZone, dynamicSpeed, flaggerPresent
incidentsContainerIncident type, location, response statusincidentType, incidentRegion, responseEquip
situationalContainerWeather, visibility and surface conditionsweatherContainer, visibility, surfaceCondition

The portal's template is a westbound work zone on Leesburg Pike with a reduced speed zone container (35 mph) and a lane closure container (right lane closed). Load it in the creator and open the structure explorer to see the exact member names of each container; the ? help gives each one's units.

TIM or RSM: when to use which

QuestionTIMRSM
AudienceDrivers (display, speech)Automated and assisted driving systems, and drivers through the vehicle's own interpretation
Vehicle support todayEvery OBU and most production vehicles with V2XGrowing; required by newer USDOT and state work-zone pilots
Expresses lane-level closuresOnly as phrasesYes, per lane along a path
Expresses a speed limitAs an ITIS sequenceAs a typed value with a region
Expresses workers present, moving zonesOnly as phrasesYes, with dynamic flags
Authoring effortLowHigher; needs lane-level geometry
Source feedAnythingFits WZDx cleanly

Most agencies broadcast both for a work zone: a TIM so every vehicle shows something, and an RSM so capable vehicles get the structure. Both go on PSID 0x8003 in the same RSU store with separate rows.

How to create one in this portal

  1. Open the creator and load Road Safety Message – Work Zone.
  2. Set eventInfo.eventID to your own identifier, startDateTime and endDateTime to the zone's hours, causeCode to the ITIS cause and affectedVehicles if the zone applies only to trucks or all vehicles.
  3. Move regionInfo[0].referencePoint to the start of the zone and edit the approachRegion.paths nodes (centimeter offsets, like a MAP lane, first node relative to the reference point).
  4. In the containers, set the reduced speed (0.02 m/s units: 35 mph = 782) and the lane status list. Remove containers you do not need with the structure explorer; add dynamicInfoContainer when workers are present.
  5. Encode / Validate. The hex begins 0021 (messageId 33). The map draws the reference point and the paths.
  6. Push to my RSU on PSID 0x8003 with a delivery window equal to the event's validity. Increment eventUpdate each time you change the zone and push again; the RSU row replaces the old bytes.

How to read a decoded one

  • messageId 33 on PSID 0x8003 is an RSM; 31 is a TIM. A decoder that assumes TIM for everything on 0x8003 fails here.
  • Check the validity window in eventInfo and the eventUpdate counter against the previous message for the same eventID.
  • The region paths should lie on the road on the map; the first node is at the reference point.
  • speedLimit.speed is in 0.02 m/s, not mph.
  • A message with no containers is valid but useless; one with four containers that disagree about the region is a sign of hand editing.
  • SAE J2945/4, Road Safety Message; SAE J2735_202409 for the common types it imports; FHWA Work Zone Data Exchange (WZDx) specification as the usual upstream feed; USDOT work-zone data initiative pilots.
  • TIM, MAP for node offsets, units cheat sheet, TMC and ATMS integration for automating zones from a feed.