Remove raw output display and filter DSD startup banner lines

The dmrRawOutput div was rendering garbled box-drawing characters from
the dsd-fme ASCII art banner below the signal activity canvas. Remove
the div and filter banner lines (box-drawing chars, version info) in
the parser so they never become events.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Smittix
2026-02-07 12:52:59 +00:00
parent c0eda84644
commit 3b191dccd6
3 changed files with 8 additions and 6 deletions
+7
View File
@@ -97,6 +97,13 @@ def parse_dsd_output(line: str) -> dict | None:
if not line:
return None
# Skip DSD/dsd-fme startup banner lines (ASCII art, version info, etc.)
# These contain box-drawing characters or are pure decoration.
if re.search(r'[╔╗╚╝║═██▀▄╗╝╩╦╠╣╬│┤├┘└┐┌─┼█▓▒░]', line):
return None
if re.match(r'^\s*(Build Version|MBElib|CODEC2|Audio (Out|In)|Decoding )', line):
return None
ts = datetime.now().strftime('%H:%M:%S')
# Sync detection: "Sync: +DMR (data)" or "Sync: +P25 Phase 1"
+1 -5
View File
@@ -193,9 +193,7 @@ function handleDmrMessage(msg) {
} else if (msg.type === 'slot') {
// Update slot info in current call
} else if (msg.type === 'raw') {
// Raw DSD output — update last line display for diagnostics
const rawEl = document.getElementById('dmrRawOutput');
if (rawEl) rawEl.textContent = msg.text || '';
// Raw DSD output — triggers synthesizer activity via dmrSynthPulse
} else if (msg.type === 'heartbeat') {
// Decoder is alive and listening — keep synthesizer in listening state
if (isDmrRunning && dmrSynthInitialized) {
@@ -222,8 +220,6 @@ function handleDmrMessage(msg) {
if (typeof showNotification === 'function') {
showNotification('DMR Error', detail);
}
const rawEl = document.getElementById('dmrRawOutput');
if (rawEl) rawEl.textContent = detail;
} else if (msg.text === 'stopped') {
isDmrRunning = false;
updateDmrUI();
-1
View File
@@ -1623,7 +1623,6 @@
<span id="dmrSynthStatus" style="color: var(--text-muted); font-size: 9px; font-family: var(--font-mono);">IDLE</span>
</div>
<canvas id="dmrSynthCanvas" style="width: 100%; height: 70px; background: rgba(0,0,0,0.4); border-radius: 4px; display: block;"></canvas>
<div id="dmrRawOutput" style="font-size: 9px; font-family: var(--font-mono); color: var(--text-muted); margin-top: 4px; height: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;"></div>
</div>
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 12px;">
<!-- Call History Panel -->