Skip to content

WaveCrux 1.1.0

Choose a tag to compare

@martin-robert-fink martin-robert-fink released this 19 Oct 16:58

The first feature release since 1.0. Cleaning up a crowded canvas is now one
step instead of dozens, the transaction table shows every transaction a
decoder finds, and more of WaveCrux is free: sending a cross-probe and joining
a collaborative session no longer need a licence. The PCIe TLP decoder in Pro
grows into a full transaction analyzer, and remote control over WCP is ready
for scripts and CI.

New

  • Remove signals in bulk, with Undo. View ▸ Clear Canvas takes every
    row off the active tab and leaves the file, cursors, markers, decoders and
    zoom alone. A group's menu adds Remove Group and Signals (the old
    Remove Group is now Ungroup, which is what it always did), and a
    scope in the signal tree adds Remove All in Scope beside Add All in
    Scope
    . Every removal, including a single ×, can be undone.
  • Cross-probing is free in every edition. Sending a selection to another
    EDACrux app no longer needs a licence; receiving never did.
  • Joining a collaborative session is free. Anyone with WaveCrux can join
    and follow a session. Hosting one (Share Session) stays Enterprise, and
    exporting the session recording and review minutes is for the host.
  • The transaction table has no row cap. It used to stop at 2,000
    transactions; the rows are now drawn as you scroll, so a long trace shows
    every transaction, with the same keyboard and screen reader behavior.
  • Decoder plugins can size a signal from a parameter. A manifest signal can
    name the parameter that sets its width (plugin ABI 1.2), so one decoder
    covers a bus that comes in several widths. Signal pickers and auto-bind now
    list every name of an aliased signal, and use the decoder's configured width
    for built-in decoders too.
  • Decoders a build cannot load stay visible. A session that names a Pro
    decoder, or one from a plugin that is not installed, now shows it as "Not
    available in this build" instead of keeping it out of sight, and you can
    remove it on purpose.
  • Remote control from the command line. --wcp-port <n> or
    WAVECRUX_WCP_PORT turns on the WCP server for one process without touching
    your settings, so a script, a CI job or a second instance can each listen on
    its own port. Port 0 picks a free one and prints it.
  • GTKWave save files import more faithfully. A .gtkw import now applies
    its translate filters, zoom, scroll position and open scopes, not only the
    trace list, markers and cursor.
  • Branded theme presets use their designed colors. Solarized Dark, High
    Contrast Dark, Oscilloscope and OLED XR now paint their own cursor, marker
    and ruler colors, and theme colors reach the main toolbar.
  • PCIe TLP decoder (Pro). It reads 64, 128 and 256-bit beats with byte
    enables, ships presets for Xilinx 7 Series, UltraScale (CQ, CC, RQ and RC)
    and Intel Avalon-ST, pairs completions with their requests to measure
    latency and catch tag errors, checks the PCIe Base Specification
    transaction rules, and adds transaction statistics with a JSON export. The
    reset signal is optional.
  • Debug Advisor (Pro). Each finding now points at the moment it is about,
    so View causal chain traces from the right time, and an X-trace that
    cannot run says why. Zero-delay RTL dumps no longer produce setup and hold
    warnings for registers that change on their own clock edge.
  • A command palette button on tablets. Phones and tablets get a toolbar
    button for the command palette, so it no longer needs a hardware keyboard.
  • Crash detection. If a desktop session ends without a clean exit, the next
    launch sends one event that says so. It carries nothing beyond the standard
    fields usage statistics already send, and it follows the same setting in
    Settings ▸ Privacy: with usage statistics off, nothing is sent.
  • No identifier while usage statistics are off. With them off, the app
    keeps no installation identifier; turning them back on creates a new one.
    On first launch, the default now reads your operating system's region
    setting as well as its language.

Fixed

  • Third-party decoder plugins load on macOS. The notarized app refused any
    plugin library not signed by Ferrite Engineering. The plugin safety notice
    and the optional content-hash allowlist remain the controls.
  • The AXI4-Lite decoder handles pipelined traffic. Several outstanding
    writes and reads are legal AXI4-Lite; the decoder flagged the second as a
    violation and could pair a write response with the wrong address and data.
    Writes and reads still unanswered at the end of the trace are now listed.
  • The live cross-probe broadcast sends. Selecting a signal now reaches
    connected EDACrux apps automatically, as the per-peer send button always did,
    including when the clicked row was already the focus.
  • Remote control (WCP) follows the specification. reload keeps the
    displayed items, cursors and markers; load with no tab open opens one;
    viewport commands report an error when they cannot take effect; every row
    has its own item id; focus_item and set_item_color work for clients that
    follow the specification, and the latter accepts color names and #RGB;
    add_markers takes any marker name.
  • Escape in an open menu closes the menu instead of also clearing the
    cursors.
  • Enterprise session templates apply to the first tab after a cold start,
    instead of the tab opening before the template arrived.

Also

  • Interface polish across the app: two open files with the same name show the
    folder that tells them apart; the "source changed" prompt is the same banner
    in every EDACrux app and can be declined; Split Pane Right needs two tabs
    to split; command palette shortcut hints are readable on the selected row;
    focus rings no longer crowd their text; an empty panel tells a screen reader
    what belongs there; and on macOS the window reopens where you left it, on
    the same display.
  • The Linux build now needs glibc 2.35 instead of 2.38, so it runs on Ubuntu
    22.04 and Debian 12.
  • The Linux packages register WaveCrux's file types, so waveforms open from
    the file manager, and the Windows uninstaller removes the install folder it
    leaves behind.
  • Cross-probing between EDACrux apps now proves the identity of both ends
    without sending the connection token over the wire. 1.0 apps still connect.
  • Built with Flutter 3.47.5.
  • Other performance and quality enhancements.

Download: https://wavecrux.app/download