B8A audit, B8B Pronto remoteproc (fixed wcnss_mem 0x8b600000), B8C stock NV (fixes Pronto startup watchdog), B8D cfg80211/mac80211/wcn36xx -> phy0/wlan0, B8E wlan0 up + WPA2/CCMP test AP, B8F eMMC cache 857c9c30 with aurora-wifi autostart: 3/3 class-A cold boots, AP up 76-94 s after power-on, LTE unaffected. PSK, NV and PSK-bearing images are not published.
6.3 KiB
B8E — wlan0 up (B8E-1) + тестовый WPA2 AP (B8E-2), RAM only
Дата: 2026-10-03. Выполнено на живой RAM-загрузке B8D (aurora-b8d.img 1c28d0a4, LTE START OK). WCNSS запускался в этой загрузке
второй раз (после B8D stop) — поэтому phy#1/wiphy 1 вместо phy0 (новый probe wcn36xx). eMMC/B7C cache не трогались:
/sys/block/mmcblk0/stat writes 0 / sectors 0. Все бинарники и конфиги — только в /tmp (tmpfs).
B8E-1 — ip link set wlan0 up
| Результат | |
|---|---|
| WCNSS start | t=809.3 → up 809.4 → WCNSS Version 1.5 1.2 809.9 → wcn36xx: mac address: <MAC> 809.93 |
| ip link up | rc=0, wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP>, iw dev: type managed, txpower 20.00 dBm (было 0.00 при down) |
| FW/RF | wcn36xx: firmware WLAN version 'WCN v2.0 RadioPhy vUnknown with 19.2MHz XO' and CRM version 'CNSS-PR-1-4-2-c4-00084'; firmware API 1.5.1.2, 41 stations, 2 bssids — идентично JZ02 |
| стабильность | Pronto running, crash/watchdog/fatal/wcn36xx-err = 0 через ~60 с и ~145 с после up; LTE ping 5/5 ×2; eMMC 0 |
B8E-1 = PASS. XO 19.2 MHz подтверждён прошивкой (это исключает WCN3680/3660B с 48 MHz XO в upstream-данных);
строка RadioPhy vUnknown модель Iris сама не называет → WCN3620 = наиболее вероятный, совпадает с JZ02, формально не доказан.
B8E-2 — тестовый AP
Пакеты: Alpine v3.24 aarch64 hostapd 2.11-r4, libssl3/libcrypto3 3.5.9-r0, libnl3 3.11.0-r0 — все apk проверены:
C: из APKINDEX == sha1 control-сегмента, datahash из .PKGINFO == sha256 data-сегмента. RAM-бандл b8/b8e/bundle/ (SHA256SUMS),
на плате /tmp/b8e, LD_LIBRARY_PATH. Конфиг: SSID aurora-b8e, ch 6, hw_mode g, 802.11n HT20, WMM, WPA2-PSK, CCMP only, без country
(regdomain world). Пароль — одноразовый тестовый (только в bundle/hostapd-b8e.conf, при публикации вырезать).
Без DHCP/NAT/bridge; на wlan0 только статический 192.168.50.1/24 для проверки канала; на телефоне вручную 192.168.50.2.
| Критерий | Результат |
|---|---|
| AP поднят | wlan0: AP-ENABLED, iw dev: type AP, ssid aurora-b8e, ch 6 (2437 MHz) 20 MHz, 20 dBm. Единственное предупреждение VLAN: SET_VLAN_NAME_TYPE_CMD failed (VLAN не используется) |
| SSID виден | телефон нашёл и подключился |
| WPA2/CCMP | AP-STA-CONNECTED → pairwise key handshake completed (RSN) → EAPOL-4WAY-HS-COMPLETED, authorized: yes (оба подключения) |
| данные по каналу | ping AP→телефон есть ответы (min 2 ms); HTTP с телефона на busybox httpd 192.168.50.1: 200/304, «открывается сразу, обновляется быстро» |
| соединение держится | сессия 1: 351 с, завершена телефоном (deauth reason 3 — уходил к другому AP, подтверждено пользователем); сессия 2 (новый случайный MAC телефона): 436 с до остановки AP, 5 контрольных замеров без разрывов, tx failed 0, сигнал −26…−34 dBm, tx до MCS7 65 Mbit/s |
| Pronto/LTE | Pronto running всё время, crash 0; LTE ping wwan0 OK на всех замерах, MM connected, BEARER_CONNECTED |
| eMMC | writes 0 |
B8E-2 = PASS по заданным критериям.
Найденная особенность: доставка кадров спящему клиенту
Ping AP→телефон (2 мин, экран включён): 65/120, avg 2.8 с, max 10.8 с; ответы приходят пачками с RTT, уменьшающимся ровно на 1000 мс
(10856, 9856, 6855, …) → кадры для клиента в power save копятся и уходят, только когда клиент просыпается сам.
В wcn36xx (7.2.7) нет set_tim и нет AP_LINK_PS; шаблон beacon с TIM отдаётся в FW только при BSS_CHANGED_BEACON →
вероятно, TIM-бит для PS-станции не выставляется (гипотеза, не доказана). JZ02 использует такой же hostapd-конфиг (ch 6, HT, WPA2/CCMP,
+country RU, SHORT-GI-20, ap_isolate) — без обходного пути.
Практически: трафик, инициированный клиентом (HTTP), работает быстро. Риск для роутера — входящие без запроса пакеты (push, долгие
idle-TCP) к спящему клиенту. Не блокер для B8F; отметить для B9 (возможны: ap_max_inactivity/skip_inactivity_poll, проверка
dtim_period, или патч wcn36xx set_tim — отдельной задачей).
Прочее
- regulatory.db отсутствует → world
00(ch 12–13 no-IR). JZ02 ставитcountry_code=RU+ieee80211d=1; без regdb это не меняет реальный regdomain ядра — решать при B8F/B9. - MAC AP:
<MAC>(lk DT, из eMMC serial) — стабилен. - После теста: hostapd и httpd остановлены, адрес снят,
wlan0managed/UP, Pronto running. Плата — RAM-загрузка B8D.
Цепочка
hardware → DT → remoteproc → wcnss.mdt → WCNSS_CTRL → NV → wcn36xx → phy → wlan0 up (FW 19.2 MHz XO)
→ hostapd AP WPA2/CCMP → телефон подключён, данные ходят, сессия держится PASS
→ persistent cache + автозапуск (B8F) — ждёт GO
Файлы
e1/ — e1-up.txt, mon-1/2; e2/ — ap-start, mon-1..4, hold.txt, ping-phone.log, hostapd.log (ключи [REMOVED]), httpd.log,
dmesg.full, stop.txt. Скрипты: b8/b8e/e1-up.sh, b8/b8e/e1-mon.sh, b8/b8e/bundle/{ap-start,ap-mon,ap-stop}.sh;
пакеты b8/b8e/dl/ (APK-SHA256SUMS, APKINDEX).