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).
36 lines
1.8 KiB
Markdown
36 lines
1.8 KiB
Markdown
# V2X2MAP bridge (vendored, bridge-only)
|
|
|
|
This is a pruned copy of the `bridge/` component of
|
|
[V2X2MAP](https://github.com/711it/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](https://codeberg.org/opentrafficmap/its-g5-receiver-firmware)
|
|
extended with BLE streaming, an Android app and a Windows installer — see
|
|
[the upstream project](https://github.com/711it/v2x2map) 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`).
|