Added RIG_LEVEL_BRIGHT -- IC705 has this level
Fixed range printout
https://github.com/Hamlib/Hamlib/issues/364
pull/369/head
Michael Black W9MDB 2020-09-06 12:28:35 -05:00
rodzic 120c6b2ca6
commit 24fb47cbe0
9 zmienionych plików z 296 dodań i 28 usunięć

Wyświetl plik

@ -880,7 +880,7 @@ enum rig_level_e {
RIG_LEVEL_NOTCHF_RAW = CONSTANT_64BIT_FLAG(36), /*!< \c NOTCHF_RAW -- Notch Freq., arg float [0.0 ... 1.0] */
RIG_LEVEL_MONITOR_GAIN = CONSTANT_64BIT_FLAG(37), /*!< \c MONITOR_GAIN -- Monitor gain (level for monitoring of transmitted audio), arg float [0.0 ... 1.0] */
RIG_LEVEL_NB = CONSTANT_64BIT_FLAG(38), /*!< \c NB -- Noise Blanker level, arg float [0.0 ... 1.0] */
RIG_LEVEL_39 = CONSTANT_64BIT_FLAG(39), /*!< \c Future use */
RIG_LEVEL_BRIGHT = CONSTANT_64BIT_FLAG(39), /*!< \c Display brightness */
RIG_LEVEL_40 = CONSTANT_64BIT_FLAG(40), /*!< \c Future use */
RIG_LEVEL_41 = CONSTANT_64BIT_FLAG(41), /*!< \c Future use */
RIG_LEVEL_42 = CONSTANT_64BIT_FLAG(42), /*!< \c Future use */

Wyświetl plik

@ -256,7 +256,8 @@
#define RIG_MODEL_ID4100 RIG_MAKE_MODEL(RIG_ICOM, 82)
#define RIG_MODEL_ID31 RIG_MAKE_MODEL(RIG_ICOM, 83)
#define RIG_MODEL_ID51 RIG_MAKE_MODEL(RIG_ICOM, 84)
/* next one is 85 */
#define RIG_MODEL_IC705 RIG_MAKE_MODEL(RIG_ICOM, 85)
/* next one is 86 */
/*

Wyświetl plik

@ -66,6 +66,14 @@ struct cmdparams ic7300_extcmds[] =
{ {.s = RIG_PARM_NONE} }
};
struct cmdparams ic705_extcmds[] =
{
{ {.s = RIG_PARM_BEEP}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x00, 0x29}, CMD_DAT_BOL, 1 },
{ {.s = RIG_LEVEL_VOXDELAY}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x03, 0x59}, CMD_DAT_INT, 1 },
{ {.s = RIG_PARM_SCREENSAVER}, C_CTL_MEM, S_MEM_PARM, SC_MOD_RW, 2, {0x01, 0x38}, CMD_DAT_INT, 1 },
{ {.s = RIG_PARM_NONE} }
};
/*
* IC-7300 S-meter levels measured from live signals on multiple bands. Provides a good approximation.
*/
@ -125,6 +133,14 @@ struct cmdparams ic7300_extcmds[] =
} }
/*
* IC705 items that differ from IC7300
*/
#define IC705_ALL_TX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR)
#define IC705_ALL_RX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_PKTLSB|RIG_MODE_PKTUSB|RIG_MODE_PKTFM|RIG_MODE_PKTAM|RIG_MODE_DSTAR)
#define IC705_OTHER_TX_MODES (RIG_MODE_FM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR)
#define IC705_LEVELS (RIG_LEVEL_PREAMP|RIG_LEVEL_ATT|RIG_LEVEL_AGC|RIG_LEVEL_COMP|RIG_LEVEL_BKINDL|RIG_LEVEL_NR|RIG_LEVEL_PBT_IN|RIG_LEVEL_PBT_OUT|RIG_LEVEL_CWPITCH|RIG_LEVEL_RFPOWER|RIG_LEVEL_MICGAIN|RIG_LEVEL_KEYSPD|RIG_LEVEL_NOTCHF_RAW|RIG_LEVEL_SQL|RIG_LEVEL_RAWSTR|RIG_LEVEL_STRENGTH|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_VOXGAIN|RIG_LEVEL_ANTIVOX|RIG_LEVEL_VOXDELAY|RIG_LEVEL_SWR|RIG_LEVEL_ALC|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB|RIG_LEVEL_BRIGHT)
/*
* IC9700 items that differ from IC7300
*/
@ -134,8 +150,8 @@ struct cmdparams ic7300_extcmds[] =
#define IC9700_LEVELS (RIG_LEVEL_PREAMP|RIG_LEVEL_ATT|RIG_LEVEL_AGC|RIG_LEVEL_COMP|RIG_LEVEL_BKINDL|RIG_LEVEL_NR|RIG_LEVEL_PBT_IN|RIG_LEVEL_PBT_OUT|RIG_LEVEL_CWPITCH|RIG_LEVEL_RFPOWER|RIG_LEVEL_MICGAIN|RIG_LEVEL_KEYSPD|RIG_LEVEL_NOTCHF_RAW|RIG_LEVEL_SQL|RIG_LEVEL_RAWSTR|RIG_LEVEL_STRENGTH|RIG_LEVEL_AF|RIG_LEVEL_RF|RIG_LEVEL_VOXGAIN|RIG_LEVEL_ANTIVOX|RIG_LEVEL_VOXDELAY|RIG_LEVEL_SWR|RIG_LEVEL_ALC|RIG_LEVEL_RFPOWER_METER|RIG_LEVEL_COMP_METER|RIG_LEVEL_VD_METER|RIG_LEVEL_ID_METER|RIG_LEVEL_MONITOR_GAIN|RIG_LEVEL_NB)
#define IC9700_VFO_OPS (RIG_OP_CPY|RIG_OP_XCHG|RIG_OP_FROM_VFO|RIG_OP_TO_VFO|RIG_OP_MCL)
#define IC9700_SCAN_OPS (RIG_SCAN_STOP|RIG_SCAN_MEM|RIG_SCAN_PROG|RIG_SCAN_SLCT)
#define IC9700_ALL_TX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR|RIG_MODE_DD|RIG_MODE_DSTAR)
#define IC9700_ALL_RX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR|RIG_MODE_DD|RIG_MODE_DSTAR)
#define IC9700_ALL_TX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR|RIG_MODE_DD)
#define IC9700_ALL_RX_MODES (RIG_MODE_FM|RIG_MODE_AM|RIG_MODE_CW|RIG_MODE_CWR|RIG_MODE_SSB|RIG_MODE_RTTY|RIG_MODE_RTTYR|RIG_MODE_DSTAR|RIG_MODE_DD)
struct cmdparams ic9700_extcmds[] =
{
@ -236,6 +252,23 @@ static const struct icom_priv_caps IC9700_priv_caps =
.extcmds = ic9700_extcmds, /* Custom op parameters */
};
static const struct icom_priv_caps IC705_priv_caps =
{
0xA4, /* default address */
0, /* 731 mode */
1, /* no XCHG to avoid display flickering */
ic705_ts_sc_list,
.serial_USB_echo_check = 1, /* USB CI-V may not echo */
.agc_levels_present = 1,
.agc_levels = {
{ .level = RIG_AGC_FAST, .icom_level = 1 },
{ .level = RIG_AGC_MEDIUM, .icom_level = 2 },
{ .level = RIG_AGC_SLOW, .icom_level = 3 },
{ .level = -1, .icom_level = 0 },
},
.extcmds = ic705_extcmds, /* Custom op parameters */
};
const struct rig_caps ic7300_caps =
{
RIG_MODEL(RIG_MODEL_IC7300),
@ -288,31 +321,26 @@ const struct rig_caps ic7300_caps =
.chan_list = {
{ 1, 99, RIG_MTYPE_MEM },
{ 100, 101, RIG_MTYPE_EDGE }, /* two by two */
RIG_CHAN_END,
},
.rx_range_list1 = { {kHz(30), MHz(74.8), IC7300_ALL_RX_MODES, -1, -1, IC7300_VFOS}, RIG_FRNG_END, },
.rx_range_list1 = {
{kHz(30), MHz(199.999999), IC705_ALL_RX_MODES, -1, -1, IC7300_VFOS}, RIG_FRNG_END,
{MHz(400), MHz(470), IC705_ALL_RX_MODES, -1, -1, IC7300_VFOS}, RIG_FRNG_END
},
.tx_range_list1 = {
FRQ_RNG_HF(1, IC7300_OTHER_TX_MODES, W(2), W(100), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_60m(1, IC7300_OTHER_TX_MODES, W(2), W(100), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_6m(1, IC7300_OTHER_TX_MODES, W(2), W(100), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_4m(1, IC7300_OTHER_TX_MODES, W(2), W(100), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_HF(1, IC7300_AM_TX_MODES, W(1), W(25), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_60m(1, IC7300_AM_TX_MODES, W(1), W(25), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_6m(1, IC7300_AM_TX_MODES, W(1), W(25), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_4m(1, IC7300_AM_TX_MODES, W(1), W(12.5), IC7300_VFOS, RIG_ANT_1), /* AM class */
RIG_FRNG_END,
},
.rx_range_list2 = { {kHz(30), MHz(74.8), IC7300_ALL_RX_MODES, -1, -1, IC7300_VFOS}, RIG_FRNG_END, },
.tx_range_list2 = {
FRQ_RNG_HF(2, IC7300_OTHER_TX_MODES, W(2), W(100), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_60m(2, IC7300_OTHER_TX_MODES, W(2), W(100), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_6m(2, IC7300_OTHER_TX_MODES, W(2), W(100), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_HF(2, IC7300_AM_TX_MODES, W(1), W(25), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_60m(2, IC7300_AM_TX_MODES, W(1), W(25), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_6m(2, IC7300_AM_TX_MODES, W(1), W(25), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_HF(1, IC705_OTHER_TX_MODES, W(2), W(10), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_60m(1, IC705_OTHER_TX_MODES, W(2), W(10), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_6m(1, IC705_OTHER_TX_MODES, W(2), W(10), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_4m(1, IC705_OTHER_TX_MODES, W(2), W(10), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_2m(1, IC705_OTHER_TX_MODES, W(2), W(10), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_70cm(1, IC705_OTHER_TX_MODES, W(2), W(10), IC7300_VFOS, RIG_ANT_1),
FRQ_RNG_HF(1, IC7300_AM_TX_MODES, W(1), W(2.5), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_60m(1, IC7300_AM_TX_MODES, W(1), W(2.5), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_6m(1, IC7300_AM_TX_MODES, W(1), W(2.5), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_4m(1, IC7300_AM_TX_MODES, W(1), W(2.5), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_2m(1, IC7300_AM_TX_MODES, W(1), W(2.5), IC7300_VFOS, RIG_ANT_1), /* AM class */
FRQ_RNG_70cm(1, IC7300_AM_TX_MODES, W(1), W(2.5), IC7300_VFOS, RIG_ANT_1), /* AM class */
RIG_FRNG_END,
},
@ -662,3 +690,207 @@ const struct rig_caps ic9700_caps =
.send_morse = icom_send_morse,
.send_voice_mem = icom_send_voice_mem
};
const struct rig_caps ic705_caps =
{
RIG_MODEL(RIG_MODEL_IC705),
.model_name = "IC-705",
.mfg_name = "Icom",
.version = BACKEND_VER ".0",
.copyright = "LGPL",
.status = RIG_STATUS_ALPHA,
.rig_type = RIG_TYPE_TRANSCEIVER,
.ptt_type = RIG_PTT_RIG,
.dcd_type = RIG_DCD_RIG,
.port_type = RIG_PORT_SERIAL,
.serial_rate_min = 4800,
.serial_rate_max = 19200,
.serial_data_bits = 8,
.serial_stop_bits = 1,
.serial_parity = RIG_PARITY_NONE,
.serial_handshake = RIG_HANDSHAKE_NONE,
.write_delay = 0,
.post_write_delay = 0,
.timeout = 1000,
.retry = 3,
.has_get_func = IC7300_FUNCS,
.has_set_func = IC7300_FUNCS,
.has_get_level = IC705_LEVELS,
.has_set_level = RIG_LEVEL_SET(IC705_LEVELS),
.has_get_parm = IC7300_PARMS,
.has_set_parm = RIG_PARM_SET(IC7300_PARMS),
.level_gran = {
[LVL_RAWSTR] = {.min = {.i = 0}, .max = {.i = 255}},
[LVL_VOXDELAY] = {.min = {.i = 0}, .max = {.i = 20}, .step = {.i = 1}},
[LVL_KEYSPD] = {.min = {.i = 6}, .max = {.i = 48}, .step = {.i = 1}},
[LVL_CWPITCH] = {.min = {.i = 300}, .max = {.i = 900}, .step = {.i = 1}},
},
.parm_gran = {},
.extlevels = NULL,
.ctcss_list = full_ctcss_list,
.dcs_list = NULL,
.preamp = { 1, 2, RIG_DBLST_END, },
.attenuator = { 20, RIG_DBLST_END, },
.max_rit = Hz(9999),
.max_xit = Hz(9999),
.max_ifshift = Hz(0),
.targetable_vfo = 0,
.vfo_ops = IC7300_VFO_OPS,
.scan_ops = IC7300_SCAN_OPS,
.transceive = RIG_TRN_RIG,
.bank_qty = 5,
.chan_desc_sz = 0,
.chan_list = {
{ 1, 99, RIG_MTYPE_MEM },
RIG_CHAN_END,
},
.rx_range_list1 = {
{kHz(30), MHz(199.999999), IC705_ALL_RX_MODES, -1, -1, IC7300_VFOS, RIG_ANT_1, "USA"},
{MHz(400), MHz(470), IC705_ALL_RX_MODES, -1, -1, IC7300_VFOS, RIG_ANT_1, "USA"},
RIG_FRNG_END,
},
.tx_range_list1 = {
{ kHz(1800), MHz(1.999999),IC705_ALL_TX_MODES, W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(3.5), MHz(3.999999),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(5.255), MHz(5.405),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(7.0), MHz(7.3),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(10.1), MHz(10.15),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(14.0), MHz(14.35),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(18.068), MHz(18.168),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(21.00), MHz(21.45),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(24.89), MHz(24.99),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(28.00), MHz(29.70),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(50.00), MHz(54.00),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(144.00), MHz(148.00),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
{ MHz(430.00), MHz(450.00),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "USA" },
RIG_FRNG_END,
},
.rx_range_list2 = {
{kHz(30), MHz(199.999999), IC705_ALL_RX_MODES, -1, -1, IC7300_VFOS, RIG_ANT_1, "EUR"},
{MHz(400), MHz(470), IC705_ALL_RX_MODES, -1, -1, IC7300_VFOS, RIG_ANT_1, "EUR"},
RIG_FRNG_END,
},
.tx_range_list2 = {
{ kHz(1810), MHz(1.999999),IC705_ALL_TX_MODES, W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(3.5), MHz(3.8),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(7.0), MHz(7.2),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(10.1), MHz(10.15),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(14.0), MHz(14.35),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(18.068), MHz(18.168),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(21.00), MHz(21.45),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(24.89), MHz(24.99),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(28.00), MHz(29.70),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(50.00), MHz(52.00),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(144.00), MHz(146.00),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
{ MHz(430.00), MHz(440.00),IC705_ALL_TX_MODES ,W(0.1) , W(10) , IC7300_VFOS, RIG_ANT_1, "EUR" },
RIG_FRNG_END,
},
.tuning_steps = {
{IC7300_ALL_RX_MODES, Hz(100)},
{IC7300_ALL_RX_MODES, kHz(.5)},
{IC7300_ALL_RX_MODES, kHz(1)},
{IC7300_ALL_RX_MODES, kHz(5)},
{IC7300_ALL_RX_MODES, kHz(6.25)},
{IC7300_ALL_RX_MODES, kHz(8.33)},
{IC7300_ALL_RX_MODES, kHz(9)},
{IC7300_ALL_RX_MODES, kHz(10)},
{IC7300_ALL_RX_MODES, kHz(12.5)},
{IC7300_ALL_RX_MODES, kHz(20)},
{IC7300_ALL_RX_MODES, kHz(25)},
{IC7300_ALL_RX_MODES, kHz(50)},
{IC7300_ALL_RX_MODES, kHz(100)},
RIG_TS_END,
},
/* mode/filter list, remember: order matters! But duplication may speed up search. Put the most commonly used modes first! Remember these are defaults, with dsp rigs you can change them to anything you want except FM and WFM which are fixed */
.filters = {
{RIG_MODE_SSB | RIG_MODE_PKTLSB | RIG_MODE_PKTUSB, kHz(3.6)},
{RIG_MODE_SSB | RIG_MODE_PKTLSB | RIG_MODE_PKTUSB, kHz(2.4)},
{RIG_MODE_SSB | RIG_MODE_PKTLSB | RIG_MODE_PKTUSB, kHz(1.8)},
{RIG_MODE_CW | RIG_MODE_CWR | RIG_MODE_RTTY | RIG_MODE_RTTYR, Hz(500)},
{RIG_MODE_CW | RIG_MODE_CWR | RIG_MODE_RTTY | RIG_MODE_RTTYR, Hz(250)},
{RIG_MODE_CW | RIG_MODE_CWR, kHz(1.2)},
{RIG_MODE_RTTY | RIG_MODE_RTTYR, kHz(2.4)},
{RIG_MODE_AM | RIG_MODE_PKTAM, kHz(6)},
{RIG_MODE_AM | RIG_MODE_PKTAM, kHz(3)},
{RIG_MODE_AM | RIG_MODE_PKTAM, kHz(9)},
{RIG_MODE_FM | RIG_MODE_PKTFM, kHz(10)},
{RIG_MODE_FM | RIG_MODE_PKTFM, kHz(7)},
{RIG_MODE_FM | RIG_MODE_PKTFM, kHz(15)},
RIG_FLT_END,
},
.str_cal = IC7300_STR_CAL,
.swr_cal = IC7300_SWR_CAL,
.alc_cal = IC7300_ALC_CAL,
.rfpower_meter_cal = IC7300_RFPOWER_METER_CAL,
.comp_meter_cal = IC7300_COMP_METER_CAL,
.vd_meter_cal = IC7300_VD_METER_CAL,
.id_meter_cal = IC7300_ID_METER_CAL,
.cfgparams = icom_cfg_params,
.set_conf = icom_set_conf,
.get_conf = icom_get_conf,
.priv = (void *)& IC705_priv_caps,
.rig_init = icom_init,
.rig_cleanup = icom_cleanup,
.rig_open = icom_rig_open,
.rig_close = icom_rig_close,
.set_freq = icom_set_freq,
.get_freq = icom_get_freq,
.set_mode = icom_set_mode_with_data,
.get_mode = icom_get_mode_with_data,
//.get_vfo = icom_get_vfo,
.set_vfo = icom_set_vfo,
.set_ant = NULL,
.get_ant = NULL,
.set_rit = icom_set_rit_new,
.get_rit = icom_get_rit_new,
.get_xit = icom_get_rit_new,
.set_xit = icom_set_xit_new,
.decode_event = icom_decode_event,
.set_level = icom_set_level,
.get_level = icom_get_level,
.set_ext_level = icom_set_ext_level,
.get_ext_level = icom_get_ext_level,
.set_func = icom_set_func,
.get_func = icom_get_func,
.set_parm = icom_set_parm,
.get_parm = icom_get_parm,
.set_mem = icom_set_mem,
.vfo_op = icom_vfo_op,
.scan = icom_scan,
.set_ptt = icom_set_ptt,
.get_ptt = icom_get_ptt,
.get_dcd = icom_get_dcd,
.set_ts = icom_set_ts,
.get_ts = icom_get_ts,
.set_rptr_shift = icom_set_rptr_shift,
.get_rptr_shift = icom_get_rptr_shift,
.set_rptr_offs = icom_set_rptr_offs,
.get_rptr_offs = icom_get_rptr_offs,
.set_ctcss_tone = icom_set_ctcss_tone,
.get_ctcss_tone = icom_get_ctcss_tone,
.set_ctcss_sql = icom_set_ctcss_sql,
.get_ctcss_sql = icom_get_ctcss_sql,
.set_split_freq = icom_set_split_freq,
.get_split_freq = icom_get_split_freq,
.set_split_mode = icom_set_split_mode,
.get_split_mode = icom_get_split_mode,
.set_split_vfo = icom_set_split_vfo,
.get_split_vfo = icom_get_split_vfo,
.set_powerstat = icom_set_powerstat,
.get_powerstat = icom_get_powerstat,
.power2mW = icom_power2mW,
.mW2power = icom_mW2power,
.send_morse = icom_send_morse,
.send_voice_mem = icom_send_voice_mem
};

Wyświetl plik

@ -353,6 +353,26 @@ const struct ts_sc_list r8600_ts_sc_list[] =
{0, 0},
};
const struct ts_sc_list ic705_ts_sc_list[] =
{
{10, 0x00},
{100, 0x01},
{500, 0x02},
{kHz(1), 0x03},
{kHz(5), 0x04},
{kHz(6.25), 0x05},
{kHz(8.33), 0x06},
{kHz(9), 0x07},
{kHz(10), 0x08},
{kHz(12.5), 0x09},
{kHz(20), 0x10},
{kHz(25), 0x11},
{kHz(50), 0x12},
{kHz(100), 0x13},
{0, 0x13}, /* programmable tuning step not supported */
{0, 0},
};
/* rtty filter list for some DSP rigs ie PRO */
@ -2633,6 +2653,11 @@ int icom_set_level(RIG *rig, vfo_t vfo, setting_t level, value_t val)
lvl_sc = S_LVL_MON;
break;
case RIG_LEVEL_BRIGHT:
lvl_cn = C_CTL_LVL;
lvl_sc = S_LVL_BRIGHT;
break;
default:
rig_debug(RIG_DEBUG_ERR, "%s: unsupported set_level %s", __func__,
rig_strlevel(level));
@ -7409,6 +7434,7 @@ DECLARE_INITRIG_BACKEND(icom)
rig_debug(RIG_DEBUG_VERBOSE, "%s: _init called\n", __func__);
rig_register(&ic703_caps);
rig_register(&ic705_caps);
rig_register(&ic706_caps);
rig_register(&ic706mkii_caps);
rig_register(&ic706mkiig_caps);

Wyświetl plik

@ -31,7 +31,7 @@
#include <sys/time.h>
#endif
#define BACKEND_VER "20200720"
#define BACKEND_VER "20200906"
/*
* defines used by comp_cal_str in rig.c
@ -202,6 +202,7 @@ extern const struct ts_sc_list r9000_ts_sc_list[];
extern const struct ts_sc_list r9500_ts_sc_list[];
extern const struct ts_sc_list ic756_ts_sc_list[];
extern const struct ts_sc_list ic756pro_ts_sc_list[];
extern const struct ts_sc_list ic705_ts_sc_list[];
extern const struct ts_sc_list ic706_ts_sc_list[];
extern const struct ts_sc_list ic7000_ts_sc_list[];
extern const struct ts_sc_list ic7100_ts_sc_list[];
@ -322,6 +323,7 @@ extern const struct confparams icom_ext_parms[];
extern const struct cmdparams icom_ext_cmds[];
extern const struct rig_caps ic703_caps;
extern const struct rig_caps ic705_caps;
extern const struct rig_caps ic706_caps;
extern const struct rig_caps ic706mkii_caps;
extern const struct rig_caps ic706mkiig_caps;

Wyświetl plik

@ -150,7 +150,8 @@
#define LVL_NB setting2idx_builtin(RIG_LEVEL_NB)
#define LVL_39 setting2idx_builtin(RIG_LEVEL_41)
#define LVL_BRIGHT setting2idx_builtin(RIG_LEVEL_BRIGHT)
#define LVL_40 setting2idx_builtin(RIG_LEVEL_40)
#define LVL_41 setting2idx_builtin(RIG_LEVEL_41)
#define LVL_42 setting2idx_builtin(RIG_LEVEL_42)

Wyświetl plik

@ -683,6 +683,7 @@ static struct
{ RIG_LEVEL_NOTCHF_RAW, "NOTCHF_RAW" },
{ RIG_LEVEL_MONITOR_GAIN, "MONITOR_GAIN" },
{ RIG_LEVEL_NB, "NB" },
{ RIG_LEVEL_BRIGHT, "BRIGHT" },
{ RIG_LEVEL_NONE, "" },
};

Wyświetl plik

@ -486,7 +486,7 @@ int dumpcaps(RIG *rig, FILE *fout)
status = range_sanity_check(caps->tx_range_list1, 0);
fprintf(fout,
"TX ranges #1 status for:%s \t%s (%d)\n", label1,
"TX ranges #1 status for %s:\t%s (%d)\n", label1,
status ? "Bad" : "OK",
status);

Wyświetl plik

@ -397,5 +397,10 @@ int dump_chan(RIG *rig, int chan_num)
printf("BKINDL: %d\n", chan.levels[rig_setting2idx(RIG_LEVEL_BKINDL)].i);
}
if (rig_has_set_level(rig, RIG_LEVEL_BRIGHT))
{
printf("BRIGHT: %d\n", chan.levels[rig_setting2idx(RIG_LEVEL_BRIGHT)].i);
}
return 0;
}