Отваливается Wi-fi (WB 7.4)

Доброго дня.

На контроллере (WirenBoard 7.4.4, releasewb-2606 (astesting)) собран сетевой мост из wlan0 и eth1. Установлен Tailscale. Клиенты wi-fi через контроллер пробрасываются в сеть роутера, подключенного к контроллеру проводом. После перезагрузки всё работает как нужно.
Через некоторое время ssid сети wi-fi контроллера пропадает из обнаружения, клиенты отваливаются. В нормальном состоянии сеть работает от нескольких часов до нескольких дней.
Что делалось:

  • сносился и заново собирался мост
  • отключались все остальные интерфейсы
  • мост переносился на wlan1 и eth0
  • на wlan фиксировался режим и канал
  • общение с ИИ не помогло однозначно понять проблему, из последнего - результат вывода dmesg | grep -iE ‘wlan0|wlan1|firmware|error|fail’ - повторяющийся блок:

[1722935.585483] RTW: ERROR REG_210:0x00000000

[1722935.589840] RTW: ERROR REG_230:0x00000000

[1722935.595366] RTW: ERROR REG_234:0x00000000

[1722935.599730] RTW: ERROR REG_238:0x0000000 0

[1722935.604183] RTW: ERROR REG_23C:0x000000 0 0

[1722935.611638] RTW: ERROR REG_240:0x00000 0 00

[1722935.615975] RTW: ERROR REG_418:0x0bff 0 0ec

[1722935.620722] RTW: ERROR REG_10FC:0x000 0 ffff

[1722935.625225] RTW: ERROR REG_10F8:0x03 f fffff

[1722935.629722] RTW: ERROR REG_11F4:0x0 0 000000

[1722935.634281] RTW: ERROR REG_11F8:0x 0 0000000

[1722935.638575] RTW: ERROR rtw_halmac_txfifo_wait_empty: Fail to wait txfifo empty! ( cnt=618)

[1722935.646995] RTW: ERROR [HW_VAR_CHECK_TXBUF] NOT empty in 2070 ms

Прошу помощи в понимании проблемы и её решении

P.S. Контроллер с тестового стенда, на нём установлен NodeRed, Fuxa, Sprut и тд

Добрый день.

Ошибки RTW в dmesg указывают не на настройки сети, а на зависание самого Wi-Fi модуля. Проблема ниже уровня NetworkManager, поэтому пересборка моста и перенос на другие интерфейсы не помогали.

Чтобы локализовать проблему, сделайте, пожалуйста, следующее.

  1. Когда точка доступа пропадёт в очередной раз, проверьте, восстанавливается ли она без перезагрузки. Подключитесь по проводу или через Tailscale и выполните
    nmcli connection down <имя AP-соединения> и nmcli connection up <имя AP-соединения>
    Имя соединения можно посмотреть командой nmcli connection show. Если не помогло, выгрузите и загрузите модуль драйвера Wi-Fi через modprobe -r и modprobe (имя модуля покажет lsmod | grep -i 87). Напишите, какой из шагов вернул сеть.
  2. Соберите в веб-интерфейсе диагностический архив и прикрепите к теме.
  3. На контроллере установлен testing-релиз wb-2606. Такие релизы могут содержать ошибки, диагностику мы ведём на стабильных релизах. Так как контроллер стендовый, проверьте, пожалуйста, воспроизводится ли проблема на последнем стабильном релизе.

Жду обратной связи)

Спасибо!

  1. nmcli connection down/up соединения помогает

  2. Соединение переподключено примерно в 12:20, отслеживание пинга до хоста показало отвал в 12:53:48 (проверяется раз в 10 минут). Полный лог всех сервисов прилагаю

    log_20260709T130911.log (587,7 КБ)

  3. Подскажите, перевод на stable однозначно необходим? Пока по ряду причин не хотелось бы.

Судя по логам у вас после down/up чип работает, но остается в сбойном состоянии. Поэтому для полной картины попрошу вас, пожалуйста, отправить архив с диагностической информацией контроллера. Создание архива описано в документации.

Предварительно попробуйте еще вместо down/up полностью перезагрузить драйвер Wi-Fi:

  1. Найдите имя модуля командой lsmod | grep -i 8733
  2. Выполните nmcli con down <имя AP-соединения>, затем modprobe -r <модуль>, modprobe <модуль> и nmcli con up <имя AP-соединения>
  3. Понаблюдайте за dmesg | grep -i txfifo. Хочу увидеть исчезают ли ошибки после полной перезагрузки драйвера и через какое время появляются снова. После обычного down/up они вернулись через полминуты :thinking:

Также не помешает серийный номер контроллера.

А переход на stable можем не проводить. Просто помните, что testing-релизы мы не гарантируем, и если дойдёт до разработчиков, то воспроизведение можем запросить именно на стабильном релизе.

После перезапуска модуля (если я правильно это сделал)) соединение не поднимается

root@wirenboard-AVKE6YTO:~# lsmod | grep -i 8733
8733bu               3411968  0
cfg80211              790528  1 8733bu
root@wirenboard-AVKE6YTO:~# nmcli connection down bridge-slave-wifi
Connection ‘bridge-slave-wifi’ successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/8)
root@wirenboard-AVKE6YTO:~# modprobe -r 8733bu
root@wirenboard-AVKE6YTO:~# modprobe 8733bu
root@wirenboard-AVKE6YTO:~# nmcli connection up bridge-slave-wifi

Error: Connection activation failed: 802.1X supplicant took too long to authenticate
Hint: use ‘journalctl -xe NM_CONNECTION=37c3f4d1-017c-4f8e-9b12-bb923143a404 + NM_DEVICE=wlan0’ to get more details.
root@wirenboard-AVKE6YTO:~# journalctl -xe NM_CONNECTION=37c3f4d1-017c-4f8e-9b12-bb923143a404 + NM_DEVICE=wlan0
Jul 09 14:32:42 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596762.8100] device (wlan0): Activation: failed for connection ‘bridge-slave-wifi’
Jul 09 14:32:42 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596762.8117] device (wlan0): state change: failed → disconnected (reason ‘none’, sys-iface-state: ‘managed’)
Jul 09 14:32:42 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596762.8669] device (wlan0): supplicant interface state: scanning → disconnected
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.3204] device (wlan0): Activation: starting connection ‘bridge-slave-wifi’ (37c3f4d1-017c-4f8e-9b12-bb923143a404)
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.3221] device (wlan0): state change: disconnected → prepare (reason ‘none’, sys-iface-state: ‘managed’)
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.3637] device (wlan0): state change: prepare → config (reason ‘none’, sys-iface-state: ‘managed’)
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.3654] device (wlan0): Activation: (wifi) access point ‘bridge-slave-wifi’ has security, but secrets are require>
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.3656] device (wlan0): state change: config → need-auth (reason ‘none’, sys-iface-state: ‘managed’)
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.4017] device (wlan0): state change: need-auth → prepare (reason ‘none’, sys-iface-state: ‘managed’)
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.4162] device (wlan0): state change: prepare → config (reason ‘none’, sys-iface-state: ‘managed’)
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.4211] device (wlan0): Activation: (wifi) connection ‘bridge-slave-wifi’ has security, and secrets exist.  No ne>
Jul 09 14:32:46 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596766.5505] device (wlan0): supplicant interface state: disconnected → scanning
Jul 09 14:33:11 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596791.8071] device (wlan0): Activation: (wifi) Hotspot network creation took too long, failing activation
Jul 09 14:33:11 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596791.8073] device (wlan0): state change: config → failed (reason ‘supplicant-timeout’, sys-iface-state: ‘managed’)
Jul 09 14:33:11 wirenboard-AVKE6YTO NetworkManager[2815]:   [1783596791.8098] device (wlan0): released from master device br0

Сбор диагностического архива в GUI повисает, через консоль выдает:

root@wirenboard-AVKE6YTO:~# wb-diag-collect diag
Start data collecting
Traceback (most recent call last):
File “/usr/lib/python3.9/asyncio/subprocess.py”, line 135, in wait
return await self._transport._wait()
File “/usr/lib/python3.9/asyncio/base_subprocess.py”, line 235, in _wait
return await waiter
asyncio.exceptions.CancelledError

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/lib/python3.9/asyncio/tasks.py”, line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File “/usr/bin/wb-diag-collect”, line 10, in 
sys.exit(main())
File “/usr/share/wb-diag-collect/wb/diag/diag_collect.py”, line 71, in main
asyncio.get_event_loop().run_until_complete(
File “/usr/lib/python3.9/asyncio/base_events.py”, line 642, in run_until_complete
return future.result()
File “/usr/share/wb-diag-collect/wb/diag/collector.py”, line 32, in collect
await self.execute_commands(tmpdir, options[“commands”], options[“timeout”])
File “/usr/share/wb-diag-collect/wb/diag/collector.py”, line 121, in execute_commands
await asyncio.wait_for(proc.wait(), timeout=timeout)
File “/usr/lib/python3.9/asyncio/tasks.py”, line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError

Мда, похоже, что полностью сбросить его пока может только ребут контроллера.

Падение сборщика, известная проблема старых его версий, в свежих версиях исправлено. Поэтому план такой:

  1. Перезагрузите контроллер, если нужен Wi-Fi прямо сейчас.
  2. Выполните apt update && apt install wb-diag-collect. Обновится только этот пакет, сюита и релиз не меняются. Затем соберите архив и прикрепите к теме. Если сборщик снова упадёт, пришлите вывод dpkg -s wb-diag-collect | grep Version.
  3. Периодически поглядывайте dmesg | grep -i txfifo. надо поймать, когда появится первая ошибка, сразу после загрузки или ближе к отвалу.
  4. И расскажите, пожалуйста, как именно вы настраивали мост и точку доступа, по какой инструкции или какой последовательностью команд. Состав моста из первого сообщения помним, интересуют именно команды. Хотим собрать такой же стенд и воспроизвести проблему у себя.
  1. приложен диагностический архив, доступен только сотрудникам поддержки
    (1,8 МБ)
  2. принял
  3. Мост настраивался полностью по статье wiki.wirenboard.com. На момент создания моста (с wlan0) на wlan1 существовало подключение в режиме клиента. После создания моста сетевые настройки в GUI стали недоступны. Также настраивался tailscale по статье (на моменте “apt update && apt install iptables-persistent” помню, были ошибки, маскарадинг слетал после перезагрузки, пробовал nftables-persistent. Что конкретно помогло, к сожалению, не помню, но маскарадинг между мостом и tailscale перестал слетать).
    До этого устанавливался tailscale (без моста), вручную прописывал маршруты и правила между интерфейсами. Насколько помню, не разобрался как сохранить настройки после перезагрузки, удалил tailscale, перешёл к настройке моста.

Уточнение, маскарадинг в Tailscale после перезагрузки отваливается и восстанавливается вручную

В текущем состоянии, после сегодняшней перезагрузки, за два часа нет ни одной ошибки. То есть сейчас чип работает чисто, а деградация включается каким-то событием позже, и этот момент нам нужно поймать. Поэтому, если есть время и возможность, то настройки пока не меняйте, пусть система живёт как есть. Когда точка отвалится в следующий раз, выполните и пришлите до перезагрузки:

dmesg | grep -i txfifo | head -1` и `uptime`

А и спасибо, что написали ваш путь настройки. Передам коллегам.

Доброго времени суток.
Сеть отвалилась 11.07:

  • первые ошибки в логе вида “RTW: ERROR …” появились в 02:26
  • отвал клиента пойман в 03:17
  • до отвала система проработала около 1,5 дней (перезагрузка 09.07 ~14:30)

log_20260711T032504.log (479,5 КБ)

приложен диагностический архив, доступен только сотрудникам поддержки
(1,8 МБ)

Спасибо за обратную связь. Всё проверим и отпишемся

Да, по свежему архиву видно, что после down/up чип продолжает жить в деградированном режиме, ошибки идут каждые 2 минуты до сих пор, хотя точка вещает.

Первая ошибка совпала с отключением неактивного клиента, а у этого семейства драйверов Realtek такие зависания часто провоцирует энергосбережение. В исходниках драйвера, оно включено и управляется параметром. Давайте исключим эту ошибку, отключив временно энергосбережение wifi модуля:

echo 'options 8733bu rtw_power_mgnt=0' > /etc/modprobe.d/8733bu-nops.conf
reboot

После перезагрузки проверьте, что настройка применилась, команда cat /sys/module/8733bu/parameters/rtw_power_mgnt должна показать 0. Откат простой (если потребуется) - удалить файл и перезагрузиться.

Дальше пользуйтесь как обычно и поглядывайте dmesg | grep -i txfifo. Если с отключённым энергосбережением деградация не наступит, то виновник локализован. Жду обратной связи

Сеть отвалилась сегодня с утра.

Контроллер обновлён до Debian 13, пока работает, продолжаем наблюдение :slightly_smiling_face:

Отключение энергосбережения и обновление на Трикси провели до отключения?

В общем, чтобы утренний отвал не пропал для диагностики, пришлите, пожалуйста, несколько выводов:

  1. cat /usr/lib/wb-release и uname -r, чтобы понять, на каком релизе и ядре вы теперь.
  2. cat /sys/module/8733bu/parameters/rtw_power_mgnt, пережила ли настройка энергосбережения обновление.
  3. Успели ли вы до утреннего отвала применить настройку из прошлого сообщения и перезагрузиться, и показывала ли проверка 0.
  4. journalctl --list-boots, найдите в списке загрузку, во время которой случился утренний отвал, и для неё выполните journalctl -b <номер> -k | grep -i txfifo | head -1.

Дальше наблюдаем как раньше. При следующем отвале до перезагрузки dmesg | grep -i txfifo | head -1 и uptime.

1
RELEASE_NAME=unstable.latest
SUITE=testing
TARGET=wb7/trixie

5.10.35-wb182

2,3 Энергосбережение осталось. Было включено до отвала сети сегодня (включено вчера, проверка показывала 0).

4
root@wirenboard-AVKE6YTO:~# journalctl -b a1c7c550ae2f4c519aa86a0325b18540 -k | grep -i txfifo | head -1
Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR rtw_halmac_txfifo_wait_empty: Fail to wait txfifo empty!(cnt=634)

Хорошо, тогда жду выводы по сообщению выше

Дополнил предыдущее сообщение

Тогда следующий кандидат, фоновые сканирования эфира со второго интерфейса wlan1. Он делит один радиочип с точкой на wlan0. Предлагаю вывести wlan1 из-под управления NM, снова одно изменение:

printf '[keyfile]\nunmanaged-devices=interface-name:wlan1\n' > /etc/NetworkManager/conf.d/unmanage-wlan1.conf
nmcli general reload

Обязательноая проверка такая - в выводе nmcli device wlan1 должен получить статус unmanaged. Если статус не сменился, выполните systemctl restart NetworkManager, сеть при этом кратковременно моргнёт. Если нужен будет откат, то нужно будет удалить файл и снова nmcli general reload. На точку и мост это не влияет, wlan1 у вас не используется.

И три коротких вывода для полноты картины:

  1. Строка про загрузку a1c7c550 из journalctl --list-boots, нужно время её старта.
  2. journalctl -b a1c7c550ae2f4c519aa86a0325b18540 -k | grep -m1 -B10 txfifo, что происходило перед первой ошибкой.
  3. dpkg -s network-manager | grep Version.

Дальше наблюдаем как раньше

  1. journalctl --list-boots
    IDX BOOT ID FIRST ENTRY LAST ENTRY
    -7 6eaeb11944714a31ac0223a82df9e63e Thu 2026-07-02 22:06:05 MSK Thu 2026-07-09 14:35:58 MSK
    -6 64b4e6fa011b4f6b96f86f71d6a88dfb Thu 2026-07-09 14:36:20 MSK Mon 2026-07-13 17:10:36 MSK
    -5 a1c7c550ae2f4c519aa86a0325b18540 Mon 2026-07-13 17:11:05 MSK Tue 2026-07-14 10:05:20 MSK
    -4 4c626b3bb305400b8d5b1bffa1592b5c Tue 2026-07-14 10:05:51 MSK Tue 2026-07-14 11:26:42 MSK
    -3 136368e265cd4d449740043704eadd05 Tue 2026-07-14 11:27:03 MSK Tue 2026-07-14 13:15:57 MSK
    -2 6a90c3b9079242b3924a432e13201f2a Tue 2026-07-14 13:16:18 MSK Tue 2026-07-14 13:17:39 MSK
    -1 c6dc2e3035e0430e90a05f3b39c133b1 Tue 2026-07-14 13:18:21 MSK Tue 2026-07-14 14:27:46 MSK
    0 1e55919ce25a4be4ad80cbe1191de030 Tue 2026-07-14 14:28:09 MSK Tue 2026-07-14 16:22:34 MSK

  2. journalctl -b a1c7c550ae2f4c519aa86a0325b18540 -k | grep -m1 -B10 txfifo

    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_230:0x00000000
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_234:0x00000000
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_238:0x00000000
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_23C:0x00000000
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_240:0x00000000
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_418:0x0bff00ec
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_10FC:0x0000ffff
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_10F8:0x03ffffff
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_11F4:0x00000000
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR REG_11F8:0x00000000
    Jul 14 09:26:06 wirenboard-AVKE6YTO kernel: RTW: ERROR rtw_halmac_txfifo_wait_empty: Fail to wait txfifo empty!(cnt=634)

  3. dpkg -s network-manager | grep Version
    Version: 1.52.0-6-wb102

Wlan1 выведен из Network Manager, nmcli device показывает wlan1 wifi unmanaged –