Files
MicrOBU/microbu-esp32c5/tools/v2x2map-0.3.0
Ashin Walpola 0e9525162d Keep the colleague's microbu-esp32c5 tree in this repository
obu-firmware builds against vanetza-idf from microbu-esp32c5/external, but
that tree was gitignored, so a clone of this repository could not build the
firmware it ships. It is now committed here as ordinary files in its own
folder, microbu-esp32c5/: the colleague's commit cf4b99f plus the V2X2MAP
bridge's signature verification (--trust) used on the bench. Nothing is
fetched from or pushed to the colleague's repository; this repository and
its remotes carry everything. The folder's own .gitignore keeps build output,
downloaded components and private key material out, as it did there; the
committed file set is identical to that repository's tracked files.

The ESP32-C5 is still flashed from obu-firmware/, which only takes
vanetza-idf from microbu-esp32c5/, so the two stay separate folders.
FLASHING.md says how to take a newer version of the colleague's tree (copy
it over the folder, rebuild, test, commit).
2026-09-23 17:46:40 +02:00
..

V2X2MAP bridge (vendored, bridge-only)

This is a pruned copy of the bridge/ component of V2X2MAP 0.3.0, a receiver/live-map tool for ITS-G5 V2X traffic. V2X2MAP is itself a fork of opentrafficmap/its-g5-receiver-firmware extended with BLE streaming, an Android app and a Windows installer — see the upstream project for the full firmware/Android/iOS sources and license (MIT, LICENSE in this directory).

Why it is here

bridge/ is the host-side Python tool (serial/BLE ingestion, dashboard, recording, VAM/CAM decoding) used for prototyping and to sanity-check VAM decoding independently of this project's own external/vanetza-idf stack. It has been locally modified to decode VAMs (bridge/vam.py, bridge/test_vam.py, bridge/asn1/) and, since 2026-09-14, to look inside signed GeoNetworking packets (bridge/secured.py: a bounded COER walk of the TS 103 097 Ieee1609Dot2Data that returns the unsecured payload, PSID, generation time and signer; the signature is not verified, the dashboard says "signed … not verified").

The Android app and the receiver firmware from the original project are not carried into this repository; this project uses its own ESP32-C5 firmware (firmware/, external/vanetza-idf/) instead. bridge/firmware/*.bin is a small set of prebuilt images kept only so the bridge's recording/decode workflow can be exercised against a receiver board without a separate firmware build.

Use

See bridge/its_g5_bridge.py and bridge/dashboard_server.py for the serial/BLE bridge and local dashboard; bridge/vam.py for the VAM decode path. bridge/requirements.txt lists its Python dependencies (separate from this project's own station-link/python/requirements.txt).