Live feeds
Point an RSU's received message forwarding at a UDP port here and watch every BSM, PSM, SRM, SSM, SPaT and MAP it hears on a map: oriented vehicle markers, breadcrumb trails, MAP lanes colored by SPaT state, signal-priority requests and responses, recording and replay, triggers with alerts. Built for agencies standing up pilots and for researchers who need data they can export.
Demo corridor
A simulated intersection on Reston Parkway at Sunrise Valley Drive, Reston, Virginia: six vehicles (two cars, a bus, a snow plow, an EMS unit, a freight truck) at 10 Hz BSM on the real carriageways, a pedestrian on the crosswalk (PSM), a MAP and a SPaT cycling through phases, the bus and the EMS unit sending SRMs on approach with the controller answering SSMs, and a hard-braking event every minute or two so the demo rules fire. Every message is encoded with the real J2735 codec; open any one of them in the decoder.
Signal: EW green · 6 vehicles · 199503 messages encoded since start
Your own feed
Creating a feed takes a free account; anyone can watch the demo. Each feed gets its own UDP port (one of 200), an optional source-IP allowlist, a 10-minute rolling buffer, named recordings kept up to 30 days, rules with in-app alerts and webhooks, and CSV / GeoJSON / JSONL export.
How a feed works
The RSU forwards what it hears
NTCIP 1218 v01A defines rsuReceivedMsgTable (1.3.6.1.4.1.1206.4.2.18.5.2.1): one row per PSID with a destination IP, UDP port, RSSI and interval filters, a delivery window and a flag for raw or signed forwarding. Vendor consoles call this "message forwarding" or "received message forward".
We decode every datagram
Destination cv2x.itsroads.com (74.96.108.13), your feed's port. Payloads may be bare UPER MessageFrames, IEEE 1609.2 SPDUs, WSMP frames, whole Ethernet frames, or carry a vendor header; all are peeled and decoded with the J2735_202409 codec (older revisions fall back automatically).
Map, record, trigger
Objects, trails, MAP + SPaT overlay and SRM/SSM appear within half a second. Record windows, import captures (hex lines, JSON, pcap), export CSV/GeoJSON/JSONL, and set rules — geofence, speed, hard braking, event flags, SRM/SSM, new object, stale feed — with alerts and webhooks.
PSIDs to forward (p-encoded, as the MIB expects them)
| Message | PSID | rsuReceivedMsgPsid octets |
|---|---|---|
| BSM | 0x20 | 20 |
| PSM | 0x27 | 27 |
| SRM | 0xE0000016 | see your feed's setup page |
| SSM | 0xE0000015 | see your feed's setup page |
| SPaT | 0x8002 | see your feed's setup page |
| MAP | 0xE0000017 | see your feed's setup page |
| TIM / RSM | 0x8003 | see your feed's setup page |
| SDSM | 0x8010 | see your feed's setup page |
Forward at least BSM (0x20) for vehicles; add SPaT (0x8002) and MAP (0xE0000017) from the same RSU for the signal overlay, and SRM/SSM for priority. Privacy: BSM temporary IDs rotate every few minutes by design; we store only decoded essentials and the raw frame, scoped to your account, in a rolling 10-minute buffer unless you record.