Hexwire

Ein serielles Terminal, das jedes Byte zeigt und keins verschluckt. Es öffnet mehrere Ports gleichzeitig, zeigt ASCII, Hex, Dezimal und Binär nebeneinander, reagiert auf eingehende Muster und schneidet auch über Stunden lückenlos mit. Für Windows, macOS und Linux, kostenlos und ohne Konto.

Hexwire mit zwei Verbindungs-Tabs, Zeitstempeln und dem laufenden RX-Stream eines Messgeräts

Was Hexwire kann

Für Fälle, in denen ein einfaches Terminalfenster nicht mehr reicht: mehrere Geräte, unklare Protokolle, lange Messreihen.

Mehrere Verbindungen

  • Jeder Tab hält seinen Port exklusiv, mit eigener Konfiguration
  • Beliebige Baudraten, 5–8 Datenbits, 1/1.5/2 Stoppbits, alle Paritäten
  • DTR, RTS, Break und Modemstatus direkt schaltbar
  • Senden mit CTS-Gate, jederzeit abbrechbar
  • Tabs und Profile werden gesichert, das Gerät aber nie von selbst geöffnet

Jedes Byte sichtbar

  • ASCII, Hex, Dezimal und Binär, für Ein- und Ausgabe getrennt wählbar
  • RX und TX chronologisch in einem Stream, mit Zeitstempeln
  • Steuerzeichen und Zeilenumbrüche werden dargestellt, nicht geschluckt
  • Filter und Suche über den laufenden Verlauf
  • Ringpuffer von 1 bis 100 MiB, Lücken werden nachgeladen

Trigger statt Mitlesen

  • Beliebig viele RX-Trigger auf ASCII-, Hex- oder Dezimalfolgen
  • Systembenachrichtigung, sobald ein Muster auftaucht
  • Alarmverlauf in der App, auch für unbeobachtete Zeiträume
  • Wiederkehrende Sendebefehle einmal anlegen, in jedem Tab nutzen
  • Dateien am Stück senden, mit Fortschritt und Abbruch

Mitschnitte, die auch später belastbar sind

Hexwire schreibt die Daten im Backend mit, bevor die Oberfläche sie bekommt. Was auf der Leitung lag, steht deshalb vollständig in der Datei, auch wenn die Anzeige bei hoher Datenrate nicht hinterherkommt.

Drei Formate

  • Roh-RX, exakt wie empfangen
  • Lesbarer, kombinierter Verlauf für die Fehlersuche
  • JSONL verlustfrei, mit Richtung, Sequenz und Zeit

Automation

  • Senden, Warten, auf Muster warten
  • Datei übertragen, Leitungen schalten, Break senden
  • Schleifen mit fester Obergrenze

Bleibt lokal

  • Kein Konto, keine Anmeldung
  • Keine Telemetrie, keine Cloud
  • Einstellungen liegen im Konfigurationsordner des Systems

Der Logger-Modus ohne Oberfläche

Für Dauermessungen bringt Hexwire einen Modus ohne Oberfläche mit. Jeder Port läuft für sich: Ist ein Gerät nicht da oder wird es abgezogen, bleibt sein Eintrag im Zustand waiting und wird nach dem eingestellten Intervall erneut geöffnet. Die übrigen Ports laufen ohne Unterbrechung weiter.

hexwire logger \
  --port /dev/ttyUSB0 \
  --port /dev/ttyUSB1 \
  --baud 9600 \
  --output-dir ./logs \
  --retry 5s \
  --sync-time

Dazu gehört ein kleines Dashboard unter http://localhost:9669. Es zeigt Portzustände und neue Zeilen live per WebSocket und bietet die Logdateien zum Download an. GET /api/health und GET /api/ports liefern denselben Stand als JSON.

Das Dashboard kennt keine Benutzeranmeldung und kann Logs herunterladen und löschen. Es hört deshalb ab Werk nur auf 127.0.0.1. Wer es im Netz braucht, setzt --listen 0.0.0.0:9669 bewusst, und zwar nur im vertrauenswürdigen LAN, über VPN oder hinter einem Reverse Proxy mit Authentifizierung.

Für den Dauerbetrieb gibt es den Logger zusätzlich als eigenständige Binary ohne GTK- und WebKit-Abhängigkeit, auch für ARM. So kann etwa ein Raspberry Pi die Messung übernehmen, während der Rechner aus ist.

Downloads

Kostenlos und ohne Konto. Jeder Link liefert die neueste Version. Dein System ist vorausgewählt, die Pakete für alle anderen stehen daneben.

Windows

Windows 10 oder neuer. Den Treiber für den USB-Seriell-Adapter bringt Windows mit.

App mit Oberfläche

Portable EXE: herunterladen und starten, ohne Installation und ohne Adminrechte.

  • Windows (x86-64)

    hexwire-windows-amd64-portable.exe13 MiB

    Herunterladen
  • Windows on ARM (arm64)

    hexwire-windows-arm64-portable.exe12 MiB

    Herunterladen

Logger ohne Oberfläche

Eine einzelne Binary für Dauermessungen, Dienste und Rechner ohne Bildschirm.

  • Windows (x86-64)

    hexwire-logger-windows-amd64.exe13 MiB

    Herunterladen
  • Windows on ARM (arm64)

    hexwire-logger-windows-arm64.exe12 MiB

    Herunterladen

macOS

macOS 12 oder neuer. Entpacken, nach „Programme“ ziehen und beim ersten Start über „Öffnen“ im Kontextmenü starten.

App mit Oberfläche

Universal Binary im ZIP, läuft nativ auf Apple Silicon und auf Intel-Macs.

  • macOS (Apple Silicon und Intel)

    hexwire-macos-universal.zip10 MiB

    Herunterladen

Logger ohne Oberfläche

Eine einzelne Binary für Dauermessungen, Dienste und Rechner ohne Bildschirm.

  • macOS (Apple Silicon und Intel)

    hexwire-logger-darwin-universal22 MiB

    Herunterladen
    Im Terminal
    curl -L -o hexwire-logger https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-logger-darwin-universal
    sudo install -m 0755 hexwire-logger /usr/local/bin/hexwire-logger
  • macOS (Apple Silicon, arm64)

    hexwire-logger-darwin-arm6411 MiB

    Herunterladen
    Im Terminal
    curl -L -o hexwire-logger https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-logger-darwin-arm64
    sudo install -m 0755 hexwire-logger /usr/local/bin/hexwire-logger
  • macOS (Intel, x86-64)

    hexwire-logger-darwin-amd6412 MiB

    Herunterladen
    Im Terminal
    curl -L -o hexwire-logger https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-logger-darwin-amd64
    sudo install -m 0755 hexwire-logger /usr/local/bin/hexwire-logger

Linux

Der Zugriff auf den Port läuft über die Gruppe dialout. Einmalig sudo usermod -aG dialout $USER ausführen und neu anmelden.

App mit Oberfläche

Das AppImage läuft ohne Installation, .deb und .rpm legen einen Menüeintrag an. Alle drei für x86-64.

  • AppImage (x86-64)

    hexwire-linux-amd64.AppImage102 MiB

    Herunterladen
    Im Terminal
    curl -L -o hexwire.AppImage https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-linux-amd64.AppImage
    chmod +x hexwire.AppImage
    ./hexwire.AppImage
  • Debian und Ubuntu (x86-64)

    hexwire-linux-amd64.deb5 MiB

    Herunterladen
    Im Terminal
    curl -LO https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-linux-amd64.deb
    sudo apt install ./hexwire-linux-amd64.deb
  • Fedora und openSUSE (x86-64)

    hexwire-linux-amd64.rpm6 MiB

    Herunterladen
    Im Terminal
    curl -LO https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-linux-amd64.rpm
    sudo dnf install ./hexwire-linux-amd64.rpm

Logger ohne Oberfläche

Ohne GTK- und WebKit-Abhängigkeit, auch für ARM, etwa für einen Raspberry Pi, der die Messung übernimmt.

  • Linux (x86-64)

    hexwire-logger-linux-amd6412 MiB

    Herunterladen
    Im Terminal
    curl -L -o hexwire-logger https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-logger-linux-amd64
    sudo install -m 0755 hexwire-logger /usr/local/bin/hexwire-logger
  • Linux (arm64, Raspberry Pi 3 und neuer, 64 Bit)

    hexwire-logger-linux-arm6411 MiB

    Herunterladen
    Im Terminal
    curl -L -o hexwire-logger https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-logger-linux-arm64
    sudo install -m 0755 hexwire-logger /usr/local/bin/hexwire-logger
  • Linux (armv7, 32 Bit)

    hexwire-logger-linux-arm11 MiB

    Herunterladen
    Im Terminal
    curl -L -o hexwire-logger https://git.mc8051.de/rockit.ruhr/hexwire/releases/download/latest/hexwire-logger-linux-arm
    sudo install -m 0755 hexwire-logger /usr/local/bin/hexwire-logger

Die Prüfsummen liegen als SHA256SUMS.txt im Release, ältere Versionen bei den Releases.

Fehlt etwas oder tritt ein Problem auf?

Hexwire ist bei der Arbeit an eigener Hardware entstanden und wächst mit jedem neuen Anwendungsfall. Schreib uns, wenn dein Protokoll noch nicht richtig dargestellt wird oder du Hilfe bei einem eigenen Projekt brauchst.