Tikslas – turėti internetą laukuose.
pirmą kartą įjungus USB GSM modemą š USB portą ‘lsusb’ komanda grąžina:
root@raspberrypi:~# lsusb
Bus 001 Device 006: ID 12d1:14fe Huawei Technologies Co., Ltd.
po vieno perinstaliavimo radau tokią reikšmę:
Bus 001 Device 006: ID 12d1:1c05 Huawei Technologies Co., Ltd. E173s 3G broadband stick (modem on)
Čia įrenginio id 12d1:14fe atpažįstama kaip diskinis kaupiklis. Pervesime į modemo režimą:
Įjungus įrenginį, matome, kad sistema detektuoja:
root@raspberrypi:/home/pi# lsusb
Bus 001 Device 006: ID 046d:c06c Logitech, Inc. Optical Mouse Bus 001 Device 005: ID 12d1:1506 Huawei Technologies Co., Ltd. E398 LTE/UMTS/GSM Modem/Networkcard Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. LAN9500 Ethernet 10/100 Adapter / SMSC9512/9514 Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Kaip Huawei modemą.
ifconfig išveda naują tinklo sąsają:
wwan0 Link encap:Ethernet HWaddr 58:2c:80:13:92:63
inet addr:169.254.169.80 Bcast:169.254.255.255 Mask:255.255.0.0
inet6 addr: fe80::3d2:b0ae:25df:f0c5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:69 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:13408 (13.0 KiB)
Ši sąsaja atsiranda po minkšto perkrovimo komanda ‘reboot’.
sujungimas įvyksta komanda ‘wvdial 3gconnect &’. Čia naudojamas konfigūracinis failas: /etc/wvdial.conf:
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2
Modem Type = Analog Modem
Baud = 9600
New PPPD = yes
Modem = /dev/ttyUSB0
ISDN = 0
[Dialer 3gconnect]
Init1 = ATZ
Init2 = AT+CPIN=0203
Init3 = AT+CGDCONT=1,”IP”,”Tele2″
;Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
;Init3 = AT+CGDCONT=1,”IP”,”internet”
Stupid Mode = 1
Modem Type = Analog Modem
ISDN = 0
Phone = *99#
Modem = /dev/gsmmodem
Username = { }
Password = { }
Baud = 460800
Gateway pakeitimas į USB stick:
route del default
route add default dev ppp0
Kaip ir veikia, tačiau po 20-30 ping operacijų modemas atsijungia ir sistema pakimba.
testuojam. Visų pirma modemą. Jame yra Omnitel Windows OS programinė įranga. Suinstaliuojam į NB, paleidžiam ping – viskas veikia. Bandau suinstaliuoti 3g modemą į kitą kompą, tik šį kartą su LINUX OS. Įdomu, kad pirmą kartą įdėjus modemą jį detektavo kaip 12D1:14xx. po perkrovimo to neberadau, liko 12d1:1506 – modemo režimas. Vadinasi nebereikia modeswitch programos?
Taip, nebereikia. Pakanka „wvdial 3gconnect &” komandinės eilutės. O pingas sustodavo dėl USB įrenginio atsijungimo dėl nepakankamo USB maitinimo. Pajungus atskirais 4 laidais USB įrenginį, kuriam maitinimas paduodamas iš maitinimo šaltinio gautas 18 val ištisas ping’avimas 18 val. bėgyje. Viso supinginta 57000 paketų. Šią komandą įdedu į /etc/rc.local failą su „sleep 100” su 100 sekundžių delsa.
Visgi dėl atsitiktinio modemo atsijungimo sukurkime crontab komandą, kuri kas 15min. pabandys atnaujinti ryšį. Jeigu 3g ryšys bus veikiantis, tai tiesiog gausime pranešimą, kad USBmodemas yra užimtas. Taigi komanda
crontab -e
įterpkime eilutę:
15 0 * * * /etc/host2mysql >>/var/log/crontab.log
kuri suveikia kas 15 min..
* * * * * komanda vykdymui
| | | | +—– savaitės diena (0 – 6) (Sekmadienis=0)
| | | +——- mėnuo (1 – 12)
| | +——— mėnesio diena (1 – 31)
| +———– valanda (0 – 23)
+————- minutė (0 – 59)
* reiškia bet kurį
Crontabo darbo logą įrašysime į failą:
Gar vienas pastebėjimas: po maždaug 8 val. darbo, modemas tarsi atsijungia: lsusb mato modemą, ls /dev/gsmmodem irgi yra. Crontab.log faile įdomybės: gaunama klaida inicializuojant SIM kortelę: Sending AT+CPIN=xxxx (čia xxxx PIN’as) gaunama klaida +CME ERROR: 3 / Bad Init String.Ši klaida reiškia ‘Operation not allowed’. Klaidos pavyko išvengti /etc/wvdial.conf faile užkomentavus Init1 eilutę ir PIN operaciją iškėlus į atskirą sekciją (TY: pschyska):
[Dialer pin]
Init3 = AT+CMEE=1
Init4 = AT+CPIN=xxxx
[Dialer checkpin]
Init3 = AT+CPIN?
Ką daryti, jei 3G modemas uždarytas metalinėje ekranuotoje dėžutėje? E3131s-2 modelis turi išorinės antenos pajungimą. Čia naudojama FME tipo jungtis. Kabelio perėjimo pavyzdys parodytas tinklapyje http://www.dipolnet.com/fme_plug_to_crc9_smb_cable_ts5_E83200.htm
Ne FME o CRC9 jungtis https://www.lemona.lt/?page=item&i_id=176481 – 4.95 €
Dirba stebėtinai gerai