sebastan napisał/a:

Próbuję zrobić wszystko to, co opisujecie, żeby chociaż mieć namiastkę zabawy, której nie mogę się doczekać na AX3600. Robięwięc kroki z linku z pierwszego postu i staję na:

"Jeżeli mamy chińską wersje routera i po odczytaniu bdata CountryCode: CN, trzeba to zmienić na EU (firmware ze zmienioną mocą działa tylko przy CountryCode: EU). Czyli zamiast powyższego wpisujemy:

python scripts\header.py modify modify --country EU \bdata\bdata_mtd9.img \bdata\bdata_mtd9.img.mod"

Niestety po tej komendzie mam :

c:\ax3600>python scripts\header.py modify modify --country EU \bdata\bdata_mtd9.img \bdata\bdata_mtd9.img.mod
usage: header.py [-h] {extract,modify} ...
header.py: error: unrecognized arguments: \bdata\bdata_mtd9.img.mod

Pewnie gdzieś jakieś jeden znaczek, mała podpowiedź?

Hej;)
Też z tym walczyłem proszę:
Pkt 8 powinno być:
python scripts\header.py modify bdata\bdata_mtd9.img bdata\bdata_mtd9.img.mod
Albo:
python scripts\header.py modify \bdata\bdata_mtd9.img \bdata\bdata_mtd9.img.mod
W przypadku drugiej części skryptu:
python scripts\header.py modify --country EU \bdata\bdata_mtd9.img \bdata\bdata_mtd9.img.mod
Lub:
python scripts\header.py modify --country EU bdata\bdata_mtd9.img bdata\bdata_mtd9.img.mod

podtor napisał/a:

Dziękuję, wrócę do domu to będę się bawił smile

Polecam bardzo ten sposób. Mordowałem sie z jakimiś wifi analyzer'ami na android. Ale to nie ma porównania tu masz odświeżanie co sekundę. Extra dokładność.
Niebo a ziemia u mnie obecnie.

@Cezary bardzo Ci dziękuję za pomoc, wyrozumiałość i cierpliwość

Cezary napisał/a:

Nie, inny shell to bash, dash a nie ash z busboxa. Ale jeżeli masz na drugim prawidłowo i masz te same wersje softu i te same ustawienia to problem leży w innym miejscu i musisz znaleźć co sprawia problem.

Też tak myślę. Moim zdaniem problem jest w tym, że ten router na którym czas nie synchronizuje się prawidłowo, a który jest podłączony po Lanie z routerem od UPC jest blokowany przez ten router UPC.
Albo firewall, albo jakieś porty odpowiedzialne za synchronizację czasu są blokowane na tym ax3600 przez Connect Boxa od UPC.
Przypominam sobie, że jakiś poprzedni router TP-Linka z OpenWrt miał ten sam probleem będą podpięty pod ten router od UPC.

Cezary,
zobacz prosze na efekt na tym drugim ax3600 działającym w mesh na którym czas synchronizuje się prawidłowo.
Wynika chyba z tego, że masz racje i xiaomi dało ciała z tą linia 93.
Rozumiem, że chyba ten inny shell to "/etc/hotplug.d/ntp"?

root@XiaoQiang:~# ntpsetclock
/usr/sbin/ntpsetclock: local: line 93: not in a function
INFO: last ntp sync sucessed at
ntp: INFO: ntp sync ok.
ntp: Begin run ntp script in /etc/hotplug.d/ntp
ntp: exec /etc/hotplug.d/ntp/25-dnsmasqsec
root@XiaoQiang:~#

zawartość pliku "hotplug.d/ntp":

#!/bin/sh
[ "$1" = stratum ] || exit 0
ACTION="$1" /sbin/hotplug-call ntp

Może dodam jeszcze wynik ntpsetclock

Czy problem nie polega na tym, że router działa jako AP i nie ma wpiętego kabla w WAN?
Wiem, że to bez sensu, ale linia 93 to:
"check_wan           
if [ "$NET_CONNECTED" = "0" ]; then           
    echo "INFO: internet is not connected. exit."           
    exit 0    "       


root@XiaoQiang:~# ntpsetclock

/usr/sbin/ntpsetclock: local: line 93: not in a function

INFO: last ntp sync sucessed at

ntpd: duplicate peer 1.pool.ntp.org (192.168.0.220)

ntpd: duplicate peer 2.pool.ntp.org (192.168.0.220)

ntpd: duplicate peer 3.pool.ntp.org (192.168.0.220)

ntpd: duplicate peer 3.asia.pool.ntp.org (192.168.0.220)

ntpd: duplicate peer 0.asia.pool.ntp.org (192.168.0.220)

ntpd: duplicate peer 0.cn.pool.ntp.org (192.168.0.220)

Alarm clock

ntp: WARN: ntp update failed: /usr/sbin/ntpd -N -q -n -4 -p 0.pool.ntp.org -p 1.pool.ntp.org -p 2.pool.ntp.org -p 3.pool.ntp.org -p 3.asia.pool.ntp.org -p 0.asia.pool.ntp.org -p 0.cn.pool.ntp.org, try htp

ntp: INFO: htp sync ok.

ntp: Begin run ntp script in /etc/hotplug.d/ntp

ntp: exec /etc/hotplug.d/ntp/25-dnsmasqsec

root@XiaoQiang:~#

Cezary napisał/a:

1. ntpsetclock sugeruje że tak jest, więc uruchom z palca: /usr/sbin/ntpsetclock 60 log i zobacz co wypisze
2. Spytaj producenta? Kupiłeś to wymagaj, bo chyba pytanie skierowałeś do niewłaściwego adresata. Producent ci odpowie jak to wszystko działa w jego sofcie.
3. Znów - spytaj producenta. Bo nie wiem co xiaomi ma w sofcie i czego używa do synchronizacji czasu. ntpclienta, ntpd czy czegoś innego. Używasz oryginalnego softu producenta, więc...

Ad.1
Zarówno na jednym jak i drugim ax3600 efekt ten sam:
root@XiaoQiang:~# /usr/sbin/ntpsetclock 60 log
/usr/sbin/ntpsetclock: local: line 93: not in a function
INFO: last ntp sync sucessed at
root@XiaoQiang:~#

ale w folderze /usr/sbin/ mam taki plik "ntpsetclock"
poniżej przesyłam zawartość może nam coś pomoże?
Wynika chyba z niego, że ax3600 używa ntpd?

#!/bin/sh
timeout="$1"
once="$2"
#
. /lib/lib.scripthelper.sh
#

NTPSTATUSFLAG="/tmp/ntp.status"
SCRIP_PATH='/etc/hotplug.d/ntp'
NET_CONNECTED=0

check_wan()
{
    local cc=$(nvram get CountryCode)   
    local host_list=
    cc=${cc:-CN}
   
    if [ "$1" == "CN" ]; then
        host_list=$(uci -q get system.netdt.cn_domain)
    else
        host_list=$(uci -q get system.netdt.world_domain)
    fi
    for host in $host_list; do
        ping -c 1 -w 3 -q "$host" &> /dev/null && {
            NET_CONNECTED=1
            return 0;
        }   
    done
    return 1;
}

dlog() {
    logger -s -p 6 -t "ntp" "$@"
}

run_scripts() {
    dlog "Begin run ntp script in $SCRIP_PATH"
    for i in $SCRIP_PATH/*; do
    dlog "exec $i"
    $i $1 &>/dev/null
    done &
}

time_sync_done(){
    dlog "INFO: $1 sync ok."
    echo -e "ok,`date +"%Y%m%d%H%M%S"`" >$NTPSTATUSFLAG 2>/dev/null
    # run background
    run_scripts $(date +%s)
}

# get time from http header
htp_backup(){
    local htphost='htp.miwifi.com'
    #local htpcmd="htpdate -4 -l -t -s $htphost"
    # default(without -t) the time_limit is 1 year and with -t option it is 2100000000(much more than 1 year)
    # when (-time_limit < server_time - system_time < time_limit), the time get from server is considered as valid
    # but when HTTP response doesn't contain "Date:" field, server_time will be the default LONG_MAX(2147483647)
    # and then considered as a valid time with -t option, and htpdate will return 0(although settimeofday failed)
    local htpcmd="htpdate -4 -l -s $htphost"
    runt "$timeout" "$htpcmd"
    local synccode=$?
    if [ $synccode -ne 0 ]
    then
    dlog "ERROR: htp failed... do you have a working Internet connection?"
    return 1
    else
    time_sync_done "htp"
    return 0
    fi
}

# skip time adjust when uninitilized
[ $(uci -q get xiaoqiang.common.INITTED) = "NO" ] && exit 0

LOCKFILE=/var/lock/ntpd-ifup
trap "lock -u ${LOCKFILE}; exit" INT TERM EXIT
if ! lock -n $LOCKFILE; then
    dlog "ntp already running, skip this sync"
    trap '' EXIT
    exit 0
fi

CLOCKFILE='/data/sysapi/clock.ts'
NTPSTATUS=$(cut -d, -f1 $NTPSTATUSFLAG 2>/dev/null)
if [ "$(/bin/date -u +%s 2>/dev/null)" -lt "0" ]; then
    /bin/date -s "1970-01-01 13:00:00" 2>/dev/null && logger -t "ntpsetclock" "fix epoch time ok $(/bin/date -u +%s 2>/dev/null)"
fi

if [ "$NTPSTATUS" = "ok" ];then
    local last_sync=$(cut -d, -f2 $NTPSTATUSFLAG 2>/dev/null)
    echo "INFO: last ntp sync sucessed at $last_sync"
    [ -n "$once" ] && exit 0
fi

check_wan
if [ "$NET_CONNECTED" = "0" ]; then
    echo "INFO: internet is not connected. exit."
    exit 0
fi

ntpservers="$(uci get system.ntp.server)"
echo "$ntpservers"| grep -q "hk.pool.ntp.f25.me"
if [ $? -eq 0 ]
    then
    uci set system.ntp.server="0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org 3.asia.pool.ntp.org 0.asia.pool.ntp.org 0.cn.pool.ntp.org" 2>/dev/null&&uci commit
    if [ $? -eq 0 ]
        then
        echo "INFO: old ntp server list ,update ntp server sucessed!"
    else
        echo "ERROR: old ntp server list ,update ntp server  failed!"
    fi
    ntpservers="0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org 3.asia.pool.ntp.org 0.asia.pool.ntp.org 0.cn.pool.ntp.org"
fi
test -z "$ntpservers" && ntpservers="0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org 3.asia.pool.ntp.org 0.asia.pool.ntp.org 0.cn.pool.ntp.org"

#do not print debugging info
ntpcmd="/usr/sbin/ntpd -N -q -n -4"
for onentpsrv in $ntpservers
do
    ntpcmd="$ntpcmd -p $onentpsrv"
done

case $timeout in
    post)
    echo "INFO: wan up event, ntp sync called."
    echo "INFO: delay 3 seconds befor sync."
    sleep 3
    ;;
    now)
    echo "INFO:  emergency ntp sync called."
    ;;
    rand)
    sleeptm=`cat /dev/urandom |head -c 30|md5sum | tr -d [0a-zA-Z- ]  2>/dev/null`
    sleeptm=$((${sleeptm:0:8}%300))
    echo "INFO: random ntp sync called."
    echo "sleep $sleeptm for ntpd sync"
    sleep $sleeptm
    ;;
    *)
    timeout=60
    ;;
esac

eval "$ntpcmd"
if [ $? -ne 0 ]
then
    dlog "WARN: ntp update failed: $ntpcmd, try htp"
    htp_backup
else
    time_sync_done "ntp"
fi

@Cezary
Czy mógłbym Cię jeszcze prosić o pomoc w naprawieniu tej synchronizacji czasu?
Próbuje, czytam ale nie mogę sobie z tym poradzić.

Zastanawiam się czy:
1. Czy poniższe polecenie w crontab, które mam domyślnie ustawione nie dotyczy właśnie synchronizacji czasu?
*/15 * * * * /usr/sbin/ntpsetclock 60 log >/dev/null 2>&1
* * * * * /usr/sbin/startscene_crontab.lua `/bin/date "+%u %H:%M"`
48 3,4,5 * * * /usr/sbin/otapredownload >/dev/null 2>&1

2. Jeśli tak to dlaczego nie działa skoro przy tym samym firmware w tej samej sieci i takim samym crontab działa na drugim ax3600 w tej samej sieci?

3. Czy mógłbym zastosować jakieś polecenie w crontab które synchronizowało by mi czas na poprawny?

Popsuło mi się coś w ustawieniach czasu na tym głównym routerze ax3600.
Czas pokazuje jako dzień wcześniej z niepoprawną godziną.
Ustawienia regionalne sa poprawne czyli Polska i UTC+1
Co ciekawe na tym dodatkowym routerze czas jest prawidłowy.

Zastanawiam się czy coś się wysypało w cron, że nie pobiera tego czasu?
Pierwsze polecenie to chyba pobieranie czasu właśnie

Taki mam crontab:
root@XiaoQiang:~# crontab -e
*/15 * * * * /usr/sbin/ntpsetclock 60 log >/dev/null 2>&1
* * * * * /usr/sbin/startscene_crontab.lua `/bin/date "+%u %H:%M"`
48 3,4,5 * * * /usr/sbin/otapredownload >/dev/null 2>&1
0 3 * * * /usr/sbin/rmportscanresult.sh >/dev/null 2>&1
54 15 * * * /sbin/wifi down
58 15 * * * /sbin/wifi restart
00 16 * * * ifup lan

Zastanawiam się czy problemem nie jest UPC. Tak jakby router podpięty na lanie do głównego routera UPC był blokowany przy synchronizacji czasu. bo to nie jest kwestia strefy czasowej, czas nie różnic się o dokładnie kilka godzin tylko nie zgadzają się ani minuty ani godzina. A router kolejny już nie ma problemu i synchronizuje czas prawidłowo.

Cezary napisał/a:

Więc zobacz co będzie jak tak zrobisz.

ok tak zrobię. tylko czy powinno być:
05 08 * * * ifup lan
czy
05 08 * * * ifup wan

chyba 05 08 * * * ifup lan bo kabel mam wpięty do portu LAN nie WAN prawda?

jeśli nie będzie działać to czy powinno być tak?:
0 24 * * * /sbin/wifi down
0 08 * * * /sbin/wifi restart
05 08 * * * reload_config

Cezary napisał/a:

A nie wiem co tam to xiaomi ma. Ma /etc/config/network? Są tam wpisane sieci? Jeżeli tak to spróbuj ifup nazwa-sekcji-sieci. jak nie ma to /etc/config/network restart. Jak nie nie działa to reload_config. Jak nie działa to zrob o 8 rano restart routera?

Ma /etc/config/network zawartość jak poniżej.
Czy związku z tym powinno być tak?:
0 24 * * * /sbin/wifi down
0 08 * * * /sbin/wifi restart
05 08 * * * ifup lan


config interface 'loopback'
    option ifname 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config switch
    option name 'switch0'

config interface 'lan'
    option ifname 'eth2 eth3 eth4'
    option force_link '1'
    option type 'bridge'
    option proto 'static'
    option netmask '255.255.255.0'
    option ipv6 '0'
    option multicast_querier '0'
    option igmp_snooping '0'
    option macaddr 'xxx'
    option ieee1905managed '1'
    option ipaddr '192.168.0.220'

config interface 'eth1'
    option ifname 'eth1'
    option keepup '1'

config interface 'wan'
    option proto 'dhcp'
    option mtu '1500'
    option ifname 'eth1'

Cezary napisał/a:

A może po włączeniu wifi musisz zrestartować network?

Myślę, że masz rację czy mógłbym Cię prosić o wskazanie jak to powinno wyglądać w cron?

0 24 * * * /sbin/wifi down
0 08 * * * /sbin/wifi restart
05 08 * * * service network-manager restart

czy tak będzie ok?

Niestety nie działa wszystko do końca dobrze.

1. Na routerze tym dodatkowym, który jest tylko "satelitą" w mesh wifi wyłącza się i włącza prawidłowo o wskazanych godzinach
2. Przy identycznych ustawieniach w CRON, router główny wyłącza wifi o wskazanej godzinie, włącza wifi o wskazanej godzinie, ale niestety internet nie działa bo nie otrzymuje adresu z DHCP.

Co może być powodem? Muszę za każdym razem restartować router i wtedy dostaje adres. Czy będę musiał zmienić ustawienie na restart routera, a nie tylko wifi?

Cezary napisał/a:

No masz, przecież vi się uruchamia. Przełącz go w tryb wpisywania i jedziesz. Obsługę vi znajdziesz m.in u mnie: https://eko.one.pl/?p=vi

A sam plik to /etc/crontabs/root

Cezary jesteś Mistrzem, dziękuję Ci za cierpliwość nawet do takich laików jak ja:)
Niesamowite, ale wszystko działa!

Nawet po restarcie routera moje polecenia nadal są przechowywane w tabeli crona.

P.S.Mało się chyba o tym pisze na forach o AX3600, ale czy w takim razie Soft od Xiaomi daje aż tak dużą możliwość używania funkcji z OpenWrt w ich stockowym sofcie?
Chyba zacznę mocniej się wgłębiać i testować kolejne możliwości jakie daje OpenWrt ta tym sofcie do czasu jak nie będzie oficjalnego OpenWrt.
Na razie byłem przyzwyczajony do prostego klikania w Luci a tu okazuje się, że konsola nie jest aż taka straszna:)
(a Cezary zachęca do niej na każdym kroku big_smile)

nie mogę wpisać "0 24 * * * /sbin/wifi down
0 08 * * * /sbin/wifi restart"
po wpisaniu crontab -e nie mam możliwości dopisania tych wartości.

Czy mogę wpisać to w jakimś pliku przez WinSCP?
historia poniżej:

root@XiaoQiang:~# crontab -e
*/15 * * * * /usr/sbin/ntpsetclock 60 log >/dev/null 2>&1
* * * * * /usr/sbin/startscene_crontab.lua `/bin/date "+%u %H:%M"`
48 3,4,5 * * * /usr/sbin/otapredownload >/dev/null 2>&1
0 3 * * * /usr/sbin/rmportscanresult.sh >/dev/null 2>&1

~
~
~
~
- /etc/crontabs.29478 5/5 100%

Cezary napisał/a:

Prościej jest wyłączyć całe wifi niż zmieniać całą konfigurację za każdym razem.

ok czyli w moim przypadku najprościej będzie połączyć się przez SSH.

Następnie od razu wpisać te proste komendy jak poniżej i nic więcej?
Bardzo proszę o wyrozumiałość, ale jestem na razie laikiem w OpenWrt:)
Myślę, że będzie to też pomocne dla innych:

crontab -e
0 24 * * * /sbin/wifi down
0 08 * * * /sbin/wifi restart"

i wszystko powinno działać prawidłowo?
Bo rozumiem, że Cron już jest włączony skoro mam taki komunikat o uruchomionych procesach cron po wpisaniu: „cat /etc/crontabs/root”

*/15 * * * * /usr/sbin/ntpsetclock 60 log >/dev/null 2>&1
* * * * * /usr/sbin/startscene_crontab.lua `/bin/date "+%u %H:%M"`
48 3,4,5 * * * /usr/sbin/otapredownload >/dev/null 2>&1
0 3 * * * /usr/sbin/rmportscanresult.sh >/dev/null 2>&1

Hej,
Xiaomi AX3600 posiada opcję wyłączenia WiFi o określonych godzinach. Niestety jedynie z poziomu aplikacji mobilnej. Dodatkowo jeśli router pracuje w trybie mesh to tracimy tę funkcjonalność zupełnie. Ja mam właśnie dwa ax3600 spięte w mesh.
Oryginalny firmware oparty jest na OpenWrt co skłoniło mnie do szukania w jaki sposób można by to spróbować zrobić przez Cron.
Bardzo prosiłbym o pomoc bo na starym routerze robiłem to w prosty sposób przez Luci.
Skonfigurowałem już sobie wszystko i nie chciałbym też już czegoś popsuć????
1.    Zacząłem od znalezienia wireless iface name na obu routerach i tak:
Router główny:
wireless.wifi0
wireless.wifi1
wireless.wifi2
oraz
wireless.@wifi-iface[0]-5Ghz
wireless.@wifi-iface[1]-2.4GHz
wireless.@wifi-iface[2]-nie wiem
wireless.@wifi-iface[3]-mesh

Router pełniący funkcje satelity:
wireless.wifi0
wireless.wifi1
wireless.wifi2
oraz
wireless.@wifi-iface[0]-5Ghz
wireless.@wifi-iface[1]-2.4GHz
wireless.@wifi-iface[2]-nie wiem
wireless.@wifi-iface[3]-mesh
wireless.@wifi-iface[4]-mesh

Czy prawidłowa komenda w SSH dla routera głównego to będzie?:
"cat /etc/crontabs/root

30 0 * * *  uci set wireless.@wifi-iface[0].disabled=1 && uci commit wireless && wifi
30 0 * * *  uci set wireless.@wifi-iface[1].disabled=1 && uci commit wireless && wifi
30 0 * * *  uci set wireless.@wifi-iface[2].disabled=1 && uci commit wireless && wifi
30 0 * * *  uci set wireless.@wifi-iface[3].disabled=1 && uci commit wireless && wifi

30 6 * * *  uci set wireless.@wifi-iface[0].disabled=0 && uci commit wireless && wifi
30 6 * * *  uci set wireless.@wifi-iface[1].disabled=0 && uci commit wireless && wifi
30 6 * * *  uci set wireless.@wifi-iface[2].disabled=0 && uci commit wireless && wifi
30 6 * * *  uci set wireless.@wifi-iface[3].disabled=0 && uci commit wireless && wifi"


A dla routera dodatkowego:
"cat /etc/crontabs/root

30 0 * * *  uci set wireless.@wifi-iface[0].disabled=1 && uci commit wireless && wifi
30 0 * * *  uci set wireless.@wifi-iface[1].disabled=1 && uci commit wireless && wifi
30 0 * * *  uci set wireless.@wifi-iface[2].disabled=1 && uci commit wireless && wifi
30 0 * * *  uci set wireless.@wifi-iface[3].disabled=1 && uci commit wireless && wifi
30 0 * * *  uci set wireless.@wifi-iface[4].disabled=1 && uci commit wireless && wifi

30 6 * * *  uci set wireless.@wifi-iface[0].disabled=0 && uci commit wireless && wifi
30 6 * * *  uci set wireless.@wifi-iface[1].disabled=0 && uci commit wireless && wifi
30 6 * * *  uci set wireless.@wifi-iface[2].disabled=0 && uci commit wireless && wifi
30 6 * * *  uci set wireless.@wifi-iface[3].disabled=0 && uci commit wireless && wifi
30 6 * * *  uci set wireless.@wifi-iface[4].disabled=0 && uci commit wireless && wifi"

Po wpisaniu: „cat /etc/crontabs/root” mam taka informacje jak poniżej więc chyba cron jest obsługiwany?
*/15 * * * * /usr/sbin/ntpsetclock 60 log >/dev/null 2>&1
* * * * * /usr/sbin/startscene_crontab.lua `/bin/date "+%u %H:%M"`
48 3,4,5 * * * /usr/sbin/otapredownload >/dev/null 2>&1
0 3 * * * /usr/sbin/rmportscanresult.sh >/dev/null 2>&1

Na forach znalazłem również informację, że można to zrobić taką komendą jak poniżej. Czy będzie lepiej niż tą powyżej w moim przypadku?
"crontab -e
0 24 * * * /sbin/wifi down
0 08 * * * /sbin/wifi restart"

Bartekk napisał/a:
Gramz napisał/a:

Cezary nie wiem jak Ci dziękować! przebijam się z sygnałem przez 2 stropy ...

ot: nie lepiej jakoś spróbować puścić przewód i nie męczyć się tak?

Niestety nie mam możliwości i muszę się męczyć.
Ale efekt jest już zadowalający. Połączenie na 5GHz na poziomie-49 rssi daje już zaskakująco dobre rezultaty. Mimo 2 stropów

Cezary napisał/a:

Bo tam nie ma słówka AP tylko jest np. AWPSM, więc

while true; do wlanconfig wl5 list sta | grep AWPSM; done

wow! działa!
Dzięki temu znalazłem absolutnie idealne położenie dla obu routerów.
Dzięki temu zmniejszyłem RSSI z -60 do -49!
automatycznie znacząco spadły spadły pingi. Polepszyły się również inne parametry w programie EMCO Ping Monitor jak CV i inne
i nie mam na razie żadnych utraconych pakietów

Cezary nie wiem jak Ci dziękować! przebijam się z sygnałem przez 2 stropy i przesunięcie kilku centymetrów routera od razu zmienia RSSI, dodatkowo znalazłem optymalne ustawienie anten w pozycji poziomej które też zaskutkowały obniżeniem RRSI
Plus mam pewność, że mesh pracuje na 5GHZ

Cezary napisał/a:

No w/w - tam masz poziomy sygnałów.

while true; do wlanconfig wl0 list sta | grep AP; done

i masz na bieżąco wyświetlane...

Cezary czy masz może pomysł dlaczego na interac'ie wl5 nie wyświetla danych ta komenda "while true; do wlanconfig wl5 list sta | grep AP; done"?

Cały czas pojawiają mi się tylko poniższe linie jedna za druga co sekundę.
Na interface wl0 i wl1 wszystko działa poprawnie

ADDR               AID CHAN TXRATE RXRATE RSSI MINRSSI MAXRSSI IDLE  TXSEQ  RXSEQ  CAPS XCAPS ACAPS     ERP    STATE MAXRATE(DOT11) HTCAPS   VHTCAPS ASSOCTIME    IEs   MODE RXNSS TXNSS                   PSMODE

Poniżej przesyłam config z "iw" może będzie pomocny:
root@XiaoQiang:~# iw
Usage:  iw [options] command
Options:
        --debug         enable netlink debugging
        --version       show version (4.14)
Commands:
        help [command]
        event [-t|-r] [-f]
        features
        phy
        list
        phy <phyname> info
        phy <phyname> channels
        dev
        dev <devname> info
        dev <devname> del
        dev <devname> interface add <name> type <type> [mesh_id <meshid>] [4addr on|off] [flags <flag>*] [addr <mac-addr>]
        phy <phyname> interface add <name> type <type> [mesh_id <meshid>] [4addr on|off] [flags <flag>*] [addr <mac-addr>]
        dev <devname> ibss join <SSID> <freq in MHz> [NOHT|HT20|HT40+|HT40-|5MHz|10MHz|80MHz] [fixed-freq] [<fixed bssid>] [beacon-interval <TU>] [basic-rates <rate in Mbps,rate2,...>] [mcast-rate <rate in Mbps>] [key d:0:abcde]
        dev <devname> ibss leave
        dev <devname> station set <MAC address> vlan <ifindex>
        dev <devname> station dump [-v]
        dev <devname> station del <MAC address> [subtype <subtype>] [reason-code <code>]
        dev <devname> station get <MAC address>
        dev <devname> survey dump
        dev <devname> mesh leave
        dev <devname> mesh join <mesh ID> [[freq <freq in MHz> <NOHT|HT20|HT40+|HT40-|80MHz>] [basic-rates <rate in Mbps,rate2,...>]], [mcast-rate <rate in Mbps>] [beacon-interval <time in TUs>] [dtim-period <value>] [vendor_sync on|off] [<param>=<value>]*
        dev <devname> mpath dump
        dev <devname> mpath set <destination MAC address> next_hop <next hop MAC address>
        dev <devname> mpath new <destination MAC address> next_hop <next hop MAC address>
        dev <devname> mpath del <MAC address>
        dev <devname> mpath get <MAC address>
        dev <devname> mpp dump
        dev <devname> mpp get <MAC address>
        dev <devname> scan [-u] [freq <freq>*] [ies <hex as 00:11:..>] [meshid <meshid>] [lowpri,flush,ap-force] [randomise[=<addr>/<mask>]] [ssid <ssid>*|passive]
        dev <devname> scan abort
        dev <devname> scan trigger [freq <freq>*] [ies <hex as 00:11:..>] [meshid <meshid>] [lowpri,flush,ap-force] [randomise[=<addr>/<mask>]] [ssid <ssid>*|passive]
        dev <devname> scan dump [-u]
        phy <phyname> reg get
        reg get
        reg set <ISO/IEC 3166-1 alpha2>
        dev <devname> auth <SSID> <bssid> <type:open|shared> <freq in MHz> [key 0:abcde d:1:6162636465]
        dev <devname> connect [-w] <SSID> [<freq in MHz>] [<bssid>] [key 0:abcde d:1:6162636465] [mfp:req/opt/no]
        dev <devname> disconnect
        dev <devname> link
        phy <phyname> set antenna_gain <antenna gain in dBm>
        phy <phyname> set antenna <bitmap> | all | <tx bitmap> <rx bitmap>
        dev <devname> set txpower <auto|fixed|limit> [<tx power in mBm>]
        phy <phyname> set txpower <auto|fixed|limit> [<tx power in mBm>]
        phy <phyname> set distance <auto|distance>
        phy <phyname> set coverage <coverage class>
        phy <phyname> set netns { <pid> | name <nsname> }
        phy <phyname> set retry [short <limit>] [long <limit>]
        phy <phyname> set rts <rts threshold|off>
        phy <phyname> set frag <fragmentation threshold|off>
        dev <devname> set channel <channel> [NOHT|HT20|HT40+|HT40-|5MHz|10MHz|80MHz]
        phy <phyname> set channel <channel> [NOHT|HT20|HT40+|HT40-|5MHz|10MHz|80MHz]
        dev <devname> set freq <freq> [NOHT|HT20|HT40+|HT40-|5MHz|10MHz|80MHz]
        dev <devname> set freq <control freq> [5|10|20|40|80|80+80|160] [<center1_freq> [<center2_freq>]]
        phy <phyname> set freq <freq> [NOHT|HT20|HT40+|HT40-|5MHz|10MHz|80MHz]
        phy <phyname> set freq <control freq> [5|10|20|40|80|80+80|160] [<center1_freq> [<center2_freq>]]
        phy <phyname> set name <new name>
        dev <devname> set mcast_rate <rate in Mbps>
        dev <devname> set noack_map <map>
        dev <devname> set 4addr <on|off>
        dev <devname> set type <type>
        dev <devname> set meshid <meshid>
        dev <devname> set monitor <flag>*
        dev <devname> set mesh_param <param>=<value> [<param>=<value>]*
        dev <devname> set power_save <on|off>
        dev <devname> set bitrates [legacy-<2.4|5> <legacy rate in Mbps>*] [ht-mcs-<2.4|5> <MCS index>*] [vht-mcs-<2.4|5> <NSS:MCSx,MCSy... | NSS:MCSx-MCSy>*] [sgi-2.4|lgi-2.4] [sgi-5|lgi-5]
        dev <devname> get mesh_param [<param>]
        dev <devname> get power_save <param>

Commands that use the netdev ('dev') can also be given the
'wdev' instead to identify the device.

You can omit the 'phy' or 'dev' if the identification is unique,
e.g. "iw wlan0 info" or "iw phy0 info". (Don't when scripting.)

Do NOT screenscrape this tool, we don't consider its output stable.

Cezary napisał/a:

Mesh w tych może być innym rozwiązaniem Poszukaj czy nie ma polecenia mającego "mesh" w nazwie, może któryś coś wyświetli.

znalazłem rozwiązanie może będzie pomocne dla innych:
wpisujemy komendę: "iw dev" wtedy mamy info o wszystkich interfejsach routera, jak również o prawidłowej nazwie wl5 dla mesh w moim przypadku:

u mnie wygląda to tak:
root@XiaoQiang:~# iw dev
phy#2
        Interface wl2
                ifindex 40
                wdev 0x200000006
                addr xxx
                type managed
                channel 1 (2412 MHz), width: 20 MHz (no HT), center1: 2412 MHz
                txpower 0.00 dBm
        Interface wifi2
                ifindex 19
                wdev 0x200000001
                addr xxx
                type AP
                channel 1 (2412 MHz), width: 20 MHz (no HT), center1: 2412 MHz
                txpower 0.00 dBm
phy#1
        Interface wl1
                ifindex 39
                wdev 0x100000006
                addr xxx
                ssid xxx
                type AP
                channel 13 (2472 MHz), width: 20 MHz, center1: 2472 MHz
                txpower 0.00 dBm
        Interface wifi1
                ifindex 17
                wdev 0x100000001
                addr xxx
                type AP
                channel 13 (2472 MHz), width: 20 MHz, center1: 2472 MHz
                txpower 0.00 dBm
phy#0
        Interface wl5
                ifindex 38
                wdev 0xb
                addr xxx
                ssid MiMesh_c
                type AP
                channel 36 (5180 MHz), width: 20 MHz, center1: 5180 MHz
                txpower 0.00 dBm
        Interface wl0
                ifindex 37
                wdev 0xa
                addr xxx
                ssid xxx
                type AP
                channel 36 (5180 MHz), width: 20 MHz, center1: 5180 MHz
                txpower 0.00 dBm
        Interface wifi0
                ifindex 16
                wdev 0x1
                addr xxx
                type AP
                channel 36 (5180 MHz), width: 20 MHz, center1: 5180 MHz
                txpower 0.00 dBm

Następnie komendą od Cezarego mamy efekt:
root@XiaoQiang:~# wlanconfig wl5 list sta
ADDR               AID CHAN TXRATE RXRATE RSSI MINRSSI MAXRSSI IDLE  TXSEQ  RXSEQ  CAPS XCAPS ACAPS     ERP    STATE MAXRATE(DOT11) HTCAPS   VHTCAPS ASSOCTIME    IEs   MODE RXNSS TXNSS                   PSMODE
xx:xx:xx:xx:xx    1   36 344M    344M  -61     -68     -60    0      0   65535   EPs  WBQf NULL    0          b         573500           AWPSM           gGTRs 00:26:03     RSN WME IEEE80211_MODE_11AXA_HE20  4 4   0
Minimum Tx Power               : 0
Maximum Tx Power               : 0
HT Capability                  : Yes
VHT Capability                 : Yes
MU capable                     : No
SNR                            : 35
Operating band                 : 5GHz
Current Operating class        : 115
Supported Operating classes    : 115  115  116  117  118  119  120  121  122  123  128  129  130
Supported Rates                : 12  18  24  36  48  72  96  108
Channels supported             : 5180  5200  5220  5240  5260  5280  5300  5320  5500  5520  5540  5560  5580  5600  5620  5640  5660  5680  5700
Max STA phymode                : IEEE80211_MODE_11AXA_HE20

Cezary napisał/a:

No w/w - tam masz poziomy sygnałów.

while true; do wlanconfig wl0 list sta | grep AP; done

i masz na bieżąco wyświetlane...

wow dziękuję, rewelacja o to mi chodziło.
Niestety tak jak wspomniałem powyżej nie pokazuje drugiego ax3600 w mesh. Jedynia dwa telefony podłączone przez sieć, a ax3600 w ogole nie pokazuje

Mam w takim jeszcze jedną prośbę.
Próbuję znaleźć optymalne ustawienie tych routerów Xiaomi AX3600 które działają w mesh

jaką komendą mogę sprawdzać bieżącą jakość i moc połączenia między tymi routerami?
ewentualnie czy jest jakiś program, który da mi taką możliwość?
Oczywiście takiej funkcjonalności nie oferuje oprogramowanie od Xiaomi

Cezary napisał/a:

wlanconfig wl0 list sta

Przesyłam wynik tej komendy. Zadziałała, ale niestety nie pokazała połączenia z drugim ax3600. Jedynie 2 telefony podłączone obecnie. sprawdziłem wlanconfig wl1 list sta, ale tutaj nie pokazało w ogóle, żadnych podłączonych urządzeń

root@XiaoQiang:~# wlanconfig wl0 list sta
ADDR               AID CHAN TXRATE RXRATE RSSI MINRSSI MAXRSSI IDLE  TXSEQ  RXSEQ  CAPS XCAPS ACAPS     ERP    STATE MAXRATE(DOT11) HTCAPS   VHTCAPS ASSOCTIME    IEs   MODE RXNSS TXNSS                   PSMODE
xx:xx:xx:xx:xx:xx   
1   36 192M    173M  -46     -60     -39    0      0   65535    EP  EWBO NULL    0          b         240554              AP            1gTR 00:22:56     RSN WME IEEE80211_MODE_11AC_VHT20  2 2   0
Minimum Tx Power               : 0
Maximum Tx Power               : 0
HT Capability                  : Yes
VHT Capability                 : Yes
MU capable                     : Yes
SNR                            : 51
Operating band                 : 5GHz
Current Operating class        : 115
Supported Operating classes    : 115  81  83  84  115  116  117  118  119  120  121  122  123  124  125  126  127  128  129  130
Supported Rates                : 12  18  24  36  48  72  96  108
Max STA phymode                : IEEE80211_MODE_11AC_VHT20

yy:yy:yy:yy:yy:yy
2   36 229M      7M  -53     -78     -45    0      0   65535    EP  EWBO NULL    0          b         286800              AP            1gTR 00:10:00     RSN WME IEEE80211_MODE_11AXA_HE20  2 2   0
Minimum Tx Power               : 0
Maximum Tx Power               : 0
HT Capability                  : Yes
VHT Capability                 : Yes
MU capable                     : Yes
SNR                            : 44
Operating band                 : 5GHz
Current Operating class        : 115
Supported Operating classes    : 115  81  83  84  115  116  117  118  119  120  121  122  123  124  125  126  127  128  129  130
Supported Rates                : 12  18  24  36  48  72  96  108
Max STA phymode                : IEEE80211_MODE_11AXA_HE20

Cezary napisał/a:

No to już widzisz na ile to jest zgodne z openwrt. Ich system, ich zasady i nijak to się ma do openwrt.

sprawdź wlanconfig

Czy mogę wrzucić tutaj wynik tej komendy wlanconfig? Czy znajdują się tam jakieś informacje których nie powinno się wrzucać publicznie?;)

mar_w napisał/a:

komendę zna więc jeżeli nie znalazł urządzenia to sprawdź jakie są interfejsy. Może masz np . wlpxxxx

Myślę, że masz rację.
W tym poradniku o którym wcześniej wspomniałem jest komenda do sprawdzania mocy Wi-Fi:
"Moc z jaką nadaje router można sprawdzić poleceniami (wl0 - 5Ghz, wl1 - 2,4Ghz):
iwlist wl0 txpower
iwlist wl1 txpower"

Więc analogicznie w momencie od Cezarego zmieniłem na:
iw dev wl1 station dump

Niestety bez pozytywnego efektu:
root@XiaoQiang:~# iw dev wl1 station dump
root@XiaoQiang:~# iw dev wl0 station dump
root@XiaoQiang:~# 

Taki sam efekt na jednym jak i drugim ax3600