Temat: E3131 HILINK z MR3020 - ulatwienia
Witam serdecznie grono kolegow, uzytkownikow modemu E3131 HILINK w opcji z routrem TL MR3020.
Jest to moje pierwsze wejscie na forum po namowie przez kol. Cezarego i chce sie podzielic skryptem umozliwiajacym automatyczne wylaczenie i wlaczenie napiecia 5V na modem E3131 HILINK przy braku uzytkownikow zalogowanych do MR3020.
Rozwiazanie pozwala na zwolnienie zajetosci pasma GSM w moim przypadku to AERO2, kiedy nie korzystam z internetu.
Router z modemem zainstalowany jest na strychu pod kalenica, aby miec lepszy sygnal z BTS-a i nie tracic sygnalu wcz na polaczeniu modemu dlugim kablem z antena. Modem z routrem polaczony jest 0.5mb kabelkiem USB a moj komputer laczy sie z MR3020 po WIFI.
W TL MR 3020 wgrany jest soft Gargoyle:1.5.11.7, pozwala na wieksza moc WIFI - max 18 dB - sila sygnalu: znakomita !!
Sprawdzanie aktywnosci adresow IP odbywa sie co 1 minute.
Prace skryptu bardzo latwo sprawdzic, ze przy braku uzytkownikow zalogowanych do MR3020 po 1 minucie przestaje swiecic dioda LED w modemie, A kiedy ktos sie zaloguje to po 1 minucie zaswieci dioda LED i modem sie polaczy.
Stan pracy modemu mozemy odczytywac za pomoca skryptu w drugim moim postcie tego tematu.
Skrypt nalezy umiescic w katalogu
#/bin/5v_modem_usb1.sh
nalezy tez dodac linie w CRONTAB aby co 1 minute sie uruchamial
*/1 * * * * /bin/5v_modem_usb1.sh
Nazwa pliku ze skryptem 5v_modem_usb1.sh
Po zapisaniu skryptu nalezy mu nadac status uruchamiania
/bin#chmod 755 5v_modem_usb1.
#!/bin/sh
#
#
# ON / OFF modemu typu E3131 HILINK- przy braku aktywnych
# IP z puli z DHCP ROUTER A TL-MR3020
#
#
# stala startowa do liczenia adresow IP w pliki z puli DHCP
z=0
# stala startowa do liczenia aktywnych adresow z puli DHCP
y=0
#
# pobiera znaki po spacji w 3 kolumne z pliku /tmp/dhcp.leases
for i in $(cut -d ' ' -f 3 /tmp/dhcp.leases);
do
# spawdza czy w pliku jest adres IP z puli DHCP i zlicza
i f [ $i > 0 ];
then
z=$((z+1))
# sprawdza pingiem czy adres IP jest aktywny
ping -q -c 1 -W 1 $i > /dev/null;
# zliczanie aktywnych adresow IP
if [ $? -eq 0 ];
then
y=$((y+1))
# konczenie petli
fi
fi
done
#
#
# sterowanie napiecem +5V na port USB - ROUTER TL MR3020
#
# sprawdzanie czy brak aktywnego adresu z DHCP MR3020
if [ $y = 0 ];
then
#
# wylaczenie napiecia na port USB
(echo 0 > /sys/class/gpio/gpio8/value)
#
# linia nizej po zdjeciu # pokazuje info o stanie pracy modemu
# (echo "modem wylaczony I Y= $y Z= $z")
# jezeli nie spelniony jest warunek powyzszy - jest min. jeden aktywny adres IP z DHCP MR3020
else
# wlaczenie napiecia na port USB
(echo 1 > /sys/class/gpio/gpio8/value)
# linia nizej po zdjeciu # pokazuje info o stanie pracy modemu
# (echo "modem wlaczony II Y=$y Z= $z")
# konczenie petli sterowania napieciem 5V
fi
#
#
# Ostatnia korekta z dnia 31.01.2014
# FUT
# koniec skryptu
#Zycze zadowolenia z pracy skryptu i prosze o uwagi i sugestie.
Prosze tez o informacje czy dziala to na innych routerach TL serii MR .
Pozdrawiam FEEDHORN