Переключение антенн адаптера Wi-Fi на примере Realtek RTL8723BE
Добавлено: 08 авг 2018, 16:01
Тема возникла на нашем IRC-канале, мы решили что будет полезно сделать выжимку из чата и оформить как статью.
Проблема случилась на ноутбуке HP Pavilion. Сигнал Wi-Fi сети был крайне слабым и дальше пары метров от источника инет пропадал. В ходе расследования выяснилось что А - на винде все ок, Б - у адаптера богом задумано 2 антеннки, а в ноутбуке она одна из двух
вывод inxi -N
Драйвер для нашего адаптера называется rtl8723be
Отключаем драйвер, добавляем в опции использовать первую антенну, проверяем качество сигнала.
В результате получим вывод всех обнаруженых Wi-Fi сетей и качество их приема.
Проделываем те же операции, выставляя приемником вторую антенну.
Сравниваем качество сигнала на первой и второй антенне. Выставляем в параметрах драйвера нужную (в нашем примере это вторая антенна)
Проверяем на всякий случай что нужная строчка в файл добавилась
На этом все. Проблема с выбором антенны и качеством сигнала может быть актуальна и для других адаптеров.
Добавление от "Белый Кролик":
Проблема случилась на ноутбуке HP Pavilion. Сигнал Wi-Fi сети был крайне слабым и дальше пары метров от источника инет пропадал. В ходе расследования выяснилось что А - на винде все ок, Б - у адаптера богом задумано 2 антеннки, а в ноутбуке она одна из двух

вывод inxi -N
Код: Выделить всё
Network: Card-1 Realtek RTL8723BE PCIe Wireless Network Adapter driver rtl8723be
Card-2 Realtek RTL8101/2/6E PCIE Fast/Gigabit Ethernet controller driver
Отключаем драйвер, добавляем в опции использовать первую антенну, проверяем качество сигнала.
Код: Выделить всё
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be ant_sel=1
iwlist scan | egrep -i 'ssid|quality'
Проделываем те же операции, выставляя приемником вторую антенну.
Код: Выделить всё
sudo modprobe -r rtl8723be
sudo modprobe rtl8723be ant_sel=2
iwlist scan | egrep -i 'ssid|quality'
Код: Выделить всё
echo "options rtl8723be ant_sel=2" | sudo tee -a /etc/modprobe.d/rtl8723be.conf
Код: Выделить всё
cat /etc/modprobe.d/rtl8723be.conf
Добавление от "Белый Кролик":
Белый Кролик писал(а): ↑21 июл 2019, 08:43Хочу добавить что при обновлении ядра, у этого модуля меняется номер гнезда для антенны и все манипуляции нужно проделать заново но с нужным номером гнезда. Т.е. на ядрах 4.10 это для примера 1, а на 4.15 это уже 2. С версии ядра 4.18 переключать ничего не нужно, все работает из коробки. В ядрах 4.18-4.19 драйвер был с багом - утечка памяти, баг был исправлен в ядре 4.20. Проверял на linux mint 18.3-19.1/openSUSE leap 15/fedora 29 на ноутбке hp 15.