diff --git a/rigcommander.cpp b/rigcommander.cpp index c6c67c0..de544ed 100644 --- a/rigcommander.cpp +++ b/rigcommander.cpp @@ -2328,6 +2328,7 @@ void rigCommander::determineRigCaps() rigCaps.hasAttenuator = true; // Verify that all recent rigs have attenuators rigCaps.attenuators.push_back('\x00'); + rigCaps.preamps.push_back('\x00'); rigCaps.hasTransmit = true; @@ -2346,6 +2347,8 @@ void rigCommander::determineRigCaps() rigCaps.hasATU = true; rigCaps.hasCTCSS = true; rigCaps.attenuators.push_back('\x20'); + rigCaps.preamps.push_back('\x01'); + rigCaps.preamps.push_back('\x02'); break; case modelR8600: rigCaps.modelName = QString("IC-R8600"); @@ -2363,6 +2366,8 @@ void rigCommander::determineRigCaps() rigCaps.attenuators.push_back('\x10'); rigCaps.attenuators.push_back('\x20'); rigCaps.attenuators.push_back('\x30'); + rigCaps.preamps.push_back('\x01'); + rigCaps.preamps.push_back('\x02'); break; case model9700: rigCaps.modelName = QString("IC-9700"); @@ -2381,6 +2386,8 @@ void rigCommander::determineRigCaps() rigCaps.hasCTCSS = true; rigCaps.hasDTCS = true; rigCaps.attenuators.push_back('\x10'); + rigCaps.preamps.push_back('\x01'); + rigCaps.preamps.push_back('\x02'); // also 3 and 4, but these are external preamp control break; case model7610: rigCaps.modelName = QString("IC-7610"); @@ -2400,6 +2407,8 @@ void rigCommander::determineRigCaps() '\x15', '\x18', '\x21', '\x24',\ '\x27', '\x30', '\x33', '\x36', '\x39', '\x42', '\x45'}); + rigCaps.preamps.push_back('\x01'); + rigCaps.preamps.push_back('\x02'); break; case model7850: rigCaps.modelName = QString("IC-785x"); @@ -2419,6 +2428,8 @@ void rigCommander::determineRigCaps() rigCaps.attenuators.insert(rigCaps.attenuators.end(), {'\x03', '\x06', '\x09', '\x12', '\x15', '\x18', '\x21'}); + rigCaps.preamps.push_back('\x01'); + rigCaps.preamps.push_back('\x02'); break; case model705: rigCaps.modelName = QString("IC-705"); @@ -2436,7 +2447,9 @@ void rigCommander::determineRigCaps() rigCaps.hasATU = true; rigCaps.hasCTCSS = true; rigCaps.hasDTCS = true; - rigCaps.attenuators = { '\x10' , '\x20'}; + rigCaps.attenuators.insert(rigCaps.attenuators.end(),{ '\x10' , '\x20'}); + rigCaps.preamps.push_back('\x01'); + rigCaps.preamps.push_back('\x02'); break; case model7100: rigCaps.modelName = QString("IC-7100"); @@ -2450,6 +2463,8 @@ void rigCommander::determineRigCaps() rigCaps.hasCTCSS = true; rigCaps.hasDTCS = true; rigCaps.attenuators.push_back('\x12'); + rigCaps.preamps.push_back('\x01'); + rigCaps.preamps.push_back('\x02'); break; case model706: rigCaps.modelName = QString("IC-706"); diff --git a/rigidentities.h b/rigidentities.h index 5aafb39..17c37ab 100644 --- a/rigidentities.h +++ b/rigidentities.h @@ -70,6 +70,7 @@ struct rigCapabilities { bool hasAttenuator; //QVector attenuators; std::vector attenuators; + std::vector preamps; };