diff --git a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js
index 66a6e63..4a327e2 100644
--- a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js
+++ b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js
@@ -3182,10 +3182,9 @@ function clearSpectrumCanvas() {
}
function formatOverlayPs(ps) {
- const padded = String(ps ?? "")
+ return String(ps ?? "")
.slice(0, 8)
- .padEnd(8, " ");
- return padded.replaceAll(" ", "_");
+ .padEnd(8, "_");
}
function formatOverlayPi(pi) {
@@ -3199,8 +3198,8 @@ function formatOverlayPty(pty) {
}
async function copyRdsPsToClipboard() {
- const ps = lastSpectrumData?.rds?.program_service?.trim();
- if (!ps) {
+ const ps = lastSpectrumData?.rds?.program_service;
+ if (!ps || ps.length === 0) {
showHint("No RDS PS", 1200);
return;
}
@@ -3223,8 +3222,8 @@ if (rdsPsValueEl) {
function updateRdsPsOverlay(rds) {
// Overview strip overlay
if (rdsPsOverlay) {
- const ps = rds?.program_service?.trim();
- if (ps) {
+ const ps = rds?.program_service;
+ if (ps && ps.length > 0) {
rdsPsOverlay.innerHTML =
`${escapeMapHtml(formatOverlayPs(ps))}` +
`${escapeMapHtml(formatOverlayPi(rds?.pi))} ยท ${escapeMapHtml(formatOverlayPty(rds?.pty))}`;
diff --git a/src/trx-server/trx-backend/trx-backend-soapysdr/src/lib.rs b/src/trx-server/trx-backend/trx-backend-soapysdr/src/lib.rs
index a656134..65ae832 100644
--- a/src/trx-server/trx-backend/trx-backend-soapysdr/src/lib.rs
+++ b/src/trx-server/trx-backend/trx-backend-soapysdr/src/lib.rs
@@ -476,9 +476,6 @@ impl RigCat for SoapySdrRig {
.channel_dsps
.get(self.primary_channel_idx)
.and_then(|dsp| dsp.lock().ok().and_then(|d| d.rds_data()));
- if let Some(ref r) = rds {
- tracing::debug!("RDS: pi={:?} ps={:?} pty={:?}({})", r.pi, r.program_service, r.pty, r.pty_name.as_deref().unwrap_or("?"));
- }
Some(SpectrumData {
bins,
center_hz: self.center_hz.max(0) as u64,