úterý 3. května 2016

Mobilní připojení Raspberry PI přes 3G

V šuplíku jsem měl jeden nepoužívaný dongle ZTE model MF667, který jsem někdy dostal od TMobile k datovému tarifu. Nabízelo se vyzkoušet, zda bude možné jej použít s Raspberry Pi. Po několika slepých uličkách jsem dospěl k řešení, které mi nyní spolehlivě zajišťuje propojení autonomní stanice s Raspberry Pi na internet.

V následujících řádkách je popsáno, jak jsem připojení řešil. Jedná se o kombinaci využití usb_modeswitch a umtskeeper.

Hned v úvodu jsem musel řešit, jak aktivovat modem. K tomu mi pomohl právě usb_modeswitch. Dongle se totiž tváří jako USB zařízení se dvěma funkcemi. Jednak jako paměťové médium, flashdisk - tam jsou uloženy drivery pro instalaci na Windows a jednak jako vlastní modem. Problémem je, že je dongle iniciálně nastavený jako flashdisk a je nutno jej přepnout do režimu modemu.

usb_modeswitch

Instalace

sudo apt-get install ppp usb-modeswitch wvdial

Kofigurace

V této části je potřeba správně nakonfigurovat pravidlo pro přepnutí na modem po restartu:

Do souboru rules:

/lib/udev/rules.d/40-usb_modeswitch.rules

najít a zaměnit odpovídající část následujícím obsahem:

ACTION=="add", SUBSYSTEM=="usb",

ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="2000",

RUN+="/usr/sbin/usb_modeswitch -v 0x19d2 -p 0x2000 -V 0x19d2

-P 0x0117 -m 0x01 -M

55534243123456702000000080000c85010101180101010101000000000000"

kde pro každý model jsou specifické parametry -P -M, které vedou ke správnému přepnutí do modem módu.

Pak nakopírovat soubor 40-usb_modeswitch.rules do /etc/udev/rules.d:

sudo cp /lib/udev/rules.d / 40-usb_modeswitch.rules /etc/udev/rules.d/40-usb_modeswitch.rules



Příkazem lsusb lze zjistit v jakém módu se dongle nachází:

lsusb


Výstup:
Bus 001 Device 4: ID 19d2:2000 ZTE WCDMA Technologies... ... HSDPA/HSUPA - to je flashdisk

nebo

Bus 001 Device 005: ID 19d2:0117 ZTE WCDMA Technologies MSM - to je modem a takto je to správně


UMTSKeeper

Popia UMTSKeeper naleznete na http://mintakaconciencia.net/squares/umtskeeper/

Instalace


Instalace se provede následující sekvencí příkazů:

mkdir umtskeeper

cd umtskeeper

wget "http://mintakaconciencia.net/squares/umtskeeper/src/umtskeeper.tar.gz"

md5sum umtskeeper.tar.gz

tar -xzvf umtskeeper.tar.gz

chmod +x sakis3g umtskeeper resetusb

Konfigurace

Součástí UMTSKeeper je sakis3g, které je asi nejlépe nakonfigurovat v interktivním módu.

sudo ./sakis3g --interactive

Spustí se následující interaktivní mód pro nastavení





Následujícím příkazem umtskeeper lze provést napojení:

sudo ./umtskeeper --sakisoperators "USBINTERFACE='0' OTHER='USBMODEM' USBMODEM='19d2:0117' SIM_PIN='xxxx' APN='CUSTOM_APN' CUSTOM_APN='internet.t-mobile.cz' APN_USER='0' APN_PASS='0'" --sakisswitches "--sudo --console" --devicename ' ZTE WCDMA Technologies MSM' --log --nat 'no'


- musíte samozřejmě správně doplnit pin místo xxxx a pokud nemáte jako operátora T-Mobile, pak také změnit CUSTOM_APN, TMobile nevyžaduje pro přístup na APN jméno a heslo, proto jsou uvedeny 0. Pokud je bude operátor vyžadovat, pak je potřeba patřičně nastavit také APN_USER a APN_PASS.


Automatické spuštění 

do /etc/rc.local přidat

/home/pi/umtskeeper/umtskeeper --sakisoperators "USBINTERFACE='0' OTHER='USBMODEM' USBMODEM='19d2:0117' SIM_PIN='xxxx' APN='CUSTOM_APN' CUSTOM_APN='internet.t-mobile.cz' APN_USER='0' APN_PASS='0'" --sakisswitches "--sudo --console" --devicename 'ZTE WCDMA Technologies MSM' --log --silent --nat 'no' &>> /var/log/umtskeeper_error.log

- opět platí, že je potřeba správně doplnit podle popisu výše, minimálně SIM_PIN.

No a tím by mělo být hotovo. Zařízení mi běží automatickém režimu 24x7, po rozpojení se připojení automaticky navazuje, spojení se spolehlivě naváže i po restartu nebo vypnutí a znovu zapnutí. Zatím testuji v kontinuálním provozu více než 9 měsíců a jeví se to jako nadprůměrně spolehlivé řešení.

Použité součásti:

Raspberry Pi Model A s instalovaným Raspbian Jessy Lite
Dongle ZTE model MF667



Žádné komentáře:

Okomentovat