Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
W przypadku modemmanager czy modem-manager-gui skanowanie sieci nie jest niczym trudnym, po prostu się klika i za chwile zwracana jest lista dostępnych sieci. Jeśli chodzi o komendy AT, to tutaj jest dostępna [b]AT+COPS=?[/b] . Gdy to zostanie wydane przez wvdial, to ten zwraca taki komunikat:
# wvdial info-scan --> WvDial: Internet dialer version 1.61 --> Initializing modem. --> Sending: ATZ OK --> Sending: ATQ0 V1 E0 H0 S0=0 OK --> Sending: AT+COPS=? --> Sending: ATQ0 --> Re-Sending: AT+COPS=? --> Modem not responding.
Niby jest wyrzucany komunikat, że modem nie odpowiada ale z tego co czytam, to skanowanie sieci trwa jakieś 30s. No i przez ten czas wvdial powinien poczekać ale tego nie robi i po chwili wysyła drugi raz to polecenie i po chwili zdycha.
Jeśli teraz po tych 30s wyda się inne polecenie, jakiekolwiek byleby tylko coś przesłać do modemu, np. ATZ+CFUN=1 , to dostaje się odpowiedź z tego poprzedniego zapytania:
# wvdial modem-start --> WvDial: Internet dialer version 1.61 --> Initializing modem. --> Sending: ATZ+CFUN=1 +COPS: (2,"T-Mobile.pl","TM PL","26002",2),(1,"T-Mobile.pl","TM PL","26002",7), (3,"Plus","PLUS","26001",7),(3,"Play","Play","26006",7),(3,"Orange","Orange","26003",7), (3,"Play","Play","26006",2),(3,"Orange","Orange","26003",2),(3,"Plus","PLUS","26001",2),,(0,1,2,3,4),(0,1,2) OK --> Sending: ATQ0 V1 E0 H0 S0=0 OK --> Modem initialized. --> Configuration does not specify a valid phone number. --> Configuration does not specify a valid login name. --> Configuration does not specify a valid password.
To mi przypomina trochę te kody USSD, gdzie trzeba było wydać parę razy polecenie i dopiero za którymś została zwrócona odpowiedź. xD Da radę jakoś powiedzieć wvdial by czekał aż to polecenie zwróci wynik, np. ustawić timeout komendy na 30s? xD
Offline
Z wvdialem też nie wiem jakie wpisy dla tego skanowania.
Zwykłe zastosowania echo u mnie działają:
# echo -e "at^curc?\r" >/dev/ttyUSB0 && grep -m1 "CURC:" /dev/ttyUSB0 ^CURC: 1 # echo -e "at^curc=0\r" >/dev/ttyUSB0 # echo -e "at^curc?\r" >/dev/ttyUSB0 && grep -m1 "CURC:" /dev/ttyUSB0 ^CURC: 0 # echo -e "at+cops=?\r" >/dev/ttyUSB0 && grep -m1 "COPS:" /dev/ttyUSB0
tu po kilkunastu sek. wyświetla wynik
+COPS: (2,"PLAY","PLAY","26006",7),(1,"PLAY","PLAY","26006",2),(1,"PLAY","PLAY","26006",0),(3,"Plus","Plus","26001",7),(3,"Orange","Orange","26003",7),(3,"T-Mobile","T-Mobile","26002",7),(3,"T-Mobile","T-Mobile","26002",2),(3,"Plus","Plus","26001",2),(3,"Orange","Orange","26003",2),(3,"T-Mobile","T-Mobile","26002",0),(3,"Plus","Plus","26001",0),(3,"Orange","Orange","26003",0),,(0,1,2,3,4),(0,1,2)
Offline
W sumie te wszystkie polecenia AT powinny działać bez problemu i działają tylko, że ten wvdial czeka bardzo krótko na odpowiedź i jak jej nie otrzymuje, to przesyła jeszcze raz polecenie i brak odpowiedzi traktuje jako zawieszenie modemu. Gdyby można było ustawić timeout na 30s czy coś, to wtedy by czekał na odpowiedź tyle czasu bez ponownego przesyłania polecenia i wszystko by grało zarówno z tym skanowanie, wysyłaniem sms i kodami ussd.
BTW, to echo na urządzenie może uszkodzić modem? Bo gdzieś wyczytałem, że można go tam łatwo uwalić. xD
Offline
[quote=morfik]BTW, to echo na urządzenie może uszkodzić modem? Bo gdzieś wyczytałem, że można go tam łatwo uwalić. xD[/quote]
Niewłaściwe komendy mogą namieszać, np
http://www.frazpc.pl/b/322688
Wydajemy drugą komendę: AT^SETPORT="FF;12,16" która sprawi, że wyłączymy wbudowane w modem partycję CD-ROM i czytnik SD, oraz pozostaną włączone wyłącznie (12) port do komunikacji z modemem - PCUI oraz (16) karta sieciowa NDIS - NCM. To że nie widzicie tu włączonego modemu, nie oznacza że go nie ma. Jest ale nie aktywny jako RAS - nie będzie go na liście urządzeń w menago i nie będzie możliwości dodania połączenia ppp. WARNING !!! Jeśli chcesz dłubac w tej komendzie, to ostrożnie - w przypadku tego modemu nie może zabraknąc w tej komendzie cyfry 12 po średniku. Jeśli jej zabraknie, to wyłączymy PCUI i będziemy mieli modem bez dostępu do niego !!!
Offline
Time (s) | Query |
---|---|
0.00010 | SET CHARSET latin2 |
0.00003 | SET NAMES latin2 |
0.00108 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='13.58.200.78' WHERE u.id=1 |
0.00092 | UPDATE punbb_online SET logged=1732747828 WHERE ident='13.58.200.78' |
0.00053 | SELECT * FROM punbb_online WHERE logged<1732747528 |
0.00049 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=28465 AND t.moved_to IS NULL |
0.00010 | SELECT search_for, replace_with FROM punbb_censoring |
0.00097 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=28465 ORDER BY p.id LIMIT 0,25 |
0.00080 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=28465 |
Total query time: 0.00502 s |