diff --git a/yaesu/ft891.c b/yaesu/ft891.c index 21c17b717..a47f869e4 100644 --- a/yaesu/ft891.c +++ b/yaesu/ft891.c @@ -408,6 +408,7 @@ int ft891_set_split_mode(RIG *rig, vfo_t vfo, rmode_t tx_mode, pbwidth_t tx_widt { struct newcat_priv_data *priv; struct rig_state *state; + freq_t b_freq; int err; rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__); @@ -422,6 +423,11 @@ int ft891_set_split_mode(RIG *rig, vfo_t vfo, rmode_t tx_mode, pbwidth_t tx_widt priv = (struct newcat_priv_data *)rig->state.priv; + // Remember VFOB frequency + if (RIG_OK != (err = newcat_get_freq(rig,RIG_VFO_B,&b_freq))) { + return err; + } + // Change mode on VFOA and make VFOB match VFOA if (RIG_OK != (err = newcat_set_mode(rig,RIG_VFO_A,tx_mode,tx_width))) { return err; @@ -434,6 +440,11 @@ int ft891_set_split_mode(RIG *rig, vfo_t vfo, rmode_t tx_mode, pbwidth_t tx_widt return err; } + // Restore VFOB frequency + if (RIG_OK != (err = newcat_set_freq(rig,RIG_VFO_B,b_freq))) { + return err; + } + #if 0 if (RIG_OK != (err = newcat_get_cmd (rig))) return err;