Masalah koneksi Wifi terpecahkan; mengapa "perbaikan" saya berfungsi?

15

Saya memiliki laptop Samsung, dengan Ubuntu 15.04 terinstal, ditingkatkan sepenuhnya mulai dari 13.10 tapi itu tidak masalah.

Saya telah terhubung ke jaringan wifi yang tak terhitung jumlahnya dari waktu ke waktu tanpa masalah ... Yaitu, sampai beberapa hari yang lalu. Saya sementara bekerja di tempat klien dan tidak dapat terhubung ke jaringan wifi sama sekali. Semua jaringan terlihat, saya tidak bisa membuat koneksi ...

Karena tidak ada orang lain selain saya yang bermasalah, saya tahu masalahnya ada di pihak saya.

Kartu saya adalah ini:

02:00.0 Network controller: Intel Corporation Centrino Advanced-N 6235 (rev 24)

Ia menggunakan driver iwlwifi. Dan inilah yang modinfodilaporkan sebagai opsi:

parm:           swcrypto:using crypto in software (default 0 [hardware]) (int)
parm:           11n_disable:disable 11n functionality, bitmap: 1: full, 2: disable agg TX, 4: disable agg RX, 8 enable agg TX (uint)
parm:           amsdu_size_8K:enable 8K amsdu size (default 0) (int)
parm:           fw_restart:restart firmware in case of error (default true) (bool)
parm:           antenna_coupling:specify antenna coupling in dB (default: 0 dB) (int)
parm:           wd_disable:Disable stuck queue watchdog timer 0=system default, 1=disable (default: 1) (int)
parm:           nvm_file:NVM file name (charp)
parm:           uapsd_disable:disable U-APSD functionality (default: Y) (bool)
parm:           bt_coex_active:enable wifi/bt co-exist (default: enable) (bool)
parm:           led_mode:0=system default, 1=On(RF On)/Off(RF Off), 2=blinking, 3=Off (default: 0) (int)
parm:           power_save:enable WiFi power management (default: disable) (bool)
parm:           power_level:default power save level (range from 1 - 5, default: 1) (int)
parm:           fw_monitor:firmware monitor - to debug FW (default: false - needs lots of memory) (bool)

Dengan firasat murni, saya memodifikasi file modprobe.d yang sesuai untuk ditambahkan:

options iwlwifi bt_coex_active=0

dan tiba-tiba saya tidak punya masalah menghubungkan lagi ...

Mengapa ini bekerja? Apa yang dilakukan opsi ini?

Fge
sumber

Jawaban:

15

Masalah koneksi WiFi terpecahkan, mengapa "perbaikan" saya berfungsi?

Ketika bt_coex_active diaktifkan, ia mencegah interferensi bluetooth / nirkabel. Ketika dinonaktifkan, itu akan memungkinkan peningkatan gangguan bluetooth / nirkabel.

  • bt_coex_active=1 (benar) mencegah gangguan bluetooth / nirkabel.
  • bt_coex_active=0 (false) memungkinkan peningkatan gangguan bluetooth / nirkabel.

Cara kerja fitur ini adalah ketika diaktifkan, wlan transceiver akan menghindari transmisi pada saat yang sama dengan transciever bluetooth.

Dalam beberapa implementasi kereta, ia berpikir Bluetooth mentransmisikan sepanjang waktu sehingga "mematikan" WLAN sepenuhnya, jadi mematikannya akan memungkinkan WLAN bekerja lagi.


802.11 Koeksistensi Bluetooth

Perangkat 802.11 dan Bluetooth dapat saling mengganggu ketika perangkat 802.11 beroperasi pada pita 2,4 GHz. Semua perangkat Bluetooth beroperasi pada pita 2,4 GHz. Bagian ini mendokumentasikan rincian teknis mengenai penyebab gangguan dan solusi yang diterapkan pada driver, stack 802.11, dan kemungkinan peningkatan di masa depan.

...

Gangguan

Setiap saluran 802.11 kemudian sama dengan 20 saluran Bluetooth. Ketika komunikasi diaktifkan pada perangkat Bluetooth Anda akan mendapat gangguan ketika perangkat Bluetooth beralih ke salah satu dari 20 saluran Bluetooth yang setara dengan saluran 802.11 Anda. Bahkan jika perangkat Bluetooth melompat pada tingkat frekuensi maksimum yang diizinkan 1600 frekuensi melompat per detik hanya ada 79 saluran yang tersedia sehingga pada tingkat ini setiap saluran akan digunakan sekitar 20 kali dalam satu detik.

Sumber 802.11 koeksistensi Bluetooth


Ekstrak kode sumber:

/*
 * set bt_coex_active to true, uCode will do kill/defer
 * every time the priority line is asserted (BT is sending signals on the
 * priority line in the PCIx).
 * set bt_coex_active to false, uCode will ignore the BT activity and
 * perform the normal operation
 *
 * User might experience transmit issue on some platform due to WiFi/BT
 * co-exist problem. The possible behaviors are:
 *   Able to scan and finding all the available AP
 *   Not able to associate with any AP
 * On those platforms, WiFi communication can be restored by set
 * "bt_coex_active" module parameter to "false"
 *
 * default: bt_coex_active = true (BT_COEX_ENABLE)
 */

Sumber: iwl-core.c


Bacaan lebih lanjut

DavidPostill
sumber
Saya bingung ketika Anda mengatakan bahwa nilai 0 akan meningkatkan interferensi, karena itulah yang disarankan oleh wiki nirkabel di kernel.org untuk menyelesaikan masalah interferensi: wireless.wiki.kernel.org/en/users/Drivers/ ... ; apakah saya melewatkan sesuatu?
defvol
1
@rodowi Baca paragraf mulai "Dalam beberapa implementasi kereta,"
DavidPostill