opentechinstitute / luci-commotion

Commotion configuration pages for the LuCI web interface
GNU General Public License v3.0
11 stars 17 forks source link

NanoStation M5 - WiFi power level incorrect in LuCi #446

Open andygunn opened 9 years ago

andygunn commented 9 years ago

There is a bug or error in the pull-down menu on 5GHz Ubiquiti AirMax equipment, where all power levels show as 10dB too low (i.e. 17dBm is shown in the menu as the max power output, but the radio is capable of 27dBm maximum output at MCS 0/8).

Not sure if this is upstream or Commotion specific.

See https://projects.opentechinstitute.org/issues/989

@jheretic @dismantl please take a look.

dismantl commented 9 years ago

I believe this is an OpenWRT issue, as we don't modify the default OpenWRT menu pages, which this is on.

seamustuohy commented 9 years ago

Just as an FYI, depending upon the menu it might be the freq gatherer that we added in. https://github.com/opentechinstitute/luci-commotion/blob/master/modules/network.lua#L53-L62 Hard coded because math is hard.

Math is hard

andygunn commented 9 years ago

Hmm, that chunk of code brings up another issue - the available 5GHz channels vary depending on your country code - i.e. this table: https://en.wikipedia.org/wiki/List_of_WLAN_channels#5.C2.A0GHz_.28802.11a.2Fh.2Fj.2Fn.2Fac.29.5B17.5D

Any chance the country code selector could be integrated into the setup wizard and the list of 5GHz channels is pulled from the OpenWRT tables? I'm assuming that data is already in the system somewhere. @jheretic @dismantl ??

dismantl commented 9 years ago

You can see the current country code and available frequencies with iw reg get, but do you mean adding an option to SW for the user to choose the country code?

tumblr_mwyh5jtk5m1rscypio1_500

andygunn commented 9 years ago

@dismantl - yes. There should be an option to set what country you are in so the appropriate wireless channels are available. This affects 2.4GHz and 5GHz bands, so it should happen early on.

Also, I'm not sure on the regulations for this, but there should be a "least restrictive" option as well, that opens up all of the available channels the hardware can support, for testing.

Should I create a separate issue for this? We have gotten off track on this one...

dismantl commented 9 years ago

I think that makes sense, thanks @andygunn

andygunn commented 9 years ago

Okay - I did a little more digging.

A NanoStation M5 unit has a maximum output power of 27dBm at MCS0 or MCS8: nanostation m5 power levels

In the Ubiquiti AirOS software, you can select the power level up to 27dBm, as you would expect (this is a maximum value, so it will automatically scale down for higher MCS levels): ubiquiti_airos_power_levels

In OpenWRT (Barrier Breaker, I downloaded the most recent release), you can select 27dBm as a possible power level output: openwrt nanostation m5 27dbm

I monitored the power output on a WiFi analyser (I know, not a real power meter but all I have at the time), and the power output did adjust per the interface.

@jheretic @dismantl - I would love to see some more testing on this - what do y'all think?

andygunn commented 9 years ago

I did a bit more testing in Commotion 1.1, and found that the power level appears to be related to the channel:

Channel 153 - 27dBm max power commotion 27dbm channel 153

Channel 48 - 22dBm max power commotion 22dbm channel 48

This actually tracks (somewhat) to the regulatory limits, which is undocumented in Ubiquiti and OpenWRT documentation or interface, so perhaps everything is working as intended? http://wireless.kernel.org/en/developers/Regulatory/Database?alpha2=US

seamustuohy commented 9 years ago

Hey all,

Pulling out the divining rod again without offering to dig for water.

On the "First Issue" transmission power is calculated here in LuCI. The argument it is being passed is the luci iwinfo of the interface being manipulated..

On the second issue if you can capture the error that appears it would be easier to track down where it is occuring on the stack.