Skip to content

Releases: zonfacter/Logger

RS485 Sniffer v1.6.6

15 Jan 14:32
349b9c0

Choose a tag to compare

βœ… RS485 Sniffer v1.6.6 Complete Package
Das ZIP-Paket ist fertig und kann ΓΌber den Download-Button OBEN heruntergeladen werden.

πŸ“¦ Paketinhalt
Tabelle

Datei Grâße Beschreibung
rs485_sniffer_v1.6.6.py 83 KB Hauptanwendung mit Multi-Frame Support
plugin_api.py 4 KB Plugin API v1.2.0
plugins/hausbus_plugin.py 27 KB HausBus Plugin v1.2.0 mit Frame-Buffering
plugins/rflink_plugin.py 3 KB RFLink Beispiel-Plugin
rs485_sniffer.spec 1 KB PyInstaller Konfiguration
build_exe.bat 1 KB Build-Script fΓΌr Windows
README.md 2 KB Dokumentation
πŸ”§ Kritische Fixes in v1.6.6
Multi-Frame Support: Plugins kΓΆnnen jetzt get_pending_frames() implementieren
Korrekte Verarbeitung: Mehrere Telegramme in einem Chunk werden alle verarbeitet
Frame-Buffering: HausBus Plugin v1.2.0 puffert fragmentierte Daten korrekt
πŸ“‹ Installation
bash

Kopieren

Entpacken

unzip RS485_Sniffer_v1.6.6_Complete.zip

Starten

cd RS485_Sniffer_v1.6.6
python rs485_sniffer_v1.6.6.py

Oder als EXE kompilieren

build_exe.bat

RS485 Sniffer v1.6.4

14 Jan 14:57
fa84e86

Choose a tag to compare

Version 1.6.4 - Kritischer Fix
πŸ“ Technische Γ„nderungen
StdoutRedirector (neu):

python

Kopieren
def write(self, msg: str) -> None:
if self._in_write: # Rekursionsschutz
if self._original_stderr:
self._original_stderr.write(msg)
return

self._in_write = True
try:
    self.logger.log(self.level, msg.strip())
finally:
    self._in_write = False

_setup_debug_logging (neu):

python

Kopieren

VerzΓΆgerte Initialisierung

self.root.after(100, delayed_redirect) # stdout/stderr
self.root.after(200, lambda: logger.info("...")) # Log

RS485 Sniffer v1.6.3

14 Jan 14:45
80ab58d

Choose a tag to compare

πŸ†• Neue Features in v1.6.3

Tabelle
Feature | Beschreibung -- | -- πŸ› Debug Console Tab | Neuer Tab zeigt alle Log-Meldungen und Fehler EXE-Modus Redirect | stdout/stderr werden automatisch zur Debug Console umgeleitet Log-Level Filter | WΓ€hle zwischen DEBUG, INFO, WARNING, ERROR Clear/Copy/Save | Debug-Log leeren, kopieren oder als Datei speichern Verbessertes Exception-Handling | Mehr Details bei Fehlern in _process_sniffer_data

πŸ“‹ Debug Console Funktionen

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ πŸ› Debug Console                                        β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ [Clear] [Copy All] [Save Log]    Level: [DEBUG β–Ό]       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ [12:34:56.789] INFO     root: Debug console initialized β”‚
β”‚ [12:34:56.790] DEBUG    Sniffer: Processed 5 packets    β”‚
β”‚ [12:34:57.123] ERROR    Sniffer: Error displaying data  β”‚
β”‚ ...                                                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

RS485 Sniffer v1.6.2

14 Jan 13:52
cfed876

Choose a tag to compare

Delete RS485_Sniffer directory

RS485 Sniffer v1.6.1

14 Jan 11:37
8c2480d

Choose a tag to compare

RS485 Sniffer v1.6.1

New Features in v1.6.1

πŸ”Œ Plugin Manager UI

  • New "Plugin Manager" tab in the application
  • View all discovered plugins with version info
  • Enable/Disable plugins at runtime
  • "Open Plugins Folder" button
  • "Refresh" button to rescan plugins

πŸ“ Telegram Length Display

  • Terminal now shows byte count for each message
  • Format: [12:34:56] RX (128B): 02 48 65 6C 6C 6F...

πŸ”§ Plugin Loading Fixes

  • Fixed plugin class detection
  • Plugins no longer require external imports
  • Each plugin is now fully standalone

Installation

  1. Install Python 3.7+ (3.9 for Windows 7)
  2. Install pyserial: pip install pyserial
  3. Extract ZIP to a folder
  4. Run: python rs485_sniffer_v1.6.1.py

Included Plugins

RFLink Plugin v1.1.0

  • Decodes RFLink RF gateway protocol
  • Shows discovered devices
  • Message log with decoded fields

HausBus Plugin v1.1.0

  • Decodes HausBus home automation protocol
  • Frame format: STX LEN DST SRC TYPE DATA CRC ETX
  • Device registry with message count

Plugin Development

Plugins are standalone Python modules. Each plugin must:

  1. Have an info property returning PluginInfo
  2. Have on_load(gui, sniffer) method
  3. Optionally have create_tab(notebook) method

See included plugins for examples.

Changelog

v1.6.1 (2025-01-14)

  • Added: Plugin Manager UI tab
  • Added: Telegram length display in terminal
  • Fixed: Plugin loading and class detection
  • Fixed: Plugins are now standalone (no external imports)

v1.6.0 (2025-01-14)

  • Added: Integrated Statistics Panel
  • Added: Enhanced Send Panel with preview
  • Added: Log Export (.txt, .csv, .log)
  • Added: Start/End Byte configuration

Logger

14 Jan 08:56
56aab3b

Choose a tag to compare

Es wurde nur Hausbus Plugin erweitert

Logger

14 Jan 07:54
1ed8c6e

Choose a tag to compare

v1.5.1

Add files via upload

Logger

13 Jan 15:11
d3d87ce

Choose a tag to compare

Hauptfeatures der Version 1.4.0:
πŸ“Š Busauslastung

Live-Anzeige: Prozentbalken + Zahlenwert mit Farbcodierung (grΓΌn/orange/rot)
Gleitender Durchschnitt: Berechnung ΓΌber 1-Sekunden-Fenster
Korrekte Berechnung: BerΓΌcksichtigt Startbit, Datenbits, ParitΓ€tsbit und Stopbits

πŸ“ˆ Statistik-Panel (rechts)

Aktuelle Werte (1s Fenster)

Bytes/Sekunde
Bits/Sekunde
Auslastung in %

Spitzenwerte

HΓΆchste Auslastung seit Start
HΓΆchste Datenrate

Gesamtstatistik

Total Bytes/Frames
Laufzeit (H:MM:SS)
Durchschnittliche Bytes/s

Konfiguration

Baudrate
Bits pro Byte (detailliert aufgeschlΓΌsselt)

🎯 Berechnungsbeispiel
Bei 115200 Baud, 8N1:

10 Bits/Byte (1 Start + 8 Data + 1 Stop)
Max. 11.520 Bytes/s theoretisch
Bei 5.000 Bytes/s β†’ 43.4% Auslastung

Logger

12 Jan 15:30
6589d0b

Choose a tag to compare

V1.3.0

Neue Features in v1.3.0
Tabelle


Feature	Beschreibung
Multi-Byte Delimiter	z.B. 0D0A fΓΌr CRLF, FE fΓΌr HausBus
Timeout-Framing	Frame endet nach X ms Stille (einstellbar)
Kombinierter Modus	Delimiter ODER Timeout (was zuerst kommt)
ASCII+Hex Dual-View	Beide Ansichten gleichzeitig
Preset-Buttons	CRLF, LF, 0xFE, 50ms, 100ms
Farbige Ausgabe	TX=blau, Fehler=rot, Info=grau
Bedienung
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Modus:  β—‹ Delimiter  β—‹ Timeout  ● Beides  β—‹ RAW            β”‚
β”‚                                                             β”‚
β”‚ Delimiter (Hex): [0D0A]    Timeout (ms): [50]  [Anwenden]  β”‚
β”‚                                                             β”‚
β”‚ Presets: [CRLF] [LF] [0xFE] [50ms] [100ms]                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
Empfohlene Einstellungen fΓΌr dein ESP32:
Tabelle


Einstellung	Wert
Modus	Beides
Delimiter	0D0A (CRLF)
Timeout	50 ms
Installation & Start
bash

Kopieren
pip install pyserial
python rs485_sniffer_v1.3.0.py

Logger

12 Jan 15:20
2357d96

Choose a tag to compare

V1.1.2

V1.1.20