Huawei E220/E270

Linux.fista
Versio hetkellä 27. tammikuuta 2008 kello 15.47 – tehnyt 87.93.224.133 (keskustelu) (→‎Laitteen tilasta kertova LED)
Siirry navigaatioon Siirry hakuun

Tämä sivu käsittelee Huawei E220/E270 USB-liitäntäisen 3G-kännykän/modeemin asennusta. Tätä tuotetta myy Saunalahti DataPaketti-liittymiensä mukana ja DNA:lta saa käsittääkseni samaa laitetta Mokkula-nimisenä. Itse päädyin tuohon E270-malliin, jotta on päivitysvaraa tulevaisuudessa, jos sattuisikin haluamaan nopeampaa. Itse liittymähän kustantaa 10 €/kk, joskin luultavasti taas nälkä kasvaa syödessä ja on pakko vaihtaa nopeampaan ja silloin paremmasta modeemista on hyötyä.

Laite näkyy USB:n yli samaan aikaan kolmena laitteena: CD-asemana (jolta löytyvät laitteen Windows-ajurit) ja kahtena USB-sarjaporttiadapterina. Ensimmäinen USB-sarjaporttiadapteri (laitetiedosto /dev/ttyUSB0) toimii perinteisen modeemin tai rfcomm:lla liitetyn kännykän tapaan, eli sillä voidaan "soittaa" ja yhdistää verkkoon. Toinen sarjaporttiliitäntä (ttyUSB1) taasen mahdollistaa laitteen seurannan ja ohjaamisen myös verkkoyhteyden ollessa käytössä.

Asennus

Asennus on varsin suoraviivainen operaatio. Vaatimuksena on ytimen versio 2.6.20 tai uudempi. Valitse ytimen asetuksista kohdasta Device Drivers -> USB support -> USB Serial Converter support -> seuraavat valinnat:

  • USB Serial Converter support (CONFIG_USB_SERIAL)
  • USB driver for GSM and CDMA modems (CONFIG_USB_SERIAL_OPTION)

Mikäli ytimesi käyttää moduuleja (mikä on yleistä), on moduulin nimi "option" ja se latautuu automaattisesti. Ajuripuoli onkin tämän jälkeen kunnossa ja laitetiedoston /dev/ttyUSB0 tulisi ilmestyä näkyviin, kun kytket modeemin USB-porttiin. Tässä saattaa tosin olla jopa noin minuutin viive.

SIM-kortin PIN-koodin antaminen tuottaa ongelmia, joten koodin kysely on poistettava käytöstä. Käytä SIM-korttia normaalissa kännykässä ja käy turva-asetuksista poistamassa PIN-koodin kysely käytöstä. Sammuta puhelin ja laita SIM-kortti takaisin modeemiin ja kytke se uudelleen koneeseen. Alkuun laitteessa pitäisi välähtää vihreä ledi kahdesti kolmen sekunnin välein. Hetken päästä - jos kaikki meni hyvin - pitäisi laitteen päästä verkkoon, jolloin ledi välähtää vain kerran per sykli. Jos PIN-koodin kysely on käytössä, jää laite pysyvästi tuohon tuplavilkkumoodiin.

Helpoin tapa muodostaa PPP-yhteys modeemilla on käyttää wvdial-nimistä ohjelmaa. Asenna se oman jakelusi paketinhallinnasta ja tee sille seuraavanlainen asetustiedosto /etc/wvdial.conf:

[Dialer defaults]
Modem = /dev/ttyUSB0
Init = AT+CGDCONT=1,"IP","internet.saunalahti"
Phone = *99***1#
Stupid Mode = 1
Username = " "
Password = " "

Stupid mode saa wvdialin käynnistämään pppd:n heti, kun yhteys on muodostettu, ilman sisäänkirjautumista. Käyttäjänimeä (username) ja salasanaa (Password) ei käytetä, mutta wvdial vaatii silti niiden määrittelyn. Init-komento täytyy ajaa vain kerran, sillä tehty asetus tallentuu pysyvästi modeemiin (tai SIM-kortille tai jopa operaattoripuolelle, ei tietoa, voidaan toki muuttaa myöhemmin). Voit siis poistaa tuon Init-rivin asetustiedostosta heti ensimmäisen yhteydenoton jälkeen, silloin asetus on jo oletuksena oikein (joskaan ei uusiksi asettamisesta joka kerta varsinaisesti haittaakaan ole). Jos käytät muuta palveluntarjoajaa, vaihda kohdan internet.saunalahti tilalle palveluntarjoajasi APN (access point).

Nyt voit ottaa yhteyden komennolla wvdial. Jos kaikki meni hyvin, loistaa modeemin ledi yhtäjaksoisesti ja yhteydet toimivat. Jos modeemilta tuli viesti CONNECT, mutta pppd antaa vain virhekoodin, puuttuu ytimestä luultavasti PPP-tuki kokonaan tai PPP:n tuki async-sarjaporteille. Yleensä nuo löytyvät moduuleina jakeluiden oletusytimistä, mutta itse kääntäessä ne jäävät usein pois.

Laitteen tilasta kertova LED

  • Vihreä tuplavilkku: modeemi ei ole vielä saanut yhteyttä verkkoon
  • Yksittäinen vilkku: modeemi on verkossa, mutta tietokone ei käytä nettiyhteyttä
  • Jatkuvasti päällä: nettiyhteys käytössä

Lisäksi väri kertoo nopeuden:

  • Vihreä: GPRS/EDGE (max. 236 kbit/s, ping 600 ms tai enemmän, en tosin testannut tällä modeemilla)
  • Sininen: WCDMA (nk. normaali 3G, max. 384 kbit/s, ping 300+ ms)
  • Syaani: HSDPA (nopea 3G, max. 7.2 Mbit/s imurointi ja 2 Mbit/s lähetys, ping ~100 ms)

Laite näyttäisi automaattisesti vaihtavan WCDMA:lle aina, kun dataa ei liiku lainkaan. Jo hyvinkin pieni dataliikenne kuitenkin aiheuttaa vaihdoksen HSDPA-tilaan ja valitettavasti tilan vaihdosta aiheutuu lyhyt pätkäisy. Kuitenkin jo pingin jättäminen taustalle pyörimään riittää pitämään modeemin pysyvästi HSDPA-tilassa.

Viimeistely

Ainakin liikkuvassa käytössä olisi toivottavaa, että modeemi ottaisi yhteyden automaattisesti, kun laite kytketään USB:n perään. Tämä onnistuu onneksi udevin avulla hyvin helposti. Luo tiedosto >/etc/udev/rules.d/99-wvdial.rules ja kirjoita sinne rivi

ACTION=="add", KERNEL=="ttyUSB0", RUN="/bin/sh -c wvdial&>/var/log/wvdial&"

Tämä udev-sääntö testaa (huomaa vertailuoperaattori ==) että ACTION on "add" (uusi laite lisätty) ja että ytimen laitteesta käyttämä nimi on "ttyUSB0". Tällöin asetetaan (huomaa sijoitusoperaattori =) ajettavaksi ohjelmaksi wvdial (shellin välityksellä).

Jos koneellasi on inotify käytössä (yleensä on), huomaa udev uuden tiedoston automaattisesti. Jos ei, anna komento udevadm control --reload_rules. Modeemi pitää joka tapauksessa repiä irti ja kytkeä takaisin, jotta lisätty sääntö aktivoituu. Yhteyden katkaisu onnistuu siististi repimällä laite irti USB:stä.

Laitteen kytkemisen jälkeen valitettavasti kuluu aina tuo 60 sekuntia ennen kuin sitä voi käyttää. Näyttäisi olevan ihan modeemin oma ominaisuus, sillä lsusb:llä katsoessa se näkyy alkuun ainoastaan CD-asemana ja vasta minuutin jälkeen ilmestyvät kaksi muutakin laitetta. Ilmeisesti tällaista purkkaa tarvitaan, jotta Windows suostuisi ottamaan CD-aseman käyttöön, eikä hämääntyisi liian monimutkaisesta USB-laitteesta. Toinen ongelma on, ettei laite tunnistu, jos se on valmiiksi kytketty ennen kuin udev ehtii mukaan (esim. lämmin bootti tai suspend to RAM). Kylmässä bootissa tuo 60 sekunnin viive kuitenkin on hyödyksi, sillä udev on jo käynnissä, kun laite lopulta tulee esiin. Nämä ongelmat voisi luultavasti kiertää paremmilla udev-säännöillä, mutta en ainakaan itse osaa moisia kirjoittaa.

Puhelut ja tekstiviestit

Tulevaan puheluun voi vastata antamalla modeemille komennon ATA (esim. minicomilla), aivan kuten analogisilla modeemeilla aikoinaan, mutta en ole keksinyt miten ääntä saa ulos tai sisään - vastapuoli kuulee pelkkää hiljaisuutta. Myöskään soittaminen ei onnistu, ATD<puhelinnumero> aiheuttaa vastauksen "NO CARRIER". Tekstiviesteistä ei tule minkäänlaista merkkiä, pitääköhän niitä erityisesti kysyä tekstiviestikeskuksesta tms?

Katso myös

Aiheesta muualla