26

(34 odpowiedzi, napisanych Sprzęt)

Kiedy to prawda smile

standardowe komendy są , echo , cat , no i warunki ,while , do , if ,fi

#!/bin/ash

#LED
echo 2 > /sys/class/gpio/export
echo 3 > /sys/class/gpio/export
echo 13 > /sys/class/gpio/export
echo 15 > /sys/class/gpio/export

#link
echo 10 > /sys/class/gpio/export

#buttons
echo 0 > /sys/class/gpio/export
echo 1 > /sys/class/gpio/export
echo 16 > /sys/class/gpio/export


while :
do

ButtonReset=`cat /sys/kernel/debug/gpio|grep gpio-0|cut -d ")" -f 2|cut -d " " -f 4`
ButtonWPS=`cat /sys/kernel/debug/gpio|grep -e "gpio-1 "|cut -d ")" -f 2|cut -d " " -f 4`
ButtonCheck=`cat /sys/kernel/debug/gpio|grep gpio-16|cut -d ")" -f 2|cut -d " " -f 4`
CNCNTLink=`cat /sys/kernel/debug/gpio|grep gpio-10|cut -d ")" -f 2|cut -d " " -f 4`

#białe
if [ "$ButtonReset" = 'lo' ] && [ "$ButtonWPS" = 'lo' ] && [ "$ButtonCheck" = 'hi' ] ; then
echo high > /sys/class/gpio/gpio2/direction
echo high > /sys/class/gpio/gpio13/direction
echo high > /sys/class/gpio/gpio15/direction
fi

#niebieskie
if [ "$ButtonReset" = 'hi' ] || [ "$ButtonWPS" = 'hi' ] || [ "$ButtonCheck" = 'lo' ] ; then
echo high > /sys/class/gpio/gpio2/direction
echo low > /sys/class/gpio/gpio13/direction
echo low > /sys/class/gpio/gpio15/direction
fi

#zolte
if [ "$ButtonReset" = 'hi' ] && [ "$ButtonWPS" = 'hi' ] ; then
echo low > /sys/class/gpio/gpio2/direction
echo high > /sys/class/gpio/gpio13/direction
echo high > /sys/class/gpio/gpio15/direction
fi
if [ "$ButtonReset" = 'hi' ] && [ "$ButtonCheck" = 'lo' ] ;then
echo low > /sys/class/gpio/gpio2/direction
echo high > /sys/class/gpio/gpio13/direction
echo high > /sys/class/gpio/gpio15/direction
fi
if [ "$ButtonWPS" = 'hi' ] && [ "$ButtonCheck" = 'lo' ] ; then
echo low > /sys/class/gpio/gpio2/direction
echo high > /sys/class/gpio/gpio13/direction
echo high > /sys/class/gpio/gpio15/direction
fi

#fw side switch
if [ "$ButtonReset" = 'hi' ] && [ "$ButtonWPS" = 'hi' ] && [ "$ButtonCheck" = 'lo' ] ; then
echo low > /sys/class/gpio/gpio2/direction
echo low > /sys/class/gpio/gpio13/direction
echo high > /sys/class/gpio/gpio15/direction
fwupdate sw > /dev/null 2>&1
sync
reboot
fi

if [ "$CNCNTLink" = 'hi' ] ; then
echo low > /sys/class/gpio/gpio3/direction
fi
if [ "$CNCNTLink" = 'lo' ] ; then
echo high > /sys/class/gpio/gpio3/direction
fi

done

exit 0

27

(34 odpowiedzi, napisanych Sprzęt)

Cezary napisał/a:

Więc nie masz innego wyjścia jak napisanie skryptu który w kółko odpytuje gpio po prostu.

Napisałem skrypt , z niekończącą się pętlą while: do ....Generalnie zabawa z diodami po naciśnięciu jedneo przycisku , dwóch , a jak naciśnie się trzy to reboot.Stany przycisków to ciągle odpytywanie w sposób"cat /sys/kernel/debug/gpio"
W miarę to działa , ale pytanie ,czy taki skrypt nie będzie powodował wycieków pamięci ? Podobno skrypty napisane w ten sposób to powodują ?

28

(113 odpowiedzi, napisanych Oprogramowanie)

A ja pod takie coś mam podłączoną drukarkę , i działa w sieci ,więc nie tylko internet.

29

(166 odpowiedzi, napisanych Oprogramowanie)

samuel.obiedzinski napisał/a:

@MiG25

Nie bardzo rozumiem sens Twojego postu. Chciałbyś mnie przekonać i innych, że te problemy o których napisałem nie istnieją, czy o co chodzi?

Chciałem się tylko pochwalić ,że na 4szt R6220 nie mam resetów , cieknącej pamięci też nie zauważyłem (choć nie twierdzę ,że jej nie ma)...

Stwierdzenie ,że na orginale działa stabilnie też wcale nie wyklucza problemu sprzętowego. (swego czasu niektóre miały badblocki w NAND , i oryginałowi też to nie przeszkadzało smile )

30

(166 odpowiedzi, napisanych Oprogramowanie)

Ok , ale ja oprócz tych ERR niczego niepokojącego nie widzę.
Co więcej na 19.07.01 tablet Lenovo na 5Ghz się co jakiś czas rozłączał ( myślałem że to kwestia ustawiń FT ) ,a już na najnowszym wszystko jest ok.
@zygzag ma uptime 46 dni , i jakoś pamięć się jeszcze nie skończyła.( choć nie wiem ile domoticz może jej zużywać).

31

(166 odpowiedzi, napisanych Oprogramowanie)

Mam w domu 4 sztuki R6220 ,
Pierwszy robi za typowy router ( podłączone do WANu modem Huawei B715 , do LANów pozostałe R6220 , oba radia wyłączone):

 uptime && free && cat /proc/interrupts
 08:56:49 up 6 days, 22:39,  load average: 0.04, 0.01, 0.00
              total        used        free      shared  buff/cache   available
Mem:         123880       32980       70300        1012       20600       57600
Swap:             0           0           0
           CPU0       CPU1
  8:   59997988   59997978  MIPS GIC Local   1  timer
  9:      69097          0  MIPS GIC  63  IPI call
 10:          0   20805553  MIPS GIC  64  IPI call
 11:     450967          0  MIPS GIC  65  IPI resched
 12:          0     320777  MIPS GIC  66  IPI resched
 15:         14          0  MIPS GIC  33  ttyS0
 16:          0          0  MIPS GIC  29  xhci-hcd:usb1
 17:   49803743          0  MIPS GIC  10  1e100000.ethernet
 18:         87          0  MIPS GIC  30  gsw
 19:          2          0  MIPS GIC  11  mt76x2e
 21:         23          0  MIPS GIC  32  mt7603e
ERR:          0
root@OpenWrt:~#

Pozostałe R6220 ustawione jako dummy AP ,umieszczone w domu tak ,żeby zapewnić wszędzie WiFi. (Jeden dopiero co włączony więc z niego wyników nie będę pokazywał)

 uptime && free && cat /proc/interrupts
 09:03:58 up 2 days, 14:30,  load average: 0.08, 0.02, 0.00
              total        used        free      shared  buff/cache   available
Mem:         123880       31352       70532         604       21996       58776
Swap:             0           0           0
           CPU0       CPU1
  8:   22504972   22504939  MIPS GIC Local   1  timer
  9:       3623          0  MIPS GIC  63  IPI call
 10:          0    4241553  MIPS GIC  64  IPI call
 11:    1483387          0  MIPS GIC  65  IPI resched
 12:          0     517719  MIPS GIC  66  IPI resched
 15:         16          0  MIPS GIC  33  ttyS0
 16:          0          0  MIPS GIC  29  xhci-hcd:usb1
 17:    8791445          0  MIPS GIC  10  1e100000.ethernet
 18:         37          0  MIPS GIC  30  gsw
 19:        644   28812568  MIPS GIC  11  mt76x2e
 21:        461   30519011  MIPS GIC  32  mt7603e
ERR:       6907
root@OpenWrt:~#
root@OpenWrt:~# uptime && free && cat /proc/interrupts
 09:16:40 up 2 days, 14:25,  load average: 0.01, 0.01, 0.00
              total        used        free      shared  buff/cache   available
Mem:         123880       30684       71244         604       21952       59424
Swap:             0           0           0
           CPU0       CPU1
  8:   22471551   22471525  MIPS GIC Local   1  timer
  9:       2887          0  MIPS GIC  63  IPI call
 10:          0    2916843  MIPS GIC  64  IPI call
 11:    1649778          0  MIPS GIC  65  IPI resched
 12:          0     377286  MIPS GIC  66  IPI resched
 15:         16          0  MIPS GIC  33  ttyS0
 16:          0          0  MIPS GIC  29  xhci-hcd:usb1
 17:    6932405          0  MIPS GIC  10  1e100000.ethernet
 18:          7          0  MIPS GIC  30  gsw
 19:       1183   32882383  MIPS GIC  11  mt76x2e
 21:        805   22913314  MIPS GIC  32  mt7603e
ERR:       7707
root@OpenWrt:~#

W dmesg nie ma taich wpisów jak u Ciebie.
Na każdym zainstalowany  OpenWrt 19.07-SNAPSHOT, r10949-c56ed72d2b , czyli ostatni build Cezarego z luci.
R6220 jak widać nie mają za wiele do roboty , ale można spróbować wysnuć wniosek ,że bez włączonych wifi błędów nie ma smile
EDIT:No i resetów nigdy nie zarejestrowałem...

32

(10 odpowiedzi, napisanych Sprzęt)

Ja nie twierdzę ,że się nie da , tylko twierdzę ( no ale to mi się może tylko wydawać ) ,że to ogranicza prędkości w szczególnych przypadkach ( gwiazda będzie lepsza pod tym względem).
Kolejna używka R6220 zamówiona...

33

(10 odpowiedzi, napisanych Sprzęt)

Jakos to przeczy mojej myśli ,ze po gigabitowym laczu w dwa kierunki wysyłać jednym kablem smile

34

(10 odpowiedzi, napisanych Sprzęt)

Swoje kupowałem po 70PLN , a teraz już 99PLN.. stąd pomysl na cos nowego i dedykowanego Edgerouter EX...

35

(10 odpowiedzi, napisanych Sprzęt)

Mniej więcej tak to wygląda smile
Te R6220 są tak rozmieszczone ,żeby po wifi zapewniły zasięg w całym domu ( do niektorych z nich rownież powpinane są przez LAN  urządzenia).
Przy tym rozwiązaniu musiałbym mieć do jednego R6220 przynajmniej dwie skrętki... ( i połączyć przy kominie dwie razem). A i tak switch musiałbym kupić...

36

(10 odpowiedzi, napisanych Sprzęt)

No narazie przynajmniej do modemu i do tych trzech r6220.
Zapomniałm wspomnieć ,że przy kominie mam więcej kabli niż tylko te , więc te 5portów to minimum.

37

(10 odpowiedzi, napisanych Sprzęt)

Potrzebuję szybkiej porady.
W domu mam na :kominie modemo-router Huawei B715 , oraz 3szt R6220 w różnych miejscach działające jako dummy switch i ich kable lan też idą na strych w okolicy komina. Do tej pory za router robił wdr4300 (wan do B715 , 3 LANy do R6220).
Muszę zastąpić tego wdr4300... .  Czy coś lepszego od EdgeRouter X ( w tej lub lepszej cenie) polecacie ?
Nie potrzebne są żadne wifi ,tylko czysty router , jakby miał USB byłoby na plus ( w tej chwili nie potrzebne ale może kiedyś na coś) , porty gigabitowe to na pewno.

38

(76 odpowiedzi, napisanych Oprogramowanie)

Patrz post 36 smile

39

(34 odpowiedzi, napisanych Sprzęt)

Ja ten soft do obsługi tej pompy to skopiowałem z tego ustrojstwa i uruchomiłem na wr1043nd v1 z podłączonym do USB konwerterem smile
Było to dość dawno , i być może nowsze wersje już na to nie pozwolą ,więc teoretycznie możnaby było na takie zabawy sobie pozwolić, tylko po co , jak być może zaraz aktualizacja będzie.

40

(34 odpowiedzi, napisanych Sprzęt)

Są różnice: Tu jest QCA4531 i 64MB RAM ,jest tylko jeden port Ethernet wykrywany jako eth1 ( choć w systemie eth0 też się pokazuje).GL-ar300m ma  QCA9531 i 128MB RAM.
Tutaj do USB od razu podłączony jest konwerter TTL na PL2303 ( znaczy takie sterowniki się do niego ładują). To służy do komunikacji z Pompą Ciepła.
No i nie wiem czy też tak jest podzielony flash.
Być może bootloader by pasował , bo wygląda na standardowy , ale jeśli nie miałby obsługi zmiany "strony" lub awaryjnego wgrywania plików ,to nie ma co sibie zawracać głowy.

41

(34 odpowiedzi, napisanych Sprzęt)

Mam pliki aktualizujące od producenta ,openwrt-ar71xx-generic-cus531-16M-rootfs-squashfs.bin i openwrt-ar71xx-generic-cus531-16M-kernel.bin , co w nich wyedytować , żeby znaleść plik uruchamiany tylko za pierwszym razem ( chcę ściągnąć i zainstalować dropboxa i go uruchomić, ustawić  hasło ). Czy takie rzeczy tylko podczas kompilacji ?

42

(76 odpowiedzi, napisanych Oprogramowanie)

Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 18 192.168.1.247/53795 query[A] app.slack.com from 192.168.1.247
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 18 192.168.1.247/53795 forwarded app.slack.com to 192.168.1.1
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 19 192.168.1.247/50247 query[A] a.slack-edge.com from 192.168.1.247
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 19 192.168.1.247/50247 forwarded a.slack-edge.com to 192.168.1.1
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 18 192.168.1.247/53795 reply app.slack.com is 52.222.143.118
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 18 192.168.1.247/53795 reply app.slack.com is 52.222.143.12
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 18 192.168.1.247/53795 reply app.slack.com is 52.222.143.57
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 18 192.168.1.247/53795 reply app.slack.com is 52.222.143.11
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 19 192.168.1.247/50247 reply a.slack-edge.com is <CNAME>
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 19 192.168.1.247/50247 reply d29id7n8587nnz.cloudfront.net is 13.227.198.110
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 19 192.168.1.247/50247 reply d29id7n8587nnz.cloudfront.net is 13.227.198.63
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 19 192.168.1.247/50247 reply d29id7n8587nnz.cloudfront.net is 13.227.198.126
Sun Mar 22 18:02:27 2020 daemon.info dnsmasq[2940]: 19 192.168.1.247/50247 reply d29id7n8587nnz.t is 13.227.198.46

To <CNAME> oznacza podmianę jakiegoś adresu ?

43

(76 odpowiedzi, napisanych Oprogramowanie)

Ok , teoretycznie wyłączyłem AdGuarda,(swieci się WYŁĄCZ na czerwono ), poodznaczałem wszystkie ptaszki w ustawieniach głównych , i na innych stronach zaczęły pojawiać się niechciane reklamy , ale strona slack.com nadal nie działa... Czyżby twórcom zaszła za skórę smile

44

(76 odpowiedzi, napisanych Oprogramowanie)

A ten wpis w rc.local akurat go uruchomił smile
Zamieniłem na:
(/opt/AdGuardHome/AdGuardHome > /dev/null 2>&1) &
I ma chęć się uruchamiać ( po jednym restarcie wstał).

EDIT: A co ze slack.com ?

45

(76 odpowiedzi, napisanych Oprogramowanie)

Praktycznie wersja z przed chwili smile
Faktycznie ,robi skrypt w init.d, nie zauważyłem tego , tyle ,że również uruchomienie /etc/init.d/adblock enable ani nie uruchamia go po starcie , ani wpis /etc/init.d/adblock start nie uruchamia go od razu.... Muszę ręcznie wpisać /opt/AdGuardHome/AdGuardHome & ,bo nawet wpisanie tego w rc.local nie powoduje uruchomienia... wtf

46

(76 odpowiedzi, napisanych Oprogramowanie)

Nie wiem dlaczego AdGuard nie uruchamia się z automatu , wpis jest w rc.local ... Dopóki nie wejdę i przez ssh tego nie uruchomię to cały internet zablokowany.
Uruchomione na najnowszym Snapshocie z Luci na WDR4300 z exrootem.

No i blokuje mi slacka. Wpisałem do niestandardowych reguł filtrowania @@||slack.com^ ,ale nic to nie dało.

47

(34 odpowiedzi, napisanych Sprzęt)

Widzę tylko aktualne w printenv , te co po upgrade i flashowaniu wpisuje skrypt do upgrade ,więc wnioskuję ,że tylko on te "stony" przestawia:

      1)
        echo "set to side 2"
        bootm_str="bootm ${KERNEL2_BOOTM}"
        bootargs_str="board=CUS531 console=ttyS0,115200 mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env),${MTD_SZ_ROOTFS1}k(rootfs1),${MTD_SZ_ROOTFS2}k(rootfs),${MTD_SZ_APL}k(apl),${MTD_SZ_CONFIG}k(config),${MTD_SZ_KERNEL1}k(kernel1),${MTD_SZ_KERNEL2}k(kernel2),64k(art) rootfstype=squashfs,jffs2 noinitrd"
        fw_setenv bootcmd $bootm_str
        fw_setenv bootargs $bootargs_str
        ;;
        2)
        echo "set to side 1"
        bootm_str="bootm ${KERNEL1_BOOTM}"
        bootargs_str="board=CUS531 console=ttyS0,115200 mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env),${MTD_SZ_ROOTFS1}k(rootfs),${MTD_SZ_ROOTFS2}k(rootfs2),${MTD_SZ_APL}k(apl),${MTD_SZ_CONFIG}k(config),${MTD_SZ_KERNEL1}k(kernel1),${MTD_SZ_KERNEL2}k(kernel2),64k(art) rootfstype=squashfs,jffs2 noinitrd"
        fw_setenv bootcmd $bootm_str
        fw_setenv bootargs $bootargs_str
        ;;
        *)
        echo "switch_boot_side: unexpected. curboot=$VAR_CURBOOT"
        exit 1
        ;;

48

(34 odpowiedzi, napisanych Sprzęt)

bo wgrałem coś na siłę do aktualnego rootfs smile i było tylko w logu dużo błędów smile
Poza tym w printenv w uboot nie znajduję dwóch równoległych wpisów dla bootm i podziału tych partycji.

49

(34 odpowiedzi, napisanych Sprzęt)

Jakaś kombinacja przycisków najprościej smile
Swoją drogą po co takie zapasowe partycje jak i tak się ich nie przełączy bez ingerencji  startu tej pierwszej?

50

(34 odpowiedzi, napisanych Sprzęt)

No i tak jest, ( adres startu się zmienia , oraz same nazwy partycji ,żeby zmienić "stronę" ).Natomiast chciałbym mieć wybór podczas startu uboota z ktorej by startowal ( ale to juz pewnie pobożne życzenia).