Huawei E1752 pppd chat script

Fórumok

Csendes őrület :( Szépen felépül az option.ko driver és az USB0-2 nódok. A google szerint, ez ppp daemon -ért kiállt. Gondoltam nem gond, csinálok konfigot és chat scriptet. A chat scriptet először minicommal "kisérleteztem" ki, itt a capture:
ATZ
OK
ATE1
OK
AT+CPIN="xxxx"
OK
AT+CGDCONT=1,"IP","internet"
OK
ATDT*99#"
CONNECT

Ezután, csináltam egy "telenor" provider konfigot és hozzá egy "telenor-connect-chat" fájl készletet.

/etc/ppp/peers/telenor :

# USB Huawei E1752 settings
/dev/ttyUSB0
9600
idle 7200
lock
crtscts
modem
noauth
replacedefaultroute
defaultroute
user user
password passw
connect "/usr/sbin/chat -V -f /etc/ppp/peers/telenor-connect-chat"
noipdefault
usepeerdns
novj

/etc/ppp/peers/telenor-connect-chat :
ECHO ON
ABORT BUSY
ABORT ERROR
ABORT 'NO CARRIER'
REPORT CONNECT
TIMEOUT 10
SAY "Telenor connect chat\n"
OK "ATZ"
OK "ATE1
OK "AT+CPIN=\042xxxx\042"
OK "AT+CGDCONT=1,\042IP\042,\042internet\042"
SAY "Calling Telenor\n"
TIMEOUT 60
OK "ATDT*99#"
CONNECT \c

Elindítom szépen a "$pon telenor" parancsot, mire kisvágtatva kiírja, hogy "Telenor connect chat" majd hosszabb gyászos hallgatás után kiírja :

Script /usr/sbin/chat -V -f /etc/ppp/peers/telenor-connect-chat finished (PID valami), status 0x03
Connect script failed

A chat man -ja szerint ez időtúllépés, nem jött a kiküldött parancsra a elvárt válasz. Elméletileg, azt kértem a chat -től, hogy "ECHO ON" tehát, ki kellene írnia (szerintem) azt, hogy kiküldte az "ATZ" parancsot ... vár, nem jön az OK. Miért nem kapok echo -t? Miért csak a "SAY" -t látom az egész cuccból?

UI: nem tudja valaki hogy a chat honnan tudja hova kell "küldeni" a tokeneket? A man -ból nem derül ki, hogy kapja meg a /dev/ttyUSB0 -át mint cél eszközt, ha egyszerűen csak ">/dev/ttyUSB0" akkor nem tudna semmit arról hogy mit kapott. Nem értem ;(

Hozzászólások

Kösz! Az USB modem és zero CD egyebek túl vagyok - minicomból /dev/ttyUSB0 elérem a modemet - lásd minicom cap - sőt "connect".
Itt már a "végjáték" körül van a gond. Persze talán azért mert nem akarok olyan daemont telepíteni mint a network-manager.

* Én egy indián vagyok. Minden indián hazudik.

Annyira már rájöttem (lehet hogy ismét) hogy a chat általában így működik:
chat {opciók} -f script >/dev/eszköz
Mindjárt ki is próbálom "kopaszon" - ppp nélkül.

* Én egy indián vagyok. Minden indián hazudik.

Elkezdtem csak a chat scriptet tesztelni.
Kibukott néhány "apró" hiba - kijavítottam:
/etc/ppp/peers/telenor-connect-chat :
ECHO ON
ABORT BUSY
ABORT ERROR
ABORT 'NO CARRIER'
REPORT CONNECT
TIMEOUT 10
SAY "Telenor connect chat\n"
OK "ATZ"
OK "ATE1
OK "AT+CPIN=\042xxxx\042"
OK "AT+CGDCONT=1,\042IP\042,\042internet\042"
SAY "Calling Telenor\n"
TIMEOUT 60
OK "ATDT*99#"
CONNECT
Viszont most dacára, hogy minicommal kipróbáltam, az ATDT*99# (vagy ATDT*99***1#) mindig "NO CARRIER" hibát dob :( Most mit lehet ezzel tenni? "sleep"-et tud ez (csak egy ötlet)?

* Én egy indián vagyok. Minden indián hazudik.

nekem debianon egy ZTE usb stick csak wvdial-al jött össze, valahogy így:

Init1 = ATZ
Init2 = ATE0 V1 &D2 &C1 S0=0 +IFC=2,2
Init3 = AT+CGDCONT=,"IP","internet.vodafone.net"
Modem Type = Analog Modem
ISDN = 0
Stupid Mode = 1
Phone = *99#
Username = dummy
New PPPD = yes
Password = dummy
Modem = /dev/ttyUSB3
Baud = 921600

Továbbléptem, de még mindig nem elég:
/etc/ppp/peers/e7152


# USB Huawei E1752 settings
/dev/ttyUSB0
#9600
460800
idle 7200
lock
crtscts
modem
noauth
replacedefaultroute
defaultroute
user user
password passw
#connect "/etc/ppp/peers/connect-e1752.sh"
connect "/usr/sbin/chat -Vs -f /etc/ppp/peers/e1752-connect-chat"
noipdefault
usepeerdns
novj 

/etc/ppp/peers/e1752-connect-chat


ECHO OFF
ABORT BUSY
ABORT ERROR
ABORT 'NO CARRIER'
REPORT CONNECT
TIMEOUT 10
SAY	"E1752 to Telenor connect chat\n"
""	"ATZ"
OK	"ATE1"
OK	"AT+CPIN=\042xxxx\042"
OK	"ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
OK	"AT+CGDCONT=1,\042IP\042,\042internet\042"
OK	"\d\d\d\d\dATDT*99#"
TIMEOUT 30
CONNECT 

Connect -ál, a kulcs a '\d' késleltetés volt, viszont a pppd leáll valami olyasmivel amit nem ismerek, itt a log:


E1752 to Telenor connect chat

ATZ
OK
ATE1
OK
AT+CPIN="xxxx"
OK
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
AT+CGDCONT=1,"IP","internet"
OK
ATDT*99#
CONNECTchat:  Mar 28 18:25:19 CONNECT
Script /usr/sbin/chat -Vs -f /etc/ppp/peers/e1752-connect-chat finished (pid 1516), status = 0x0
Serial connection established.
using channel 3
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x5fb78890> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x0 <asyncmap 0x0> <auth chap MD5> <magic 0xf4fdc1> <pcomp> <accomp>]
sent [LCP ConfAck id=0x0 <asyncmap 0x0> <auth chap MD5> <magic 0xf4fdc1> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x5fb78890> <pcomp> <accomp>]
rcvd [LCP DiscReq id=0x1 magic=0xf4fdc1]
rcvd [CHAP Challenge id=0x1 <c05baf9688e7b0d2c8fd305cc0846594>, name = "UMTS_CHAP_SRVR"]
sent [CHAP Response id=0x1 <a1fe700a45e5513788dfae644eb88bdb>, name = "user"]
rcvd [CHAP Success id=0x1 ""]
CHAP authentication succeeded
CHAP authentication succeeded
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
rcvd [LCP ProtRej id=0x2 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
rcvd [IPCP ConfNak id=0x1 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x2 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
rcvd [IPCP ConfNak id=0x2 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
rcvd [IPCP ConfNak id=0x3 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x4 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
rcvd [IPCP ConfNak id=0x4 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x5 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
rcvd [IPCP ConfNak id=0x5 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x6 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
rcvd [IPCP ConfNak id=0x6 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x7 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
rcvd [IPCP ConfNak id=0x7 <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
sent [IPCP ConfReq id=0x8 <addr 0.0.0.0> <ms-dns1 10.11.12.13> <ms-dns2 10.11.12.14> <ms-wins 10.11.12.13> <ms-wins 10.11.12.14>]
Modem hangup
Connection terminated. 

* Én egy indián vagyok. Minden indián hazudik.

Kösz!
Egyenlőre, sajnos félre kellett tenni ezt. A darab sincs a kezemben.
Ha jól értem, a "noccp" letiltja a Compression Control Protocol -t.
Jó ötlet, ha megint hozzájutok, kipróbálom :)
(A pppd -nek nagyon jó manja van de hihetetlenül sok opciója)

* Én egy indián vagyok. Minden indián hazudik.

Anno a modemes korszakban a wvdial megjelenese egy kis forradalom volt, mert nem kellett holmi scriptekkel foglalkozni tobbet. Probald ki, lehet neked is segitsegedre lesz.

--
FeZo

Nézegettem. Igyekeztem a lehető legkevesebb "egyéb" programot alkalmazbi, az elképzelés az lenne, hogy egy ARM SBC -vel kell működtetni - minél kevesebb "sallang".
Egyébként minél több kisebb, nagyobb program van ráhúzva valamire annál kevésbé érthető, hogy működik. Igy aztán ha valami mégsem jó mégnehezebb kitalálni mi okozza a problémát. Ha megnézed időbe telt, hogy valaki értelmes ránézzen, de kiszúrt egy lehetséges hiba okot:)

* Én egy indián vagyok. Minden indián hazudik.