luci-mod-network: add 802.11ax HE support
This commit adds the ability to configure HE-modes for radios (HE20 / HE40 / HE80 / HE160) as well as HE rate information in the assiciation view. Tested-on: Ubiquiti UniFi 6 Lite / LR Signed-off-by: David Bauer <mail@david-bauer.net>
This commit is contained in:
parent
7b11e848ac
commit
f35e877dc6
2 changed files with 33 additions and 2 deletions
|
@ -3982,6 +3982,17 @@ WifiNetwork = baseclass.extend(/** @lends LuCI.network.WifiNetwork.prototype */
|
||||||
* @property {number} [nss]
|
* @property {number} [nss]
|
||||||
* Specifies the number of spatial streams used by the transmission.
|
* Specifies the number of spatial streams used by the transmission.
|
||||||
* Only applicable to VHT rates.
|
* Only applicable to VHT rates.
|
||||||
|
*
|
||||||
|
* @property {boolean} [he]
|
||||||
|
* Specifies whether this rate is an HE (IEEE 802.11ax) rate.
|
||||||
|
*
|
||||||
|
* @property {number} [he_gi]
|
||||||
|
* Specifies whether the guard interval used for the transmission.
|
||||||
|
* Only applicable to HE rates.
|
||||||
|
*
|
||||||
|
* @property {number} [he_dcm]
|
||||||
|
* Specifies whether dual concurrent modulation is used for the transmission.
|
||||||
|
* Only applicable to HE rates.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -199,7 +199,9 @@ function format_wifirate(rate) {
|
||||||
var s = '%.1f\xa0%s, %d\xa0%s'.format(rate.rate / 1000, _('Mbit/s'), rate.mhz, _('MHz')),
|
var s = '%.1f\xa0%s, %d\xa0%s'.format(rate.rate / 1000, _('Mbit/s'), rate.mhz, _('MHz')),
|
||||||
ht = rate.ht, vht = rate.vht,
|
ht = rate.ht, vht = rate.vht,
|
||||||
mhz = rate.mhz, nss = rate.nss,
|
mhz = rate.mhz, nss = rate.nss,
|
||||||
mcs = rate.mcs, sgi = rate.short_gi;
|
mcs = rate.mcs, sgi = rate.short_gi,
|
||||||
|
he = rate.he, he_gi = rate.he_gi,
|
||||||
|
he_dcm = rate.he_dcm;
|
||||||
|
|
||||||
if (ht || vht) {
|
if (ht || vht) {
|
||||||
if (vht) s += ', VHT-MCS\xa0%d'.format(mcs);
|
if (vht) s += ', VHT-MCS\xa0%d'.format(mcs);
|
||||||
|
@ -208,6 +210,13 @@ function format_wifirate(rate) {
|
||||||
if (sgi) s += ', ' + _('Short GI').replace(/ /g, '\xa0');
|
if (sgi) s += ', ' + _('Short GI').replace(/ /g, '\xa0');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (he) {
|
||||||
|
s += ', HE-MCS\xa0%d'.format(mcs);
|
||||||
|
if (nss) s += ', HE-NSS\xa0%d'.format(nss);
|
||||||
|
if (he_gi) s += ', HE-GI\xa0%d'.format(he_gi);
|
||||||
|
if (he_dcm) s += ', HE-DCM\xa0%d'.format(he_dcm);
|
||||||
|
}
|
||||||
|
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -320,7 +329,8 @@ var CBIWifiFrequencyValue = form.Value.extend({
|
||||||
this.modes = [
|
this.modes = [
|
||||||
'', 'Legacy', true,
|
'', 'Legacy', true,
|
||||||
'n', 'N', hwmodelist.n,
|
'n', 'N', hwmodelist.n,
|
||||||
'ac', 'AC', hwmodelist.ac
|
'ac', 'AC', hwmodelist.ac,
|
||||||
|
'ax', 'AX', hwmodelist.ax
|
||||||
];
|
];
|
||||||
|
|
||||||
var htmodelist = L.toArray(data[0] ? data[0].getHTModes() : null)
|
var htmodelist = L.toArray(data[0] ? data[0].getHTModes() : null)
|
||||||
|
@ -337,6 +347,12 @@ var CBIWifiFrequencyValue = form.Value.extend({
|
||||||
'VHT40', '40 MHz', htmodelist.VHT40,
|
'VHT40', '40 MHz', htmodelist.VHT40,
|
||||||
'VHT80', '80 MHz', htmodelist.VHT80,
|
'VHT80', '80 MHz', htmodelist.VHT80,
|
||||||
'VHT160', '160 MHz', htmodelist.VHT160
|
'VHT160', '160 MHz', htmodelist.VHT160
|
||||||
|
],
|
||||||
|
'ax': [
|
||||||
|
'HE20', '20 MHz', htmodelist.HE20,
|
||||||
|
'HE40', '40 MHz', htmodelist.HE40,
|
||||||
|
'HE80', '80 MHz', htmodelist.HE80,
|
||||||
|
'HE160', '160 MHz', htmodelist.HE160
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -351,6 +367,10 @@ var CBIWifiFrequencyValue = form.Value.extend({
|
||||||
],
|
],
|
||||||
'ac': [
|
'ac': [
|
||||||
'11a', '5 GHz', true
|
'11a', '5 GHz', true
|
||||||
|
],
|
||||||
|
'ax': [
|
||||||
|
'11g', '2.4 GHz', this.channels['11g'].length > 3,
|
||||||
|
'11a', '5 GHz', this.channels['11a'].length > 3
|
||||||
]
|
]
|
||||||
};
|
};
|
||||||
}, this));
|
}, this));
|
||||||
|
|
Loading…
Reference in a new issue