From 34e4279a784fbbdb7e5cfbe1c1ab539e6cf18c33 Mon Sep 17 00:00:00 2001 From: Michael Black Date: Thu, 19 Dec 2019 07:46:03 -0600 Subject: [PATCH] Handling more errors on icom powerstat --- icom/icom.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/icom/icom.c b/icom/icom.c index 88c9893e9..443eaae1a 100644 --- a/icom/icom.c +++ b/icom/icom.c @@ -594,7 +594,9 @@ int icom_rig_open(RIG *rig) rig_debug(RIG_DEBUG_VERBOSE, "%s get_freq retval=%s\n", __func__, rigerror(retval)); - if (retval == RIG_ETIMEOUT || retval == RIG_ERJCTED) { rig_set_powerstat(rig, 1); } + if (retval == RIG_ETIMEOUT || retval == RIG_ERJCTED || retval == RIG_BUSERROR) { retval = rig_set_powerstat(rig, 1); } + + if (retval != RIG_OK) { rig_debug(RIG_DEBUG_WARN, "%s: unexpected retval here\n", __func__); } if (priv_caps->serial_USB_echo_check) { @@ -607,6 +609,10 @@ int icom_rig_open(RIG *rig) rig_debug(RIG_DEBUG_VERBOSE, "%s: USB echo on detected\n", __func__); return RIG_OK; } + else + { + return retval; + } retval = icom_transaction(rig, C_RD_TRXID, 0x00, NULL, 0, ackbuf, &ack_len); @@ -616,10 +622,14 @@ int icom_rig_open(RIG *rig) rig_debug(RIG_DEBUG_VERBOSE, "%s: USB echo off detected\n", __func__); return RIG_OK; } + else + { + return retval; + } } priv->serial_USB_echo_off = 0; - return retval; + return RIG_OK; }