The diagrams conflated the SIMtrace2 hardware with the sniffer that reads it and omitted the original Osmocom simtrace2-sniff: they showed simtrace2-pysniff feeding the GSMTAP listener with the hardware only as its subtitle, and a second, unexplained "SIMtrace2 hardware / direct USB" box. The diagrams now show the device -> sniffer -> GSMTAP relationship explicitly: SIMtrace2 hardware is read either by simtrace2-pysniff or by the original simtrace2-sniff, and FX2 hardware by the sigrok_iso7816_stream decoder; the sniffers/decoder stream GSMTAP-SIM to the UDP :4729 listener. The direct USB path is drawn separately from the device to the server and is labelled "pysniff code in-process": --capture direct uses the bundled simtrace2_pysniff package (DirectSniffer -> SniffSession) inside the server process, not the simtrace2-pysniff CLI, and bypasses GSMTAP. PCAP/COMPRION import, SQLite and the browser UI keep their places. The READMEs' alt text, the first-run capture-mode notes and the Usage command comments now name the original simtrace2-sniff as a GSMTAP source and say the direct mode runs the bundled sniffer code inside the server. Both languages; 558 Python + 80 Node tests; runtime zip still carries both diagrams and the README image guard passes.
6.4 KiB
6.4 KiB