Add FT818 to rigs as copy of FT817

pull/345/head
Michael Black W9MDB 2020-07-02 12:31:09 -05:00
rodzic 1ad029bfb3
commit df3285de60
4 zmienionych plików z 141 dodań i 0 usunięć

Wyświetl plik

@ -117,6 +117,7 @@
#define RIG_MODEL_FT847UNI RIG_MAKE_MODEL(RIG_YAESU, 38)
#define RIG_MODEL_FT600 RIG_MAKE_MODEL(RIG_YAESU, 39)
#define RIG_MODEL_FTDX101D RIG_MAKE_MODEL(RIG_YAESU, 40)
#define RIG_MODEL_FT818 RIG_MAKE_MODEL(RIG_YAESU, 41)
/*

Wyświetl plik

@ -297,6 +297,144 @@ const struct rig_caps ft817_caps =
.vfo_op = ft817_vfo_op,
};
const struct rig_caps ft818_caps =
{
RIG_MODEL(RIG_MODEL_FT818),
.model_name = "FT-818",
.mfg_name = "Yaesu",
.version = "20200629.0",
.copyright = "LGPL",
.status = RIG_STATUS_STABLE,
.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 = 38400,
.serial_data_bits = 8,
.serial_stop_bits = 2,
.serial_parity = RIG_PARITY_NONE,
.serial_handshake = RIG_HANDSHAKE_NONE,
.write_delay = FT817_WRITE_DELAY,
.post_write_delay = FT817_POST_WRITE_DELAY,
.timeout = FT817_TIMEOUT,
.retry = 5,
.has_get_func = RIG_FUNC_NONE,
.has_set_func = RIG_FUNC_LOCK | RIG_FUNC_TONE | RIG_FUNC_TSQL,
.has_get_level = RIG_LEVEL_STRENGTH | RIG_LEVEL_RAWSTR | RIG_LEVEL_RFPOWER,
.has_set_level = RIG_LEVEL_NONE,
.has_get_parm = RIG_PARM_NONE,
.has_set_parm = RIG_PARM_NONE,
.level_gran = {}, /* granularity */
.parm_gran = {},
.ctcss_list = common_ctcss_list,
.dcs_list = common_dcs_list, /* only 104 out of 106 supported */
.preamp = { RIG_DBLST_END, },
.attenuator = { RIG_DBLST_END, },
.max_rit = Hz(9990),
.max_xit = Hz(0),
.max_ifshift = Hz(0),
.vfo_ops = RIG_OP_TOGGLE,
.targetable_vfo = 0,
.transceive = RIG_TRN_OFF,
.bank_qty = 0,
.chan_desc_sz = 0,
.chan_list = { RIG_CHAN_END, },
.rx_range_list1 = {
{kHz(100), MHz(56), FT817_ALL_RX_MODES, -1, -1},
{MHz(76), MHz(108), RIG_MODE_WFM, -1, -1},
{MHz(118), MHz(164), FT817_ALL_RX_MODES, -1, -1},
{MHz(420), MHz(470), FT817_ALL_RX_MODES, -1, -1},
RIG_FRNG_END,
},
.tx_range_list1 = {
FRQ_RNG_HF(1, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_HF(1, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_6m(1, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_6m(1, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_2m(1, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_2m(1, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_70cm(1, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_70cm(1, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
RIG_FRNG_END,
},
.rx_range_list2 = {
{kHz(100), MHz(56), FT817_ALL_RX_MODES, -1, -1},
{MHz(76), MHz(108), RIG_MODE_WFM, -1, -1},
{MHz(118), MHz(164), FT817_ALL_RX_MODES, -1, -1},
{MHz(420), MHz(470), FT817_ALL_RX_MODES, -1, -1},
RIG_FRNG_END,
},
.tx_range_list2 = {
FRQ_RNG_HF(2, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_HF(2, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
/* FIXME: 60 meters in US version */
FRQ_RNG_6m(2, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_6m(2, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_2m(2, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_2m(2, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_70cm(2, FT817_OTHER_TX_MODES, W(0.5), W(5), FT817_VFO_ALL, FT817_ANTS),
FRQ_RNG_70cm(2, FT817_AM_TX_MODES, W(0.5), W(1.5), FT817_VFO_ALL, FT817_ANTS),
RIG_FRNG_END,
},
.tuning_steps = {
{FT817_SSB_CW_RX_MODES, Hz(10)},
{FT817_AM_FM_RX_MODES | RIG_MODE_WFM, Hz(100)},
RIG_TS_END,
},
.filters = {
{FT817_SSB_CW_RX_MODES, kHz(2.2)}, /* normal passband */
{FT817_CWN_RX_MODES, 500}, /* CW and RTTY narrow */
{RIG_MODE_AM, kHz(6)}, /* AM normal */
{RIG_MODE_FM | RIG_MODE_PKTFM, kHz(9)},
{RIG_MODE_WFM, kHz(15)},
RIG_FLT_END,
},
.str_cal = FT817_STR_CAL,
.rig_init = ft817_init,
.rig_cleanup = ft817_cleanup,
.rig_open = ft817_open,
.rig_close = ft817_close,
.set_freq = ft817_set_freq,
.get_freq = ft817_get_freq,
.set_mode = ft817_set_mode,
.get_mode = ft817_get_mode,
.set_ptt = ft817_set_ptt,
.get_ptt = ft817_get_ptt,
.get_dcd = ft817_get_dcd,
.set_rptr_shift = ft817_set_rptr_shift,
.set_rptr_offs = ft817_set_rptr_offs,
.set_split_vfo = ft817_set_split_vfo,
.get_split_vfo = ft817_get_split_vfo,
.set_rit = ft817_set_rit,
.set_dcs_code = ft817_set_dcs_code,
.set_ctcss_tone = ft817_set_ctcss_tone,
.set_dcs_sql = ft817_set_dcs_sql,
.set_ctcss_sql = ft817_set_ctcss_sql,
.power2mW = ft817_power2mW,
.mW2power = ft817_mW2power,
.set_powerstat = ft817_set_powerstat,
.get_level = ft817_get_level,
.set_func = ft817_set_func,
.vfo_op = ft817_vfo_op,
};
/* ---------------------------------------------------------------------- */
int ft817_init(RIG *rig)

Wyświetl plik

@ -112,6 +112,7 @@ DECLARE_INITRIG_BACKEND(yaesu)
rig_register(&ft891_caps);
rig_register(&ft847uni_caps);
rig_register(&ftdx101d_caps);
rig_register(&ft818_caps);
return RIG_OK;
}

Wyświetl plik

@ -81,5 +81,6 @@ extern const struct rig_caps vx1700_caps;
extern const struct rig_caps ft1200_caps;
extern const struct rig_caps ft847uni_caps;
extern const struct rig_caps ftdx101d_caps;
extern const struct rig_caps ft818_caps;
#endif /* _YAESU_H */