From 80633e6d2ee1367c3fa9c5db0052beee8c2616cd Mon Sep 17 00:00:00 2001 From: c vw Date: Wed, 27 Jun 2018 17:11:35 +0200 Subject: [PATCH] Fixes for the piHPSDR backend. --- kenwood/kenwood.c | 4 ++-- kenwood/pihpsdr.c | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/kenwood/kenwood.c b/kenwood/kenwood.c index d104a4504..4b47c52f7 100644 --- a/kenwood/kenwood.c +++ b/kenwood/kenwood.c @@ -1427,7 +1427,7 @@ int kenwood_set_mode(RIG *rig, vfo_t vfo, rmode_t mode, pbwidth_t width) } } - if (priv->is_emulation) + if (priv->is_emulation || rig->caps->rig_model == RIG_MODEL_HPSDR) { /* emulations like PowerSDR and SmartSDR normally hijack the RTTY modes for SSB-DATA AFSK modes */ @@ -1624,7 +1624,7 @@ int kenwood_get_mode(RIG *rig, vfo_t vfo, rmode_t *mode, pbwidth_t *width) kmode = modebuf[offs] - 'A' + 10; } *mode = kenwood2rmode(kmode, caps->mode_table); - if (priv->is_emulation) + if (priv->is_emulation || rig->caps->rig_model == RIG_MODEL_HPSDR) { /* emulations like PowerSDR and SmartSDR normally hijack the RTTY modes for SSB-DATA AFSK modes */ diff --git a/kenwood/pihpsdr.c b/kenwood/pihpsdr.c index 1e945059b..e431e6110 100644 --- a/kenwood/pihpsdr.c +++ b/kenwood/pihpsdr.c @@ -656,7 +656,8 @@ int pihpsdr_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val) switch (level) { case RIG_LEVEL_RFPOWER: - /* XXX check level range */ + /* level is float between 0.0 and 1.0, maps to 0 ... 100 */ + kenwood_val = val.f * 100; sprintf(levelbuf, "PC%03d", kenwood_val); break;