diff --git a/rigs/kenwood/kenwood.c b/rigs/kenwood/kenwood.c index 96b628c53..86aaee904 100644 --- a/rigs/kenwood/kenwood.c +++ b/rigs/kenwood/kenwood.c @@ -699,6 +699,17 @@ int kenwood_open(RIG *rig) err = kenwood_get_id(rig, id); + if (err == RIG_OK) { // some rigs give ID while in standby + powerstat_t powerstat = 0; + rig_debug(RIG_DEBUG_TRACE, "%s: got ID so try PS\n", __func__); + err = rig_get_powerstat(rig, &powerstat); + if (err == RIG_OK && powerstat == 0) + { + rig_debug(RIG_DEBUG_TRACE, "%s: got PS0 so powerup\n", __func__); + rig_set_powerstat(rig, 1); + } + } + if (err == -RIG_ETIMEOUT) { // Ensure rig is on