WiFi regulatory rant
On a recent trip abroad, I brought my laptop and planned to work online at the airport while waiting for my flight. I found a power socket, opened my laptop, and got connected with no fuss at all. I was even able to connect my G1 phone at the same time, since the WiFi was free, and sync my calendar and RSS feeds.
After 15 minutes or so, my laptop fell off the network. I couldn’t even see the access point anymore. I spent the next few minutes grumbling and running terminal commands to try to understand what was wrong, and decided that the problem must be with the access point. Then I switched on my phone and noticed that it connected without a problem!
Grumbling louder, I spent quite some time trying to figure out the problem. The crucial clue was provided by Android, which provides a configuration setting for the number of WiFi channels to use. It can be set to 11, 13 or 14. I tried setting the phone to 11 channels, to match what was reported by my laptop:
iwlagn 0000:03:00.0: Tunable channels: 11 802.11bg, 13 802.11a channels
…and then the phone couldn’t connect either! I couldn’t get Android to show me the channel information for the access point, but by trying the settings, I could infer that it was using channel 12 or 13, and must have switched channels since I started working.
So, how to get my laptop to see these extra channels? I immediately suspected the regulatory settings, since a new regulatory framework had recently been developed and added to Ubuntu. I dug through man pages, I read database dumps, and I searched Google using my phone. Everything I found told me that I was doing the right thing already, and that channels 12-14 (which were perfectly legal in the country where I was) should be available.
Then I came across a few references which told me that my WiFi card (Intel Corporation PRO/Wireless 4965 AG or AGN [Kedron] Network Connection (rev 61)) was believed to be hardware crippled to support only 11 channels. I had purchased this laptop in the US, but don’t live there anymore, and certainly didn’t want to concern myself with US regulations while outside of the US.
Tough luck for me, it seems. If I want to be able to get online in other countries reliably, it seems I’ll need to buy a new card.
Do you not find it weird you connected in the first instance, if the wireless is hardware crippled? A trick I have to do with my laptops sometimes it to shut it down, pull the ac adaptor and battery, wait 30 seconds, plug at least the battery back in and try again.
Worth a go if you haven’t already?
TGM
July 27, 2009 at 18:15
He said it changed channels…
Mackenzie
July 27, 2009 at 20:23
D’oh! Overlooked that.
TGM
July 27, 2009 at 23:00
So THAT’s what’s wrong with mine! Same wireless card, same problem connecting to the router here at home.
Mackenzie
July 27, 2009 at 20:22
I seem to have the same prob and same card.
I remember reading about a command that would unlock any channel (or set it to a certain country), but did now know Intel crippled their HW. :(
BUGabundo
July 27, 2009 at 23:34
It works on Windows. I have similar hardware and have had this problem for years.
Anonymous
July 28, 2009 at 09:02
So the card keeps the regulatory domain in eeprom?
Can’t you just do something like:
# iw reg set EU
nona
August 2, 2009 at 00:45
No, the regulatory domain (so far as I have seen) is an OS concept. The card seems to be physically capable of tuning only 11 channels.
mdz
August 2, 2009 at 08:01
So when I get:
$ iw phy
Wiphy phy0
Band 1:
HT capabilities: 0x083c
* 20 MHz operation
* SM PS disabled
* HT-greenfield
* 20 MHz short GI
* max A-MSDU len 7935
HT A-MPDU factor: 0x0003 (65535 bytes)
HT A-MPDU density: 0x0005 (4 usec)
HT MCS set: ff ff 00 00 00 00 00 00 00 00 90 00 01 00 00 00
HT TX/RX MCS rate indexes supported:
MCS index 0
MCS index 1
MCS index 2
MCS index 3
MCS index 4
MCS index 5
MCS index 6
MCS index 7
MCS index 8
MCS index 9
MCS index 10
MCS index 11
MCS index 12
MCS index 13
MCS index 14
MCS index 15
Frequencies:
* 2412 MHz [1] (15.0 dBm)
* 2417 MHz [2] (15.0 dBm)
* 2422 MHz [3] (15.0 dBm)
* 2427 MHz [4] (15.0 dBm)
* 2432 MHz [5] (15.0 dBm)
* 2437 MHz [6] (15.0 dBm)
* 2442 MHz [7] (15.0 dBm)
* 2447 MHz [8] (15.0 dBm)
* 2452 MHz [9] (15.0 dBm)
* 2457 MHz [10] (15.0 dBm)
* 2462 MHz [11] (15.0 dBm)
* 2467 MHz [12] (15.0 dBm) (passive scanning, no IBSS)
* 2472 MHz [13] (15.0 dBm) (passive scanning, no IBSS)
Bitrates:
* 1.0 Mbps
* 2.0 Mbps (short preamble supported)
* 5.5 Mbps (short preamble supported)
* 11.0 Mbps (short preamble supported)
* 6.0 Mbps
* 9.0 Mbps
* 12.0 Mbps
* 18.0 Mbps
* 24.0 Mbps
* 36.0 Mbps
* 48.0 Mbps
* 54.0 Mbps
* 60.0 Mbps
Band 2:
HT capabilities: 0x087e
* 20/40 MHz operation
* SM PS disabled
* HT-greenfield
* 20 MHz short GI
* 40 MHz short GI
* max A-MSDU len 7935
HT A-MPDU factor: 0x0003 (65535 bytes)
HT A-MPDU density: 0x0005 (4 usec)
HT MCS set: ff ff 00 00 01 00 00 00 00 00 2c 01 01 00 00 00
HT TX/RX MCS rate indexes supported:
MCS index 0
MCS index 1
MCS index 2
MCS index 3
MCS index 4
MCS index 5
MCS index 6
MCS index 7
MCS index 8
MCS index 9
MCS index 10
MCS index 11
MCS index 12
MCS index 13
MCS index 14
MCS index 15
MCS index 32
Frequencies:
* 5180 MHz [36] (15.0 dBm)
* 5200 MHz [40] (15.0 dBm)
* 5220 MHz [44] (15.0 dBm)
* 5240 MHz [48] (15.0 dBm)
* 5260 MHz [52] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5280 MHz [56] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5300 MHz [60] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5320 MHz [64] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5500 MHz [100] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5520 MHz [104] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5540 MHz [108] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5560 MHz [112] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5580 MHz [116] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5600 MHz [120] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5620 MHz [124] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5640 MHz [128] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5660 MHz [132] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5680 MHz [136] (15.0 dBm) (passive scanning, no IBSS, radar detection)
* 5700 MHz [140] (15.0 dBm) (passive scanning, no IBSS, radar detection)
Bitrates:
* 6.0 Mbps
* 9.0 Mbps
* 12.0 Mbps
* 18.0 Mbps
* 24.0 Mbps
* 36.0 Mbps
* 48.0 Mbps
* 54.0 Mbps
* 60.0 Mbps
max # scan SSIDs: 20
Supported interface modes:
* IBSS
* managed
* monitor
Means that
* 2467 MHz [12] (15.0 dBm) (passive scanning, no IBSS)
* 2472 MHz [13] (15.0 dBm) (passive scanning, no IBSS)
channel 12 & 13 are limited?
BUGabundo
August 2, 2009 at 09:59
No, I don’t think so. Mine shows:
Frequencies:
* 2412 MHz [1] (14.0 dBm)
* 2417 MHz [2] (14.0 dBm)
* 2422 MHz [3] (14.0 dBm)
* 2427 MHz [4] (14.0 dBm)
* 2432 MHz [5] (14.0 dBm)
* 2437 MHz [6] (14.0 dBm)
* 2442 MHz [7] (14.0 dBm)
* 2447 MHz [8] (14.0 dBm)
* 2452 MHz [9] (14.0 dBm)
* 2457 MHz [10] (14.0 dBm)
* 2462 MHz [11] (14.0 dBm)
Bitrates:
i.e. channel 13 and 14 don’t seem to exist so far as the phy is concerned.
mdz
August 2, 2009 at 20:02
aint your card the same as mine?
04:00.0 Network controller: Intel Corporation PRO/Wireless 4965 AG or AGN [Kedron] Network Connection (rev 61)
BUGabundo
August 2, 2009 at 20:23
Evidently not. I’m guessing yours was NOT purchased in the US, as mine was.
mdz
August 2, 2009 at 20:51
so u mean to say they (intel) cripple hw based on Country?
bad bad ppl…
BUGabundo
August 2, 2009 at 20:54
Here’s what the user guide has to say.
Local Restrictions on 802.11a, 802.11b, and 802.11g Radio Usage
Caution: Due to the fact that the frequencies used by 802.11a, 802.11b and
802.11g wireless LAN devices may not yet be harmonized in all countries,
802.11a, 802.11b, and 802.11g products are designed for use only in specific
countries, and are not allowed to be operated in countries other than those of
designated use. As a user of these products, you are responsible for ensuring
that the products are used only in the countries for which they were intended
and for verifying that they are configured with the correct selection of
frequency and channel for the country of use. The device transmit power control
(TPC) interface is part of the Intel(R) PROSet/Wireless software. Operational
restrictions for Equivalent Isotropic Radiated Power (EIRP) are provided by the
system manufacturer. Any deviation from the permissible power and frequency
settings for the country of use is an infringement of national law and may be
punished as such.
For country-specific information, see the additional compliance information supplied with the product.
mdz
August 2, 2009 at 21:17
hum something is smelly.
“As a user of these products, you are responsible for ensuring that the products are used only in the countries for which they were intended and for verifying that they are configured with the correct selection of frequency and channel for the country of use”
they say its up to the user!
BUGabundo
August 2, 2009 at 21:22
http://www.linux-archive.org/fedora-development/78476-iwl3945-driver-channel-capability.html
mdz
August 2, 2009 at 22:01