Fix FT847 freq ranges

Add README.freqranges to explain what's going on with this feature
Add default ITU definitions to bandplan.h
The ITU definitions will likely change as the backends are updated dependinggg on the rig models
https://github.com/Hamlib/Hamlib/issues/243
pull/252/head
Michael Black W9MDB 2020-05-09 09:57:25 -05:00
rodzic 352a4bdb28
commit 371bf874c6
3 zmienionych plików z 103 dodań i 62 usunięć

16
README.freqranges 100644
Wyświetl plik

@ -0,0 +1,16 @@
Frequency ranges are being changed to reflect rig capabilities instead of region restrictions
As of 2020-05-05 the behavior is:
#1 Any range which shows ITU# or TBD has not been modified to this convention
#2 Ranges on the backends are being change to USA/EUR/KOR/TPE/ITR per the IC-9700 convention. So if you see one of those monikers on a rig's freq range it should accurately reflect the rig's capabilities.
Note that most rigs will have just USA or USA/EUR models. Not too many rigs have more than 2 models but it appears at least Icom is headed that way.
USA - United States of America
EUR - Europe
KOR - Korea
TPE - Japan
ITR - ??
AUS - Australia
CHN - China

Wyświetl plik

@ -50,55 +50,55 @@
/* MF: 300 kHz - 3 MHz */
#define FRQ_RNG_160m_REGION1(md,lp,hp,v,a) \
{ kHz(1810), MHz(2), (md), (lp), (hp), (v), (a) }
{ kHz(1810), MHz(2), (md), (lp), (hp), (v), (a), "ITU1" }
/* HF: 3 MHz - 30 MHz */
#define FRQ_RNG_80m_REGION1(md,lp,hp,v,a) \
{ kHz(3500),kHz(3800), (md), (lp), (hp), (v), (a) }
{ kHz(3500),kHz(3800), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_60m_REGION1(md,lp,hp,v,a) \
{ kHz(5351.5),kHz(5366.5), (md), (lp), (hp), (v), (a) }
{ kHz(5351.5),kHz(5366.5), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_40m_REGION1(md,lp,hp,v,a) \
{ MHz(7),kHz(7100), (md), (lp), (hp), (v), (a) }
{ MHz(7),kHz(7100), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_30m_REGION1(md,lp,hp,v,a) \
{ kHz(10100),kHz(10150), (md), (lp), (hp), (v), (a) }
{ kHz(10100),kHz(10150), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_20m_REGION1(md,lp,hp,v,a) \
{ MHz(14),kHz(14350), (md), (lp), (hp), (v), (a) }
{ MHz(14),kHz(14350), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_17m_REGION1(md,lp,hp,v,a) \
{ kHz(18068),kHz(18168), (md), (lp), (hp), (v), (a) }
{ kHz(18068),kHz(18168), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_15m_REGION1(md,lp,hp,v,a) \
{ MHz(21),kHz(21450), (md), (lp), (hp), (v), (a) }
{ MHz(21),kHz(21450), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_12m_REGION1(md,lp,hp,v,a) \
{ kHz(24890),kHz(24990), (md), (lp), (hp), (v), (a) }
{ kHz(24890),kHz(24990), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_10m_REGION1(md,lp,hp,v,a) \
{ MHz(28),kHz(29700), (md), (lp), (hp), (v), (a) }
{ MHz(28),kHz(29700), (md), (lp), (hp), (v), (a), "ITU1" }
/* VHF: 30 MHz - 300 MHz */
#define FRQ_RNG_6m_REGION1(md,lp,hp,v,a) \
{ MHz(50),MHz(54), (md), (lp), (hp), (v), (a) }
{ MHz(50),MHz(54), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_4m_REGION1(md,lp,hp,v,a) \
{ MHz(70),MHz(70.5), (md), (lp), (hp), (v), (a) }
{ MHz(70),MHz(70.5), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_2m_REGION1(md,lp,hp,v,a) \
{ MHz(144),MHz(146), (md), (lp), (hp), (v), (a) }
{ MHz(144),MHz(146), (md), (lp), (hp), (v), (a), "ITU1" }
/* UHF: 300 MHz - 3 GHz */
#define FRQ_RNG_70cm_REGION1(md,lp,hp,v,a) \
{ MHz(430),MHz(440), (md), (lp), (hp), (v), (a) }
{ MHz(430),MHz(440), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_23cm_REGION1(md,lp,hp,v,a) \
{ MHz(1240),MHz(1300), (md), (lp), (hp), (v), (a) }
{ MHz(1240),MHz(1300), (md), (lp), (hp), (v), (a), "ITU1" }
#define FRQ_RNG_13cm_REGION1(md,lp,hp,v,a) \
{ MHz(2300),MHz(2450), (md), (lp), (hp), (v), (a) }
{ MHz(2300),MHz(2450), (md), (lp), (hp), (v), (a), "ITU1" }
/*
@ -107,52 +107,52 @@
/* MF: 300 kHz - 3 MHz */
#define FRQ_RNG_160m_REGION2(md,lp,hp,v,a) \
{ kHz(1800),MHz(2), (md), (lp), (hp), (v), (a) }
{ kHz(1800),MHz(2), (md), (lp), (hp), (v), (a), "ITU2" }
/* HF: 3 MHz - 30 MHz */
#define FRQ_RNG_80m_REGION2(md,lp,hp,v,a) \
{ kHz(3500),MHz(4), (md), (lp), (hp), (v), (a) }
{ kHz(3500),MHz(4), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_60m_REGION2(md,lp,hp,v,a) \
{ kHz(5351.5),kHz(5366.5), (md), (lp), (hp), (v), (a) }
{ kHz(5351.5),kHz(5366.5), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_40m_REGION2(md,lp,hp,v,a) \
{ MHz(7),kHz(7300), (md), (lp), (hp), (v), (a) }
{ MHz(7),kHz(7300), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_30m_REGION2(md,lp,hp,v,a) \
{ kHz(10100),kHz(10150), (md), (lp), (hp), (v), (a) }
{ kHz(10100),kHz(10150), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_20m_REGION2(md,lp,hp,v,a) \
{ MHz(14),kHz(14350), (md), (lp), (hp), (v), (a) }
{ MHz(14),kHz(14350), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_17m_REGION2(md,lp,hp,v,a) \
{ kHz(18068),kHz(18168), (md), (lp), (hp), (v), (a) }
{ kHz(18068),kHz(18168), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_15m_REGION2(md,lp,hp,v,a) \
{ MHz(21),kHz(21450), (md), (lp), (hp), (v), (a) }
{ MHz(21),kHz(21450), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_12m_REGION2(md,lp,hp,v,a) \
{ kHz(24890),kHz(24990), (md), (lp), (hp), (v), (a) }
{ kHz(24890),kHz(24990), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_10m_REGION2(md,lp,hp,v,a) \
{ MHz(28),kHz(29700), (md), (lp), (hp), (v), (a) }
{ MHz(28),kHz(29700), (md), (lp), (hp), (v), (a), "ITU2" }
/* VHF: 30 MHz - 300 MHz */
#define FRQ_RNG_6m_REGION2(md,lp,hp,v,a) \
{ MHz(50),MHz(54), (md), (lp), (hp), (v), (a) }
{ MHz(50),MHz(54), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_2m_REGION2(md,lp,hp,v,a) \
{ MHz(144),MHz(148), (md), (lp), (hp), (v), (a) }
{ MHz(144),MHz(148), (md), (lp), (hp), (v), (a), "ITU2" }
/* UHF: 300 MHz - 3 GHz */
#define FRQ_RNG_70cm_REGION2(md,lp,hp,v,a) \
{ MHz(430),MHz(450), (md), (lp), (hp), (v), (a) }
{ MHz(430),MHz(450), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_23cm_REGION2(md,lp,hp,v,a) \
{ MHz(1240),MHz(1300), (md), (lp), (hp), (v), (a) }
{ MHz(1240),MHz(1300), (md), (lp), (hp), (v), (a), "ITU2" }
#define FRQ_RNG_13cm_REGION2(md,lp,hp,v,a) \
{ MHz(2320),MHz(2450), (md), (lp), (hp), (v), (a) }
{ MHz(2320),MHz(2450), (md), (lp), (hp), (v), (a), "ITU2" }
/*
* ITU Region 3: South Pacific and Southern Asia
@ -160,52 +160,52 @@
/* MF: 300 kHz - 3 MHz */
#define FRQ_RNG_160m_REGION3(md,lp,hp,v,a) \
{ kHz(1810),MHz(2), (md), (lp), (hp), (v), (a) }
{ kHz(1810),MHz(2), (md), (lp), (hp), (v), (a), "ITU3" }
/* HF: 3 MHz - 30 MHz */
#define FRQ_RNG_80m_REGION3(md,lp,hp,v,a) \
{ kHz(3500),kHz(3900), (md), (lp), (hp), (v), (a) }
{ kHz(3500),kHz(3900), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_60m_REGION3(md,lp,hp,v,a) \
{ kHz(5351.5),kHz(5366.5), (md), (lp), (hp), (v), (a) }
{ kHz(5351.5),kHz(5366.5), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_40m_REGION3(md,lp,hp,v,a) \
{ MHz(7),kHz(7100), (md), (lp), (hp), (v), (a) }
{ MHz(7),kHz(7100), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_30m_REGION3(md,lp,hp,v,a) \
{ kHz(10100),kHz(10150), (md), (lp), (hp), (v), (a) }
{ kHz(10100),kHz(10150), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_20m_REGION3(md,lp,hp,v,a) \
{ MHz(14),kHz(14350), (md), (lp), (hp), (v), (a) }
{ MHz(14),kHz(14350), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_17m_REGION3(md,lp,hp,v,a) \
{ kHz(18068),kHz(18168), (md), (lp), (hp), (v), (a) }
{ kHz(18068),kHz(18168), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_15m_REGION3(md,lp,hp,v,a) \
{ MHz(21),kHz(21450), (md), (lp), (hp), (v), (a) }
{ MHz(21),kHz(21450), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_12m_REGION3(md,lp,hp,v,a) \
{ kHz(24890),kHz(24990), (md), (lp), (hp), (v), (a) }
{ kHz(24890),kHz(24990), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_10m_REGION3(md,lp,hp,v,a) \
{ MHz(28),kHz(29700), (md), (lp), (hp), (v), (a) }
{ MHz(28),kHz(29700), (md), (lp), (hp), (v), (a), "ITU3" }
/* VHF: 30 MHz - 300 MHz */
#define FRQ_RNG_6m_REGION3(md,lp,hp,v,a) \
{ MHz(50),MHz(54), (md), (lp), (hp), (v), (a) }
{ MHz(50),MHz(54), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_2m_REGION3(md,lp,hp,v,a) \
{ MHz(144),MHz(148), (md), (lp), (hp), (v), (a) }
{ MHz(144),MHz(148), (md), (lp), (hp), (v), (a), "ITU3" }
/* UHF: 300 MHz - 3 GHz */
#define FRQ_RNG_70cm_REGION3(md,lp,hp,v,a) \
{ MHz(430),MHz(440), (md), (lp), (hp), (v), (a) }
{ MHz(430),MHz(440), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_23cm_REGION3(md,lp,hp,v,a) \
{ MHz(1240),MHz(1300), (md), (lp), (hp), (v), (a) }
{ MHz(1240),MHz(1300), (md), (lp), (hp), (v), (a), "ITU3" }
#define FRQ_RNG_13cm_REGION3(md,lp,hp,v,a) \
{ MHz(2320),MHz(2450), (md), (lp), (hp), (v), (a) }
{ MHz(2320),MHz(2450), (md), (lp), (hp), (v), (a), "ITU3" }
/*

Wyświetl plik

@ -214,9 +214,9 @@ const struct rig_caps ft847_caps =
RIG_MODEL(RIG_MODEL_FT847),
.model_name = "FT-847",
.mfg_name = "Yaesu",
.version = "20200305.0",
.version = "20200509.0",
.copyright = "LGPL",
.status = RIG_STATUS_BETA,
.status = RIG_STATUS_STABLE,
.rig_type = RIG_TYPE_TRANSCEIVER,
.ptt_type = RIG_PTT_RIG,
.dcd_type = RIG_DCD_RIG,
@ -256,10 +256,10 @@ const struct rig_caps ft847_caps =
.chan_list = { RIG_CHAN_END, }, /* FIXME: memory chan list: 78, but only in clonable mode? */
.rx_range_list1 = {
{kHz(100), MHz(30), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "Operating"}, /* rx range begin */
{MHz(36), MHz(76), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "Operating"},
{MHz(108), MHz(174), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "Operating"},
{MHz(420), MHz(512), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "Operating"},
{kHz(100), MHz(30), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"}, /* rx range begin */
{MHz(36), MHz(76), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"},
{MHz(108), MHz(174), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"},
{MHz(420), MHz(512), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"},
RIG_FRNG_END,
}, /* rx range end */
@ -268,12 +268,37 @@ const struct rig_caps ft847_caps =
FRQ_RNG_HF(1, FT847_OTHER_TX_MODES, W(5), W(100), FT847_VFOS, FT847_ANTS),
FRQ_RNG_HF(1, FT847_AM_TX_MODES, W(1), W(25), FT847_VFOS, FT847_ANTS),
FRQ_RNG_6m(2, FT847_OTHER_TX_MODES, W(5), W(100), FT847_VFOS, FT847_ANTS),
FRQ_RNG_6m(2, FT847_AM_TX_MODES, W(1), W(25), FT847_VFOS, FT847_ANTS),
FRQ_RNG_6m(1, FT847_OTHER_TX_MODES, W(5), W(100), FT847_VFOS, FT847_ANTS),
FRQ_RNG_6m(1, FT847_AM_TX_MODES, W(1), W(25), FT847_VFOS, FT847_ANTS),
FRQ_RNG_4m(1, FT847_OTHER_TX_MODES, W(1), W(50), FT847_VFOS, FT847_ANTS),
FRQ_RNG_4m(1, FT847_AM_TX_MODES, W(1), W(12.5), FT847_VFOS, FT847_ANTS),
FRQ_RNG_2m(1, FT847_OTHER_TX_MODES, W(1), W(50), FT847_VFOS, FT847_ANTS),
FRQ_RNG_2m(1, FT847_AM_TX_MODES, W(1), W(12.5), FT847_VFOS, FT847_ANTS),
FRQ_RNG_70cm(1, FT847_OTHER_TX_MODES, W(1), W(50), FT847_VFOS, FT847_ANTS),
FRQ_RNG_70cm(1, FT847_AM_TX_MODES, W(1), W(12.5), FT847_VFOS, FT847_ANTS),
RIG_FRNG_END,
}, /* tx range end */
.rx_range_list2 = {
{kHz(100), MHz(30), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"}, /* rx range begin */
{MHz(36), MHz(76), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"},
{MHz(108), MHz(174), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"},
{MHz(420), MHz(512), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"},
RIG_FRNG_END,
}, /* rx range end */
.tx_range_list2 = {
FRQ_RNG_HF(2, FT847_OTHER_TX_MODES, W(5), W(100), FT847_VFOS, FT847_ANTS),
FRQ_RNG_HF(2, FT847_AM_TX_MODES, W(1), W(25), FT847_VFOS, FT847_ANTS),
FRQ_RNG_6m(2, FT847_OTHER_TX_MODES, W(5), W(100), FT847_VFOS, FT847_ANTS),
FRQ_RNG_6m(2, FT847_AM_TX_MODES, W(1), W(25), FT847_VFOS, FT847_ANTS),
FRQ_RNG_2m(2, FT847_OTHER_TX_MODES, W(1), W(50), FT847_VFOS, FT847_ANTS),
FRQ_RNG_2m(2, FT847_AM_TX_MODES, W(1), W(12.5), FT847_VFOS, FT847_ANTS),
@ -388,10 +413,10 @@ const struct rig_caps ft847uni_caps =
.chan_list = { RIG_CHAN_END, }, /* FIXME: memory chan list: 78, but only in clonable mode? */
.rx_range_list1 = {
{kHz(100), MHz(30), FT847_ALL_RX_MODES, -1, -1}, /* rx range begin */
{MHz(36), MHz(76), FT847_ALL_RX_MODES, -1, -1},
{MHz(108), MHz(174), FT847_ALL_RX_MODES, -1, -1},
{MHz(420), MHz(512), FT847_ALL_RX_MODES, -1, -1},
{kHz(100), MHz(30), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"}, /* rx range begin */
{MHz(36), MHz(76), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"},
{MHz(108), MHz(174), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"},
{MHz(420), MHz(512), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "EUR"},
RIG_FRNG_END,
}, /* rx range end */
@ -413,10 +438,10 @@ const struct rig_caps ft847uni_caps =
}, /* tx range end */
.rx_range_list2 =
{ {kHz(100), MHz(30), FT847_ALL_RX_MODES, -1, -1}, /* rx range begin */
{MHz(36), MHz(76), FT847_ALL_RX_MODES, -1, -1},
{MHz(108), MHz(174), FT847_ALL_RX_MODES, -1, -1},
{MHz(420), MHz(512), FT847_ALL_RX_MODES, -1, -1},
{ {kHz(100), MHz(30), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"}, /* rx range begin */
{MHz(36), MHz(76), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"},
{MHz(108), MHz(174), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"},
{MHz(420), MHz(512), FT847_ALL_RX_MODES, -1, -1, FT847_VFOS, FT847_ANTS, "USA"},
RIG_FRNG_END,
}, /* rx range end */