Fedora 15 van a laptopon (is), a ZTE K3570-Z (Voda) pöccre ment vele: a NetworkManager feldobta modemként, csak pár kattintással be kellett állítanom, hogy melyk szolgáltató és kész.
Ezzel szemben a Huawei E173s-1 (T) nem megy pöccre, volt itt udev debuggolás, kernel driver olvasás, usb_modeswitch hekkelés, minden jóság vasárnapra. Mivel makro szinten egész jól feltérképeztem a mobilmodemek szoftver stackjét, meg is osztom azzal, aki nem fél ha olajos lesz a keze, hátha segít egyszer egy rakoncátlan modem belövésében.
- Mélyvíz -
Nos, az USB modemek munkára fogását az udev kezdi. Az ő dolga az ún. modeswitch, ami bekapcsolja a modem funkciót, hiszen alapból a stickek csak olyanok mint egy pendrive, csak a Windowsos bloatware drivert tárolják. Az ismert modemek listáját a /lib/udev/rules.d/40-usb_modeswitch.rules fájl tartalmazza. Csatlakoztatáskor ez alapján hívja meg az udev az /lib/udev/usb_modeswitch TCL scriptet, ami az /usr/sbin/usb_modeswitch binárist megfelelően felparaméterezi, ami aztán a /etc/usb_modeswitch.d/ alatt lévő hardverspecifikus konfigfájlok alapján megpróbálja elvégezni a módváltást a sticken (a módváltástól az USB ProductID is megváltozik, az lsusb-n látszik). Ha a fenti .rules fájlban nincs benne a modem, nem történik meg a módváltás, csak pendriveként üzemel tovább. Az udev által hívott scriptek stderr-je alapból sajnos elveszik, az alapértelmezésben err szintű loggolás ignorálja (ld. /etc/udev/udev.conf). Hogy a meghívott scriptek hibáit lásd, ahhoz legalább info szinte kell emelni a loggolást, pl így:
udevadm control --log-priority=info
Emellett az /lib/udev/usb_modeswitch is képes loggolni fájlokba a /var/log/usb_modeswitch_* alá, ha a /etc/usb_modeswitch.conf fájlban bekapcsolod az EnableLogging-ot. (Ha maga a /lib/udev/usb_modeswitch száll el, akkor azt persze csak az udev tudja megfelelően loggolni.) Ha a módváltás nem sikerül, akkor így jöhetsz rá, hogy mi a baj.
Ha a módváltás sikerült, akkor a megfelelő "usb serial" kernel drivert is betöltötte a /lib/udev/usb_modeswitch, így feltűnnek a soros portok a rendszerben (ttyUSBn). Ezek a modemek tömegcikkek, ha 5 forintal olcsóbban össze lehet hozni darabját, akkor bizony hajlamosak egy teljesen új modellt bevezetni, szóval pörög a piac, amit a modemeknél alapértelmezett option.c usb serial driver nem bír naprakészen követni. Emiatt dinamikusan "programozhatóvá" tették, a /sys alatt menet közben vehetőek fel alá az új modellek. Ezt azért lehet megtenni, mert a kommunikációs protokoll gyakorlatilag ugyanaz, csak az eszközök azonosítója változik. A Huawei E173s-1 azonosítója pl szintén nincs az option.c driverben (még). Az udev itt biza' nem vacakol, minden modemnek látszó tárgyat megpróbál felvenni egy /lib/udev/usb_modeswitch --driver-bind hívással az option.c-nek, hátha bejön - az E173s-1-nél pl bejön. Ezt azért fontos tudni, mert ha kapsz egy tuti usb_modeswitch konfigfájlt egy új modemhez és azt kézzel lefuttatod, akkor bizony a modem mód ellenére jó esélyed lesz, hogy az option.c driver nem fogja felismerni és azt hiszed, hogy a usb_modeswitch nem sikerült, pedig csak az option.c -t kell tanítani.
Ha az option driver kezelésbe vette, lesz néhány soros portunk a userspaceben, ahol az udev felhívására akcióba lép a ModemManager. A ModemManagernek gyártóspecifikus driverei (userspace pluginjei) vannak, hiszen pl. a hálózatválasztás, sms kezelés, térerő lekérdezés egyáltalán nem szabványos, de kell. A megfelelő driver kiválasztása itt az AT parancsokra adott válaszok alapján megy. Ha az eszközt kezelésbe vette a driver, a ModemManager egy kezdetleges D-Bus API-n behirdeti az új modemet a NetworkManager felé (is) és innen már megkezdődik a hardverfüggetlen interakció a juzerrel, amire nem térek ki, minket csak a hardver érdekelt.
Összefoglalva, egy új modem támogatása tehát csak több szinten valósulhat meg:
- kell, hogy ismerje az udev
- kell, hogy tudja kezelni az usb_modeswitch
- kell, hogy ismerje az option.c (vagy az udev tanítsa meg neki)
- kell, hogy tudja kezelni a ModemManager pluginje
Nekem a Huawei E173s-1 -el csak annyi volt a probléma, hogy a modeswitch előtt várni kellett egy kicsit, hogy pontosan miért, azt nem tudom, de nem is érdekel, hiszen a megoldásnak nincs komoly hátránya. A várakozást a /lib/udev/usb_modeswitch script támogatja, csak a /etc/usb_modeswitch.d/12d1:1c0b konfigba kellett írni, hogy: WaitBefore=3.
Ha neked is sikerült működésre bírni egy makacs modemet, mindenképp tedd közkinccsé, mert ez olyan dolog, amihez közösség kell, mert egy embernek/cégnek sincs hozzáférése ahhoz a millió modemhez ami a piacon van.
http://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?p=4863#4863
https://bugzilla.redhat.com/show_bug.cgi?id=725265
A NetworkManager egyébként egy álom, ha belegondolok, hogy hány layert, milyen vaskos stacket fog össze és tesz kezelhetővé, hát egy könnycsepp menten kicsordul a szemem sarkából.. :) Pláne azért, mert megéltem mi volt előtte.
- dap blogja
- A hozzászóláshoz be kell jelentkezni
- 7215 megtekintés
Hozzászólások
En is szeretem a NM-et, bar szerintem kisse eroszakos, de ez legyen a legnagyobb hibaja.
A Voda ZTE stickjeivel szinte senkinek nincs gondja, mas kerdes, hogy a Voda is - akar csak a tobbi szolgaltato - csak elofizeteseseknek ad ertelmes mobilnetet.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Furcsa, Inviteles Huawei E173 Ubuntu 1010/1104 alatt pöc-röff megy! Fedora most nincs kéznél.
- A hozzászóláshoz be kell jelentkezni
A Huawei E173 és a E173s teljesen más típus, de még a E173s-1 és a E173s-6 is különbözik a működésben. A pontos típus a fedél alatt van, kívül mindre csak simán E173-at nyomnak. Nézd meg nekem légyszi a pontos típust!
- A hozzászóláshoz be kell jelentkezni
Elég olvashatatlan, hátha neked jobb szemed van!
hwinfo ezt írta róla:
/dev/ttyUSB0@9600: ATI
ATI
Manufacturer: huawei
Model: E173
Revision: 11.126.85.00.569
IMEI: xxxxx
+GCAP: +CGSM,+DS,+ES
OK
- A hozzászóláshoz be kell jelentkezni
Ja, tényleg nem látszik, de a felirat stílusa más mint az enyémen, a revisionben pedig jó nagy különbség van, biztos nem ugyanaz a kettő.
Manufacturer: huawei
Model: E173
Revision: 21.017.07.00.78
IMEI: xxxxx
+GCAP: +CGSM,+DS,+ES
Köszi!
- A hozzászóláshoz be kell jelentkezni
Kis mellekzonge, kijott az uj CentOS 6 Live, gondoltam felpattintom egy pendrive-ra, kiprobalom a mobilnetem rajta. network-manager felajanlotta a mobile broadband lehetoseget, kaptam is rajta. Sajnos Magyarorszagnal nem szerepelt a listaban az invitel, na sebaj, majd most fog, megadtam neki az apn-t, aztan kivancsian vartam, h csatlakozik-e es siker :)
- A hozzászóláshoz be kell jelentkezni
sub
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Nekem Telenor Huawei E173 (MobilePartner) stick van a netbookhoz, Ubuntu 11.04-el.
Kezdetben nem ment sehogy sem. Megjelent az eszközök között, de nem épült fel a kapcsolat, ciklikusan el-eltűnt a listáról, stb.
A Google segített aztán, mert hosszas keresgélés és próba után találtam egy megoldást a problémára itt
Ez a program (Movistar 3.5G) a modem Windows-os alatt megszokott kezelőfelületét biztosítja Linux alatt. Pontosan ugyanúgy is működik. A stick bedugása után automatikusan elindul és bekéri a PIN kódot. Innentől kezdve akár ki is léphetek belőle, mert a NetworkManager-ben is el tudom már indítani a kapcsolatot, de folytathatom a Movistar 3.5G-vel is a csatlakozást.
Szóval ez nem éppen egy "szakértő megoldás", de jó, ha tudják a Linux felhasználók, hogy van ez a lehetőség is.
- A hozzászóláshoz be kell jelentkezni
Nekem egy T-mobile-os ZTE-m van (most a pontos típusra nem emlékszem) alapból CDrom ként ismeri fel a Kubuntu és csak annyit kell vele tenni, hogy konzolból kiadom az eject /dev/srX parancsot és máris látszik a /dev/ttyUSBX node.
- A hozzászóláshoz be kell jelentkezni
Ez jó, eszembe sem jutna kiadatni... ezt megjegyeztem, hátha jól jön még. :)
- A hozzászóláshoz be kell jelentkezni
Cask tudnam miert nem ugy mukodnek ezek a joszagok, hogy egy setconfiguration -t kikuld nekik a host, utanna modemek lesznek.
http://www.beyondlogic.org/usbnutshell/usb5.shtml#ConfigurationDescript…
Ezek modeswitch -et hasznalo eszkozok kaphatnak -e egyeltalana USB -certet ?
Nem tudom, hogy hany fillerrel lenne dragabb, ha hubnak latszana amire egy modem es egy cdrom van kotve...
Amit nem lehet megirni assemblyben, azt nem lehet megirni.
- A hozzászóláshoz be kell jelentkezni
HUB chipre nincs is szükség, mert egy eszköz tud több interfacet mutatni, pl az én modemem modeswitch után csak kibővül a modem funkciókkal, a storage classt sem veszti el.
Szerintem ez a beteg helyzet a Windows miatt alakult ki, hiszen ha azonnal látszana a modem, akkor azonnal drivert követelne hozzá a Windows, ami megzavarná a felhasználókat. Így először felismeri a storaget, ahonnan regisztrálhatja magát a Windows alá a driver és utána nem lesz gond a vendor-függő interfészek felbukkanása. Elég gány megoldás, de ez van.
Még egy kis infó itt: http://en.wikipedia.org/wiki/Virtual_CD-ROM_switching_utility
- A hozzászóláshoz be kell jelentkezni
Azt nem ertem, hogy ez eddig ezernyi mas hardvernel miert ment... No mindegy, hulyul a nep biztos.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
Subscribe
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Adott egy ZTE/Vodafone K3570-Z modem. Adott egy lucidikus ubuntu.
Felraktam az usb_modeswitch* csomagot maverick-ből, mert a lucidos még nem tudja a 3570z-t.
Én speciel pon/poff-ot használok, mert a networkmanagert legyilkoltam a gépemről, de a barátnőmnek a gépére (szintén lucid) szerettem volna csilli-villi networkmanageresre beállítani a mobilnetet.
A /dev/ttyUSB* létrejön, de NM nem látja a modemet. Ilyenkor mi van????
A régi jó (ill már nem annyira jó) E220-at simán látta.
- A hozzászóláshoz be kell jelentkezni
A NetworkManager egyébként egy álom, ha belegondolok, hogy hány layert, milyen vaskos stacket fog össze és tesz kezelhetővé, hát egy könnycsepp menten kicsordul a szemem sarkából.. :) Pláne azért, mert megéltem mi volt előtte.
+1
- A hozzászóláshoz be kell jelentkezni
Hja... A wvdial után megváltás volt a gprsec... :)
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - -> Kérjük a humoros aláírást itt elhelyezni. <- - -
- A hozzászóláshoz be kell jelentkezni
Jahm... nekem a wifi azota letezik, amiota van NM. Elotte otletem se volt, hogy kell azt konfiguralni. Azota persze sokat tanultam rola, most mar nem okoz nehezseget egy wpa_supplicant vagy egy iwconfig parameterezese, de sokaig ugy telepitettem a Gentoot, hogy benyomtam a halokabelt a laptopba, es addig benn maradt, amig nem lett NM a gepen.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
hali,
E173s2-vel jatszott mar valaki? minden jonak tunik, csak epp nem tud parosodni rendesen a t-mobile halozattal:
tarcsaz, konnekt, auth, PAP, majd par madodperc mulva bont error 16-tal:
--> WvDial: Internet dialer version 1.61
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2
ATQ0 V1 E1 S0=0 &C1 &D2
OK
--> Sending: AT+CGDCONT=1,"IP","internet"
AT+CGDCONT=1,"IP","internet"
OK
--> Sending: AT+CGEQREQ=3,0,0,0,0,0
AT+CGEQREQ=3,0,0,0,0,0
OK
--> Sending: AT+CGEQMIN=1,0,0,0,0,0
AT+CGEQMIN=1,0,0,0,0,0
OK
--> Modem initialized.
--> Sending: ATDT*99#
--> Waiting for carrier.
ATDT*99#
CONNECT
--> Carrier detected. Starting PPP immediately.
--> Starting pppd at Tue Mar 27 10:39:14 2012
--> Pid of pppd: 6648
--> Using interface ppp0
--> Disconnecting at Tue Mar 27 10:39:38 2012
--> The PPP daemon has died: A modem hung up the phone (exit code = 16)
--> man pppd explains pppd error codes in more detail.
--> Try again and look into /var/log/messages and the wvdial and pppd man pages for more information.
--> Auto Reconnect will be attempted in 5 seconds
ill.:
Mar 27 10:39:14 localhost pppd[6648]: pppd 2.4.5 started by nobody, uid 0
Mar 27 10:39:14 localhost pppd[6648]: speed 3600000 not supported
Mar 27 10:39:14 localhost pppd[6648]: Using interface ppp0
Mar 27 10:39:14 localhost pppd[6648]: Connect: ppp0 <--> /dev/ttyUSB0
Mar 27 10:39:14 localhost pppd[6648]: Remote message: Greetings!!
Mar 27 10:39:14 localhost pppd[6648]: PAP authentication succeeded
Mar 27 10:39:38 localhost pppd[6648]: Modem hangup
Mar 27 10:39:38 localhost pppd[6648]: Connection terminated.
Mar 27 10:39:38 localhost pppd[6648]: Exit.
mi lehet a bibi?
t
- A hozzászóláshoz be kell jelentkezni
Gondolom az alap kerdeseken tul vagy, de alljon itt az archivum kedveert:
- Egyenleg van?
- Mobilinternet csomagra elofizetes van?
- Ezzel a SIM-mel telefonrol tudsz netezni?
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni
a default koroket nyilvan megfutottam:
minden adott, mas modemmel szepen szalad (pl. pannonos e1752, vagy pannonos e169)
t
- A hozzászóláshoz be kell jelentkezni
Ebben a fázisban még nem láttam elakadni a kapcsolódást, illetve csak akkor ha a SIM-el van probléma, de azt már kilőtted. Kapcsold be a PPP debug módját, abból értékes infók nyerhetőek ki.
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Disztro? Gentooeknal szokott olyan lenni, hogy valami dhcp vagy autoip vagy hasonlo USE flaggel kell leforgatni a ppp-t kulonben nem tud ip-t kerni. Asszem megis dhcp lesz az.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal
- A hozzászóláshoz be kell jelentkezni