Checking available USB adapters…
The passive listener is a silent second pair of ears on the bus. It never transmits — not one byte, not even an acknowledgement — so it is safe to leave running while another tool (or this app) talks to an ECU. Use it to watch a flash, to hunt down a CAN or serial comm problem, or to record a conversation for later. For a flash driven through the GT-V1 it also pulls the exact image off the board.
The AI helper can explain traffic and, with your permission, adjust connection settings and connect over USB or Wi-Fi. It asks once per Comm Sniffer session before its first hardware action. Revoke & stop withdraws access. New USB devices still need the browser picker.
ECU reads are active: after the listener stops, the helper can send the supported read requests through a separate connection. It can read Gen-3 Hayabusa identity and live data over USB CANable or GT-V1 Wi-Fi, and an already installed Gurued V-Max graft over USB serial in run mode. These reads cannot erase, flash, reset, or write ECU memory.
Full firmware reads currently support one graft-equipped V-Max chip at a time over USB serial. Each block is read twice and compared before a 256 KiB BIN is offered for local download. No firmware bytes are uploaded to AI. Hayabusa and Wi-Fi firmware dumps are not implemented. A staged board image is a separate download and is not a read of the ECU's current firmware.
Opens ws://<board>/ws as an extra passive client. The board broadcasts every CAN
frame on the bus to all clients, plus its own flash progress events — so you see the whole flash
happen (security unlock, RequestDownload, the TransferData blocks, accept/reject), whoever started
it. UDS/ISO-TP messages are reassembled and spelled out in plain English; tick Show raw frames
to also see every CAN frame underneath.
If a dashboard is polling the ECU on this board, that traffic shows too. A serial/RAM dashboard's reads arrive as their own blue dash lines (address + value) and light the scope's Dash lane. A CAN dashboard instead reads the board's telemetry broadcast — those are ordinary (non-diagnostic) CAN frames, so tick Show raw frames to see them in the log. Either way the dash comm only appears while a dashboard is actually open on the board (nothing polls, nothing to hear) — and the monitor still never transmits.
When a flash driven through the GT-V1 starts, the board still holds the staged image. With
Auto-capture on flash start on, the monitor fetches those exact bytes
(GET /api/flash/slot) and offers them as a download, CRC-verified against the board's
own checksum. Grab staged image does the same on demand. A flash from a tool on its
own cable never touches the board's slot — there, the value is the comm capture: save the
.csv and reconstruct the image offline (same format the canlab pipeline reads).
A receive-only tap on a serial/K-line. Wire a second adapter's RX to the signal and ground to ground (TX left unconnected); pick the Baud of the link you are tapping. Packets are framed by idle gaps (Gap). One wire, two talkers, no direction — the hex is the decode.
Use a CANable/candleLight (gs_usb) adapter and select the CAN bitrate that matches the bus. The adapter must support hardware listen-only mode. The listener does not transmit CAN frames or acknowledgements. These adapters capture classic CAN frames.
Available adapters lists USB devices already granted to this site. Use Choose adapter to grant another device, or Refresh adapters after plugging one in. Browsers do not expose COM-port names here; serial ports are labeled by USB vendor/product IDs when provided. On Windows, the USB CAN interface must use WinUSB. Wi-Fi uses the GT-V1 address entered above.
The log card has a view switch:
The collapsible Oscilloscope is just a live line to confirm data is flowing and see its shape. The default trace is bus load (frames/s); pick an id + byte to watch that byte's value (0–255) move over time. It only runs while open.
Save .csv is the machine format (byte-identical to busa_line_listen.py); Save
.log is the human-readable companion. Both are a rolling window — a long flash keeps the most
recent records.