1

Temat: TL-WR1043ND a Option ICON 225

Mam pytanie - od dluzszego czasu borykam sie z problemem nie dzialajacego modemu.
Przegladalem forum, probowalem roznych rozwiazan i nic.

Mam zainstalowany najnowszy OpenWRT, udalo mi sie doinstalowac sterowniki HSO (nalezalo zmienic repozytorium z domyslnego), jednak po wywolaniu ifup 3g niestety nie ma polaczenia, wyskakuja nastepujace bledy:

Oct  9 22:36:14 OpenWrt local2.info chat[3313]: ^M
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: ATE1^M^M
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: OK
Oct  9 22:36:14 OpenWrt local2.info chat[3313]:  -- got it
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: send (AT+CGDCONT=1,"IP","internet"^M)
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: timeout set to 30 seconds
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: expect (OK)
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: ^M
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: AT+CGDCONT=1,"IP","internet"^M^M
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: OK
Oct  9 22:36:14 OpenWrt local2.info chat[3313]:  -- got it
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: send (ATD*99***1#^M)
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: expect (CONNECT)
Oct  9 22:36:14 OpenWrt local2.info chat[3313]: ^M
Oct  9 22:36:44 OpenWrt local2.info chat[3313]: alarm
Oct  9 22:36:44 OpenWrt local2.info chat[3313]: Failed
Oct  9 22:36:44 OpenWrt daemon.err pppd[3308]: Connect script failed

Dodatkowo po pierwszej nieudanej probie ponowne wylowanie ifupa powoduje ponizszy blad:

root@OpenWrt:~# ifup 3g
timeout checking for PIN.3g(3g): Failed to set the PIN code.
root@OpenWrt:~#

Moj config sieci 3g wyglada tak:

config 'interface' '3g'
<------>option 'apn' 'internet'
<------>option 'service' 'umts'
<------>option 'proto' '3g'
<------>option 'hotplug' '1'
<------>option 'pincode' '****'
<------>option 'username' 'internet'
<------>option 'password' 'internet'
<------>option 'device' '/dev/ttyHS0'

Czy ktos ma jakis pomysl co zrobic by sie polaczyc ?? Internet jest w Orange jesli to ma znaczenie...

2 (edytowany przez pepino 2010-10-10 00:22:32)

Odp: TL-WR1043ND a Option ICON 225

Po pierwsze to w standardowym repo też jest stosowny pakiet:

kmod-usb-net-hso (w wersji 2.6.32.16-1)

Po drugie: Jak się jeszcze bawiłem optionem to używałem skryptu hso_connect.sh. Połączenie podnosi się nim przez:

./hso_connect.sh up 3g

Apn, urządzenie, login, pass oraz pin zostaną przeparsowane z twojego dotychczasowego konfigu.

O wyżej wymienionej koncepcji uzyskiwania połączenia oraz kilku innych można poczytać np. tutaj.

P.S. Ciekawe czy doczekamy kiedyś dnia, kiedy połączenie 3g/cdma da się wyklikać z poziomu Lucyny czy Gargulca. Nie, żeby mi na tym jakoś specjalnie zależało, bo lubię pracę w konsoli, ale są osoby, które są nią po prostu przerażone.

3

Odp: TL-WR1043ND a Option ICON 225

@efevee: pinu nie ustawiasz. A przynajmniej nie jest to taki jak podałeś.

Zrestartuj router. Zaloguj się przez telnet/ssh i wpisz

gcom reg

Zapyta się o pin - podaj go. Jak się zarejestruje w sieci - zrób ifup 3g

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

4

Odp: TL-WR1043ND a Option ICON 225

@Cezary: W pliku z configiem zamiast gwiazdek mialem wpisany poprawny PIN. Przy pierwszym odpalaniu ifupa wyrzucalo do konsoli komunikaty w stylu:

Manufacturer: Option NV
Trying to set mode

i tyle, a w logach odkladalo sie to co zamiescilem w pierwszym poscie.
Natomiast:

gcom reg -d /dev/ttyHS0 

wyskakuje

Waiting for registration..............................

i tyle... Proby z HS1 i HS2 koncza sie tak samo.

Sprobuje w miedzyczasie ze skryptem od pepino, bede jednak wdzieczny za jakies podpowiedzi.
Jakies pomysly czemu modem nie chce sie zarejestrowac w sieci ??

5

Odp: TL-WR1043ND a Option ICON 225

To właśnie podstawa - nici z ze skryptów jeżeli modem nie chce zarejestrować się w sieci i nie żąda pinu. Jak przepniesz ten modem pod zwykłego linuksa to działa?

Zainstaluj sobie pod openwrt  picocom. Uruchom (picocom -b 115200 /dev/ttyHS0) i zobacz czy odpowiada na AT, AT+CPIN? itd.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

6

Odp: TL-WR1043ND a Option ICON 225

picocom radosnie odpowiadal na komendy AT czy AT+CPIN.

skorzystalem ze skryptu hso_connect.sh i doszedlem do tego, ze zestawia mi polaczenie.
ping na adres IP uzyskuje odpowiedzi, na nazwe hosta nie, podejrzewam, ze to przez brak DNS, wniosek ze musze jeszcze poklikac, bo czesc rzeczy odlaczalem bo musialem zestawic WAN po wireless (tryb sta) by sciagac pakiety...

niestety modem nie wspolpracuje z restartem polaczenia, podejrzewam ze ma to zwiazek z tym, ze w Windowsie nie wola o podanie PINu dopoki nie wyjmie sie go z portu USB -> w OpenWRT wyrzuca to do commandline'a

AT+CPIN="7119"
+CME ERROR
Failed (ERROR)

Wystarczy jednak wyjac go z portu, wlozyc modem ponownie i dziala - wiec juz jakis maly sukces.

W planach mam jeszcze zrobienie z modemu polaczenia WAN oraz podpiecie skryptu hso_connect.sh pod przycisk by robic latwo restart.
Widzialem na stronie tutoriale takze uciekam do lektury jesli jednak macie jakies wskazowki bede wdzieczny.

7 (edytowany przez pepino 2010-10-10 21:08:48)

Odp: TL-WR1043ND a Option ICON 225

Wygrzebałem swojego optiona, co by pomóc trochę koledze. Garść obserwacji:

1) Rzeczywiście jest tak, że jak modem jest wsadzony przed startem routera to nici z połączenia. Jak się go wyjmie i wsadzi z powrotem połączyć się można. Ewentualnie można uruchomić router i dopiero jak openwrt wstanie wsadzić patyka.

2) Problem nie jest związany z pinem, bo ja go w ogóle wyłączyłem na swojej karcie. Prędzej stawiałbym na to, że hotplug robi coś dodatkowo, co nie jest wykonywane przy starcie systemu.

3) Co do podejścia Cezarego:

root@OpenWrt:/123# gcom reg -d /dev/ttyHS0
Waiting for Registration
Registered on Home network: "Plus",2

Wygląda cacy, dioda na modemie przestaje pulsować i zapala się na stałe

root@OpenWrt:/123# ifup 3g
root@OpenWrt:/123#

A po tym gaśnie i znowu pulsuje, połączenia oczywiście nie ma

4)  hso_connest.sh zestawia połączenie, pobiera ipkę, ustawia routing ale dnsów rzeczywiście nie ma.
Ja wpisałem sobie na stałe plusowe i działa. Zdaje sobie sprawę, że jest to rozwiązanie "na pałę", niemniej lepszy rydz niż nic.

8

Odp: TL-WR1043ND a Option ICON 225

Hmm trzy wyjścia - podać pin w inny sposób (może nie AT+CPIN tylko coś innego), utworzyć skrypt startowy inny do gcom
lub usunąc pin karty. Polecam trzecie rozwiązanie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: TL-WR1043ND a Option ICON 225

Popatrz wyżej Cezary, co napisałem o pinie w poprzednim poście. No chyba, że czytałeś jego starszą wersję tj. przed edycją.

10

Odp: TL-WR1043ND a Option ICON 225

Tak, przed edycją. Cóż zostaje Wam kombinować dlaczego tak się dzieje. Optiona nie mam, wiec organoleptycznie nie jestem w stanie stwierdzić dlaczego tak się dzieje.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11 (edytowany przez efevee 2010-10-10 21:38:46)

Odp: TL-WR1043ND a Option ICON 225

Trzecie rozwiazanie - genialne w swojej prostocie.
Co najwazniejsze, zadzialalo... :-D

I racja przy pierwszym odpaleniu routera wazna jest kolejnosc - najpierw router w drugiej kolejnosci trzeba podlaczyc modem.
Pozniej bez PINu mozna odpalac komende restart w hso_connect.sh

W przypadku gdy PIN jest ustawiony restart nie zadziala, modem trzeba wyjac-wlozyc. Niestety po reboocie tez, na szczescie router bedzie na wierzchu...

Co ciekawe skrypt 3ginfo pokazuje sile sygnalu (nie wiem czy dobra), ale stan jest 'Rozlaczony' co jest nieprawda.

Przy okazji - gcom reg nie ma sily by mnie zarejestrowal do sieci, chwile pozniej hso_... zestawia polaczenie.
Dla mnie czarna magia :-)

12

Odp: TL-WR1043ND a Option ICON 225

gcom reg tak naprawdę woła parę poleceń AT - można włączyć debug i zobaczyć jakie. Więc być może Option jest "lekko inny" i wymaga innej sekwencji to testowania.

PS. 3ginfo sprawdza stan bazując na fakcie istnienia interfejsu, i musi być zdefiniowana odpowiednia sekcja w /etc/config/network. Jeżeli pokazuje źle - pokaż mi wyniki poleceń.
cat /etc/config/3ginfo
cat /etc/config/network
ifconfig

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13 (edytowany przez pepino 2010-10-11 10:35:29)

Odp: TL-WR1043ND a Option ICON 225

Problem z dnsami rozwiązany bardziej uniwersalnie:

W hso_connect.sh po linijce:

route add default dev $NETDEV

można sobie dopisać np:

mv -f /etc/resolv.conf /tmp/resolv.conf.hso
echo "Setting nameserver"
echo "nameserver        $NS1" > $OUTPUTFILE
echo "nameserver        $NS2" >> $OUTPUTFILE
mv $OUTPUTFILE /etc/resolv.conf

Przetestowałem - działa. Raz mi pobrał parkę: 212.2.96.54, 212.2.96.52, a za drugim razem 212.2.96.53, 212.2.96.51

Dopisane:
Jeżeli chodzi o niemożliwość nawiązania połączenia po rebocie:

root@OpenWrt:~# ls -al /dev/tty*
crw-rw-rw-    1 root     root       5,   0 Jan  1  1970 /dev/tty
crw-rw-rw-    1 root     root       4,  64 Jan  1  1970 /dev/ttyS0

root@OpenWrt:~# cat /proc/bus/usb/devices 

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 1
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev= 2.06
S:  Manufacturer=Linux 2.6.32.16 ehci_hcd
S:  Product=Atheros AR91xx built-in EHCI controller
S:  SerialNumber=ar71xx-ehci
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

Po zawachlowaniu modemem lub wsadzeniu go _po_ uruchomieniu systemu:

root@OpenWrt:~# ls -al /dev/tty*
crw-rw-rw-    1 root     root       5,   0 Jan  1  1970 /dev/tty
crw-rw-rw-    1 root     root     254,   0 Sep 25 15:47 /dev/ttyHS0
crw-rw-rw-    1 root     root     254,   1 Sep 25 15:47 /dev/ttyHS1
crw-rw-rw-    1 root     root     254,   2 Sep 25 15:47 /dev/ttyHS2
crw-rw-rw-    1 root     root     254,   3 Sep 25 15:47 /dev/ttyHS3
crw-rw-rw-    1 root     root       4,  64 Jan  1  1970 /dev/ttyS0

root@OpenWrt:~# cat /proc/bus/usb/devices 

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 1
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev= 2.06
S:  Manufacturer=Linux 2.6.32.16 ehci_hcd
S:  Product=Atheros AR91xx built-in EHCI controller
S:  SerialNumber=ar71xx-ehci
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=ff MxPS=64 #Cfgs=  1
P:  Vendor=0af0 ProdID=6971 Rev= 0.00
S:  Manufacturer=Option N.V.
S:  Product=Globetrotter HSDPA Modem  
S:  SerialNumber=Serial Number
C:* #Ifs= 3 Cfg#= 1 Atr=a0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
E:  Ad=83(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=03(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=85(I) Atr=03(Int.) MxPS=  16 Ivl=128ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
E:  Ad=84(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=04(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=hso
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=128ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms

Próbowałem uzyskać to przez ręczne wywołanie usb_modswitcha ze stosownymi parametrami oraz wywalając i ładując ponownie moduły - bez skutku.

O ile mamy już /dev/ttyHSx to żeby nawiązać połączenie w przypadku iplusa (bez pinu) wystarczy wysłać do /dev/ttyHS0 (np. przez minicom) następujące polecenia:

AT+CGDCONT=1,,"internet"
AT_OWANCALL=1,1,1

Niektóre źródła podają AT_OWANCALL=1,1,0, ale u mnie to nie działa.

Sprawdzenie danych, uzyskanych przez modem od operatora (ipka, dnsy itd):

AT_OWANDATA=1

Rozłączenie się:

AT_OWANCALL=1,0,0

14

Odp: TL-WR1043ND a Option ICON 225

@pepino dzieki !! trik z DNSem zadzialal.

@cezary

/etc/config/3ginfo

config 3ginfo
        option device /dev/ttyHS0
        option limit 0
        option script play_fresh

/etc/config/network

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

config 'interface' 'lan'
        option 'ifname' 'eth0.1'
        option 'type' 'bridge'
        option 'proto' 'static'
        option 'netmask' '255.255.255.0'
        option 'ipaddr' '192.168.0.1'
        option 'defaultroute' '0'
        option 'peerdns' '0'

config 'interface' 'wan'
        option 'proto' 'dhcp'

config 'interface' '3g'
        option 'device' '/dev/ttyHS0'
        option 'apn' 'internet'
        option 'service' 'umts'
        option 'proto' '3g'
        option 'pincode' ''
        option 'auto' '0'
        option 'username' 'internet'
        option 'password' 'internet'

config 'switch'
        option 'name' 'rtl8366rb'
        option 'reset' '1'
        option 'enable_vlan' '1'

config 'switch_vlan'
        option 'device' 'rtl8366rb'
        option 'vlan' '1'
        option 'ports' '1 2 3 4 5t'

config 'switch_vlan'
        option 'device' 'rtl8366rb'
        option 'vlan' '2'
        option 'ports' '0 5t'

ifconfig

br-lan    Link encap:Ethernet  HWaddr 
          inet addr:192.168.0.1  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9825 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12345 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1305556 (1.2 MiB)  TX bytes:10638592 (10.1 MiB)

eth0      Link encap:Ethernet  HWaddr 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9849 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12347 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:1484826 (1.4 MiB)  TX bytes:10689057 (10.1 MiB)
          Interrupt:4

eth0.1    Link encap:Ethernet  HWaddr 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:9825 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12345 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:1344856 (1.2 MiB)  TX bytes:10687972 (10.1 MiB)

hso0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:109.243.114.117  P-t-P:109.243.114.117  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1486  Metric:1
          RX packets:6850 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5739 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10
          RX bytes:6157010 (5.8 MiB)  TX bytes:964907 (942.2 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:216 errors:0 dropped:0 overruns:0 frame:0
          TX packets:216 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:14648 (14.3 KiB)  TX bytes:14648 (14.3 KiB)

MACa profilaktycznie usunalem :-)

15

Odp: TL-WR1043ND a Option ICON 225

Ok już wiem - bo inaczej nazywa się połączenie. Nie 3g-3g jak normalnie tylko hso0 - to jestem w stanie poprawić.

Co będzie jak zrobicie rmmod hso i insmod hso w /etc/rc.local? Jak nie zadziała trzeba będzie coś kombinować.

Jak pisałem - wystarczy więc zmienić /etc/chatscript/3g.chat żeby inaczej wołać połączenie (jak @pepino wskazał) i być może da się obejść bez tego skryptu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

16

Odp: TL-WR1043ND a Option ICON 225

Gotowiec: https://dev.openwrt.org/ticket/6995

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

17

Odp: TL-WR1043ND a Option ICON 225

rmmod hso oraz insmod w rc.local rozwiązują kwestie smile
Sprawdziłem zarówno po kompletnym odłączeniu prądu od całości oraz po zwykłym reboocie.

Gotowca właśnie przeglądam i ciekawi mnie czemu używają w nim HS2 zamiast HS0...

18

Odp: TL-WR1043ND a Option ICON 225

Trochę przekombinowane jak dla mnie. Sama zmiana 3g.chat nie wystarczy?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

19 (edytowany przez pepino 2010-10-18 08:31:58)

Odp: TL-WR1043ND a Option ICON 225

Ano nie wystarczy. Dioda modemu wskazuje na to, że nawiązał on połączenie, ale ifconfig już go nie podaje.
Poza tym zauważ, że do hangupu użyto oddzielnego chatu.
W ramach testu potworzyłem wszystkie pliki z https://dev.openwrt.org/raw-attachment/ … o.patch.gz
i wygląda na to, że po prostu działa smile

Oczywiście wywaliłem te regułki iptables z iface i wstawiłem tam na wzór 3g linijki od diody, a w firewallu dorobiłem strefę hso + forwardowanie.

Jak tak teraz porównuje sobie konfigi od 3g i hso to jest tak wiele podobieństw, że faktycznie można by to jakoś sprytnie połączyć...

Dopisane:
Zarówno gnokii jak i 3ginfo pracują na /dev/ttyHS1.

root@OpenWrt:~# gcom -d /dev/ttyHS1 -s /usr/share/3ginfo/scripts/3ginfo.gcom

+CSQ: 10,99
+COPS: 0,0,"Plus",2
+CREG: 2,1,"8143","E5F2"

Jak widać w 3ginfo.sh będzie trzeba jeszcze troszkę rzeczy dostosować dla tego nieszczęsnego optiona wink

20

Odp: TL-WR1043ND a Option ICON 225

Której wersji używasz? Tu nie powinno być +COPS: 0,0,"Plus",2 tylko +COPS: 0,2,"26001",2 jak już, bo o to się pytam.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

21

Odp: TL-WR1043ND a Option ICON 225

3ginfo_1-11cj_all.ipk - 10.05.2010

22

Odp: TL-WR1043ND a Option ICON 225

No co Ty... Inny ten icon lekko jest smile.

Pokaż mi
gcom -d /dev/ttyHS1 -v -s /usr/share/3ginfo/scripts/3ginfo.gcom

Masz polecenie które dla icona zwraca tryb pracy (HSPA/UMTS/EDGE)?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

23

Odp: TL-WR1043ND a Option ICON 225

Komendy (jeszcze) nie znam.

root@OpenWrt:~# gcom -d /dev/ttyHS1 -v -s /usr/share/3ginfo/scripts/3ginfo.gcom
comgt 20:12:25 -> Verbose output enabled
comgt 20:12:25 -> Script file: /usr/share/3ginfo/scripts/3ginfo.gcom
comgt 20:12:25 -> argc:6
comgt 20:12:25 -> argv[0]=gcom
comgt 20:12:25 -> argv[1]=-d
comgt 20:12:25 -> argv[2]=/dev/ttyHS1
comgt 20:12:25 -> argv[3]=-v
comgt 20:12:25 -> argv[4]=-s
comgt 20:12:25 -> argv[5]=/usr/share/3ginfo/scripts/3ginfo.gcom
comgt 20:12:25 ->  ---Script---
   1@0000 opengt
   2@0007  set com 115200n81
   3@0026  set comecho off
   4@0043  set senddelay 0.02
   5@0063  waitquiet 0.2 0.2
   6@0082 
   7@0083  send "AT\^CURC=0^m"
   8@0104  waitfor 5 "OK","ERROR"
   9@0128 
  10@0129  let $c="AT+CSQ^m"
  11@0148  let $r="+CSQ"
  12@0163  gosub readatcmd
  13@0180 
  14@0181  let $c="AT+COPS=0,2; +COPS?^m"
  15@0213  let $r="+COPS"
  16@0229  gosub readatcmd
  17@0246 
  18@0247  let $c="AT\^SYSINFO^m"
  19@0271  let $r="\^SYSINFO"
  20@0291  gosub readatcmd
  21@0308 
  22@0309  let $c="AT+CREG=2; +CREG?^m"
  23@0339  let $r="+CREG"
  24@0355  gosub readatcmd
  25@0372 
  26@0373  let $c="AT+CGEQNEG=1^m"
  27@0398  let $r="+CGEQNEG"
  28@0417  gosub readatcmd
  29@0434 
  30@0435  exit 0
  31@0443 
  32@0444 :readatcmd
  33@0455  let i=20
  34@0465  send $c
  35@0474 :loop
  36@0480  get 2 "^m" $s
  37@0495  let l=len($r)
  38@0510  if len($s) < l goto loop1
  39@0537  if $mid($s,1,l) <> $r goto loop1
  40@0571  print $s
  41@0581  return
  42@0589 
  43@0590 :loop1
  44@0597  if len($s) < 3 goto loop2
  45@0624  if $mid($s,1,3) = "ERR" return
  46@0656 :loop2
  47@0663  if i = 0 return
  48@0680  let i=i-1
  49@0691  sleep 0.5
  50@0702  goto loop
comgt 20:12:25 ->  ---End of script---
comgt 20:12:25 -> @0000 opengt
comgt 20:12:25 -> Opened /dev/ttyHS1 as FD 3
comgt 20:12:25 -> @0008 set com 115200n81
comgt 20:12:25 -> @0027 set comecho off
comgt 20:12:25 -> @0044 set senddelay 0.02
comgt 20:12:25 -> @0064 waitquiet 0.2 0.2
comgt 20:12:26 -> @0084 send "AT\^CURC=0^m"
comgt 20:12:26 -> @0105 waitfor 5 "OK","ERROR"

comgt 20:12:26 -> @0130 let $c="AT+CSQ^m"
comgt 20:12:26 -> @0149 let $r="+CSQ"
comgt 20:12:26 -> @0164 gosub readatcmd
comgt 20:12:26 -> @0444 :readatcmd
comgt 20:12:26 -> @0456 let i=20
comgt 20:12:26 -> @0466 send $c
comgt 20:12:26 -> @0474 :loop
comgt 20:12:26 -> @0481 get 2 "^m" $s

comgt 20:12:26 -> @0496 let l=len($r)
comgt 20:12:26 -> @0511 if len($s) < l goto loop1
comgt 20:12:26 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:26 -> @0560 goto loop1
comgt 20:12:26 -> @0590 :loop1
comgt 20:12:26 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:26 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:26 -> @0656 :loop2
comgt 20:12:26 -> @0664 if i = 0 return
comgt 20:12:26 -> @0681 let i=i-1
comgt 20:12:26 -> @0692 sleep 0.5
comgt 20:12:27 -> @0703 goto loop
comgt 20:12:27 -> @0474 :loop
comgt 20:12:27 -> @0481 get 2 "^m" $s

comgt 20:12:27 -> @0496 let l=len($r)
comgt 20:12:27 -> @0511 if len($s) < l goto loop1
comgt 20:12:27 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:27 -> @0572 print $s

+CSQ: 13,99comgt 20:12:27 -> @0582 return
comgt 20:12:27 -> @0182 let $c="AT+COPS=0,2; +COPS?^m"
comgt 20:12:27 -> @0214 let $r="+COPS"
comgt 20:12:27 -> @0230 gosub readatcmd
comgt 20:12:27 -> @0444 :readatcmd
comgt 20:12:27 -> @0456 let i=20
comgt 20:12:27 -> @0466 send $c
comgt 20:12:27 -> @0474 :loop
comgt 20:12:27 -> @0481 get 2 "^m" $s
comgt 20:12:27 -> @0496 let l=len($r)
comgt 20:12:27 -> @0511 if len($s) < l goto loop1
comgt 20:12:27 -> @0526 goto loop1
comgt 20:12:27 -> @0590 :loop1
comgt 20:12:27 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:27 -> @0613 goto loop2
comgt 20:12:27 -> @0656 :loop2
comgt 20:12:27 -> @0664 if i = 0 return
comgt 20:12:27 -> @0681 let i=i-1
comgt 20:12:27 -> @0692 sleep 0.5
comgt 20:12:28 -> @0703 goto loop
comgt 20:12:28 -> @0474 :loop
comgt 20:12:28 -> @0481 get 2 "^m" $s

comgt 20:12:28 -> @0496 let l=len($r)
comgt 20:12:28 -> @0511 if len($s) < l goto loop1
comgt 20:12:28 -> @0526 goto loop1
comgt 20:12:28 -> @0590 :loop1
comgt 20:12:28 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:28 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:28 -> @0656 :loop2
comgt 20:12:28 -> @0664 if i = 0 return
comgt 20:12:28 -> @0681 let i=i-1
comgt 20:12:28 -> @0692 sleep 0.5
comgt 20:12:28 -> @0703 goto loop
comgt 20:12:28 -> @0474 :loop
comgt 20:12:28 -> @0481 get 2 "^m" $s

comgt 20:12:28 -> @0496 let l=len($r)
comgt 20:12:28 -> @0511 if len($s) < l goto loop1
comgt 20:12:28 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:28 -> @0560 goto loop1
comgt 20:12:28 -> @0590 :loop1
comgt 20:12:28 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:28 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:28 -> @0656 :loop2
comgt 20:12:28 -> @0664 if i = 0 return
comgt 20:12:28 -> @0681 let i=i-1
comgt 20:12:28 -> @0692 sleep 0.5
comgt 20:12:29 -> @0703 goto loop
comgt 20:12:29 -> @0474 :loop
comgt 20:12:29 -> @0481 get 2 "^m" $s

comgt 20:12:29 -> @0496 let l=len($r)
comgt 20:12:29 -> @0511 if len($s) < l goto loop1
comgt 20:12:29 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:29 -> @0572 print $s

+COPS: 0,0,"Plus",2comgt 20:12:29 -> @0582 return
comgt 20:12:29 -> @0248 let $c="AT\^SYSINFO^m"
comgt 20:12:29 -> @0272 let $r="\^SYSINFO"
comgt 20:12:29 -> @0292 gosub readatcmd
comgt 20:12:29 -> @0444 :readatcmd
comgt 20:12:29 -> @0456 let i=20
comgt 20:12:29 -> @0466 send $c
comgt 20:12:29 -> @0474 :loop
comgt 20:12:29 -> @0481 get 2 "^m" $s
comgt 20:12:29 -> @0496 let l=len($r)
comgt 20:12:29 -> @0511 if len($s) < l goto loop1
comgt 20:12:29 -> @0526 goto loop1
comgt 20:12:29 -> @0590 :loop1
comgt 20:12:29 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:29 -> @0613 goto loop2
comgt 20:12:29 -> @0656 :loop2
comgt 20:12:29 -> @0664 if i = 0 return
comgt 20:12:29 -> @0681 let i=i-1
comgt 20:12:29 -> @0692 sleep 0.5
comgt 20:12:29 -> @0703 goto loop
comgt 20:12:29 -> @0474 :loop
comgt 20:12:29 -> @0481 get 2 "^m" $s

comgt 20:12:29 -> @0496 let l=len($r)
comgt 20:12:29 -> @0511 if len($s) < l goto loop1
comgt 20:12:29 -> @0526 goto loop1
comgt 20:12:29 -> @0590 :loop1
comgt 20:12:29 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:29 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:29 -> @0656 :loop2
comgt 20:12:29 -> @0664 if i = 0 return
comgt 20:12:29 -> @0681 let i=i-1
comgt 20:12:29 -> @0692 sleep 0.5
comgt 20:12:30 -> @0703 goto loop
comgt 20:12:30 -> @0474 :loop
comgt 20:12:30 -> @0481 get 2 "^m" $s

comgt 20:12:30 -> @0496 let l=len($r)
comgt 20:12:30 -> @0511 if len($s) < l goto loop1
comgt 20:12:30 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:30 -> @0560 goto loop1
comgt 20:12:30 -> @0590 :loop1
comgt 20:12:30 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:30 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:30 -> @0656 :loop2
comgt 20:12:30 -> @0664 if i = 0 return
comgt 20:12:30 -> @0681 let i=i-1
comgt 20:12:30 -> @0692 sleep 0.5
comgt 20:12:30 -> @0703 goto loop
comgt 20:12:30 -> @0474 :loop
comgt 20:12:30 -> @0481 get 2 "^m" $s

comgt 20:12:30 -> @0496 let l=len($r)
comgt 20:12:30 -> @0511 if len($s) < l goto loop1
comgt 20:12:30 -> @0526 goto loop1
comgt 20:12:30 -> @0590 :loop1
comgt 20:12:30 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:30 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:30 -> @0649 return
comgt 20:12:30 -> @0310 let $c="AT+CREG=2; +CREG?^m"
comgt 20:12:30 -> @0340 let $r="+CREG"
comgt 20:12:30 -> @0356 gosub readatcmd
comgt 20:12:30 -> @0444 :readatcmd
comgt 20:12:30 -> @0456 let i=20
comgt 20:12:30 -> @0466 send $c
comgt 20:12:31 -> @0474 :loop
comgt 20:12:31 -> @0481 get 2 "^m" $s

comgt 20:12:31 -> @0496 let l=len($r)
comgt 20:12:31 -> @0511 if len($s) < l goto loop1
comgt 20:12:31 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:31 -> @0560 goto loop1
comgt 20:12:31 -> @0590 :loop1
comgt 20:12:31 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:31 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:31 -> @0656 :loop2
comgt 20:12:31 -> @0664 if i = 0 return
comgt 20:12:31 -> @0681 let i=i-1
comgt 20:12:31 -> @0692 sleep 0.5
comgt 20:12:31 -> @0703 goto loop
comgt 20:12:31 -> @0474 :loop
comgt 20:12:31 -> @0481 get 2 "^m" $s

comgt 20:12:31 -> @0496 let l=len($r)
comgt 20:12:31 -> @0511 if len($s) < l goto loop1
comgt 20:12:31 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:31 -> @0572 print $s

+CREG: 2,1,"8143","E5F2"comgt 20:12:31 -> @0582 return
comgt 20:12:31 -> @0374 let $c="AT+CGEQNEG=1^m"
comgt 20:12:31 -> @0399 let $r="+CGEQNEG"
comgt 20:12:31 -> @0418 gosub readatcmd
comgt 20:12:31 -> @0444 :readatcmd
comgt 20:12:31 -> @0456 let i=20
comgt 20:12:31 -> @0466 send $c
comgt 20:12:32 -> @0474 :loop
comgt 20:12:32 -> @0481 get 2 "^m" $s
comgt 20:12:32 -> @0496 let l=len($r)
comgt 20:12:32 -> @0511 if len($s) < l goto loop1
comgt 20:12:32 -> @0526 goto loop1
comgt 20:12:32 -> @0590 :loop1
comgt 20:12:32 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:32 -> @0613 goto loop2
comgt 20:12:32 -> @0656 :loop2
comgt 20:12:32 -> @0664 if i = 0 return
comgt 20:12:32 -> @0681 let i=i-1
comgt 20:12:32 -> @0692 sleep 0.5
comgt 20:12:32 -> @0703 goto loop
comgt 20:12:32 -> @0474 :loop
comgt 20:12:32 -> @0481 get 2 "^m" $s

comgt 20:12:32 -> @0496 let l=len($r)
comgt 20:12:32 -> @0511 if len($s) < l goto loop1
comgt 20:12:32 -> @0526 goto loop1
comgt 20:12:32 -> @0590 :loop1
comgt 20:12:32 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:32 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:32 -> @0656 :loop2
comgt 20:12:32 -> @0664 if i = 0 return
comgt 20:12:32 -> @0681 let i=i-1
comgt 20:12:32 -> @0692 sleep 0.5
comgt 20:12:33 -> @0703 goto loop
comgt 20:12:33 -> @0474 :loop
comgt 20:12:33 -> @0481 get 2 "^m" $s

comgt 20:12:33 -> @0496 let l=len($r)
comgt 20:12:33 -> @0511 if len($s) < l goto loop1
comgt 20:12:33 -> @0538 if $mid($s,1,l) <> $r goto loop1
comgt 20:12:33 -> @0560 goto loop1
comgt 20:12:33 -> @0590 :loop1
comgt 20:12:33 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:33 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:33 -> @0656 :loop2
comgt 20:12:33 -> @0664 if i = 0 return
comgt 20:12:33 -> @0681 let i=i-1
comgt 20:12:33 -> @0692 sleep 0.5
comgt 20:12:33 -> @0703 goto loop
comgt 20:12:33 -> @0474 :loop
comgt 20:12:33 -> @0481 get 2 "^m" $s

comgt 20:12:33 -> @0496 let l=len($r)
comgt 20:12:33 -> @0511 if len($s) < l goto loop1
comgt 20:12:33 -> @0526 goto loop1
comgt 20:12:33 -> @0590 :loop1
comgt 20:12:33 -> @0598 if len($s) < 3 goto loop2
comgt 20:12:33 -> @0625 if $mid($s,1,3) = "ERR" return
comgt 20:12:33 -> @0649 return
comgt 20:12:33 -> @0436 exit 0

24

Odp: TL-WR1043ND a Option ICON 225

Ciekawe, ciekawe....

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

25

Odp: TL-WR1043ND a Option ICON 225

Mam big_smile
AT_OCTI? - mozliwe odpowiedzi 0: Brak sygnalu, 1: GSM, 2: GPRS, 3: EDGE
AT_OWCTI? - mozliwe odpowiedzi 1: UMTS, 2: HSDPA, 3: HSUPA, 4: HSDPA+HSUPA
AT_OHCIP? - mozliwe odpowiedzi 0: ???, 1: HSDPA