Przejdź do treści forum
eko.one.pl
OpenWrt, Linux, USB, notebooki i inne ciekawe rzeczy
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Aktywne tematy Tematy bez odpowiedzi
Opcje wyszukiwania (Strona 2 z 8)
https://www.dropbox.com/s/crzgd17kpip8joy/IMAG0495.jpg
Tu zbliżenie układu wyjścia PWREN1..4# są niepodłączone, nie ma nawet ścieżek poprowadzonych. Chyba jedynie rozwiązanie to podłączyć jakieś mosfety do tych wyjść i wpiąć się szeregowo w te białe duże bezpieczniki polimerowe.
Chyba nie ma żadnego huba w sprzedaży, który by oferował wyłączanie poszczególnych portów albo chociaż całości.
Czyli mój hub kłamie po usb ;-)
Wpadł mi w ręce Hub D-Link H4 4 portowy srebrny czyli stara wersja. W tego co wyczytałem na forum to większa wersja 7-portowa obsługiwała wyłączenie poszczególnych portów.
Ściągnąłem hub-ctrl z http://ecco.selfip.net/test/
To co mi pokazuje.
root@dwa_modemy:/# ./hub-ctrl -v
Hub #0 at 001:004
INFO: individual power switching.
Hub Port Status:
Port 1: 0000.0100 power
Port 2: 0000.0100 power
Port 3: 0000.0100 power
Port 4: 0000.0503 highspeed power enable connect
Hub #1 at 001:001
INFO: individual power switching.
WARN: Port indicators are NOT supported.
Hub Port Status:
Port 1: 0000.0503 highspeed power enable connect
Z tego co rozumiem ten hub będzie obsługiwał wyłączanie/włączanie portów. Czy informacja z hub-ctrl jest pewna?
Wywołuję polecenie.
./hub-ctrl -P 1 -p 0
ale zasilanie portu 1 nie wyłącza się.
Skąd hub-ctrl co dany hub obsługuje?
EDIT
Rozebrałem huba i chyba trochę mu w środku brakuje, żeby włączał lub wyłączał
https://www.dropbox.com/s/4ii5pnwtzmtzku5/IMAG0488.jpg
na razie znalazłem komendę
która wydaje się restartuje modem ale do testów wyciągnąłem go z routera więc na sprawdzenie muszę czekać do następnej zwiechy.
Wcześniej, używałem samego modemu Huawei e173u-2 do połączenia aero2 i jak modem nie mógł wznowić połączenia to po prostu wyłączałem zasilania USB. Teraz jak dorzuciłem drugi modem USB na HUBie to nie mam takiej możliwości. Czy jest jakaś sprawdzona komenda AT, którą mógłbym zrobić coś podobnego jak wyłączenie zasilania.
Drugie pytanie to jak to najlepiej wysłać. Widzę, że jest takie narzędzie jak chat ale chyba zwyczajnie
echo "AT^RESET" > /dev/ttyUSB0
Powinno zadziałać?
Akurat AT^RESET nie działa ale może jest jakaś inna komenda?
Tak teraz wygląda /etc/hotplug.d/tty/30-3g
i działa
#!/bin/sh
. /lib/functions.sh
. /lib/netifd/netifd-proto.sh
find_3g_iface() {
local cfg="$1"
local tty="$2"
local proto
config_get proto "$cfg" proto
[ "$proto" = 3g ] || return 0
# bypass state vars here because 00-netstate could clobber .device
local dev1=$(uci_get network "$cfg" device)
echo "$dev1" >> /tmp/test1.txt
local dev=$(readlink $dev1)
echo "$dev" >> /tmp/test1.txt
if [ "${dev##*/}" = "${tty##*/}" ]; then
if [ "$ACTION" = add ]; then
available=1
else
available=0
fi
#echo "available $available" >> /tmp/test.txt
proto_set_available "$cfg" $available
fi
}
case "$DEVICENAME" in
tty*)
[ -e "/dev/$DEVICENAME" ] || [ "$ACTION" = remove ] || exit 0
echo "devname $DEVICENAME" >> /tmp/test.txt
config_load network
config_foreach find_3g_iface interface "/dev/$DEVICENAME"
;;
esac
czy może masz na myśli, że dodać to
proto_set_avaiable "$cfg" 1
skrypcie do aliasów portu szeregowego,
/etc/hotplug.d/usb/10-serial2
to sprawdziłem
/etc/hotplug.d/tty/30-3g
To się uruchamia tylko dla "prawdziwe" tty widać, że na początku dla wszystkich a później jak wkładam ponownie modem to na nowo tylko dla ttyUSBx
Chyba, żeby jakoś sprawdzać
tty
ttyS1
ttyS2
ttyS3
ttyS4
ttyS5
ttyS6
ttyS7
ttyS8
ttyS9
ttyS10
ttyS11
ttyS12
ttyS13
ttyS14
ttyS15
ttyS0
ttyUSB0
ttyUSB1
ttyUSB2
ttyUSB3
ttyUSB4
ttyUSB5
ttyUSB3
ttyUSB4
ttyUSB5
Czyli tak jak mówisz
zmieniłem
local dev1=$(uci_get network "$cfg" device)
local dev=$(readlink $dev1)
Tylko czy jest jakaś komenda, która będzie mi zwracać prawidłową ścieżkę jakbym zrezygnował z linków?
Dodatkowo zastanawiam się czy nie dodać w hotplug.d/usb/10-serial
usuwania /dev/modem.... po tym jak urządzenie zostanie usunięte?
No właśnie ifup wan też nie działa tylko restart konfiguracji sieciowej.
Sprawdziłem też ten skrypt /etc/hotplug.d/tty/30-3g tak na wpół rozumiem co on robi
i widzę, że jak mam ustawione /dev/ttyUSB0 w konfiguracji sieci to się uruchamia i coś tam włącza.
Uruchamia się dla każdego /dev/tty ale już nie dla aliasów i jeśli ttyxxx zgadza się z tym co w /etc/config/network to coś tam ustawia.
Przystosowałem sobie skrypt z http://eko.one.pl/?p=openwrt-linkidoportowszeregowych
Dla modemów E173u-2 i Sierra Wireless 307. Na Huawei mam internet przez Aero2 a na drugim wysyłanie sms-ów.
Skrypt działa w miarę dobrze widzę w katalogu /dev/ odpowiednie aliasy.
lrwxrwxrwx 1 root root 12 Feb 13 20:24 modem_e172_0 -> /dev/ttyUSB0
lrwxrwxrwx 1 root root 12 Feb 13 20:24 modem_e172_1 -> /dev/ttyUSB1
lrwxrwxrwx 1 root root 12 Feb 13 20:24 modem_e172_2 -> /dev/ttyUSB2
...
crw-rw-rw- 1 root root 188, 0 Feb 13 20:24 ttyUSB0
crw-rw-rw- 1 root root 188, 1 Feb 13 20:24 ttyUSB1
crw-rw-rw- 1 root root 188, 2 Feb 13 20:24 ttyUSB2
jednak Gargoyle nie próbuje nawiązać połączenia mimo, że mam ustawiony odpowiedni /dev/ w konfiguracji. Nie ma nic w logach o próbie połączenie. Dopiero jeśli wywołam restart sieci (/etc/init.d/network restart) to połączenie jest nawiązywane.
Tak samo nie chce się połączyć nawet po restarcie urządzenia, muszę "ręcznie" restartować.
uci show network.wan
network.wan=interface
network.wan.auto=1
network.wan.proto=3g
network.wan.device=/dev/modem_e172_0
network.wan.apn=darmowy
network.wan.service=umts
network.wan.mobile_isp=Polska - Aero2
Może /etc/hotplug.d/tty/30-3g trzeba jeszcze zmodyfikować?
EDIT
Na razie poradziłem sobie dodając /etc/init.d/network restart do skryptu tworzącego aliasy.
Chyba mam tylko automatyczne nawiązywanie połączenia 3g i to pewnie się gryzie. W 3ginfo ma ustawiony inny port wlasnie jakiś alias.
W config/network mam ustawiony alias ale może jest tak, że jak on jest dostępny to od razu jest próba połączenia i blokuje port dla twojego skryptu.
Mam jeszcze pytanie to te liczby na początku nazwy pliku 90- czy one maja jakieś znaczenie?
Rzeczywiście jeśli wyłączę połączenie WAN to skrypt działa. Jednak jeśli ustawię połączenie 3g to niestety nie działa.
cat /tmp/modem_aliases
ATQ0V1E1
COMMAND NOT SUPPORT
V1E
OK
ATQ0V1E1
OK
AT+CRSM=176,12258,0,0,10
+CRSM: 144,0,"988471110000513686F6"
OK
w dev mam
tylko
/dev/sim8948171100001563686i0
/dev/ttyUSB0
/dev/ttyUSB1
/dev/ttyUSB2
cat /tmp/modem_aliases
AT+CSQ
COMMAND NOT SUPPORT
AT&F
OK
ATI
Manufacturer: huawei
Model: E173
Revision: 11.126.16.05.264
IMEI: 869878005215743
+GCAP: +CGSM,+DS,+ES
OK
AT+CSQ
+CSQ: 18,99
OK
AT&F
OK
ATI
Manufacturer: huawei
Model: E173
Revision: 11.126.16.05.264
IMEI: 869878005215743
+GCAP: +CGSM,+DS,+ES
OK
AT+CSQ
+CSQ: 18,99
OK
AT&F
OK
ATI
Manufacturer: huawei
Model: E173
Revision: 11.126.16.05.264
IMEI: 869878005215743
+GCAP: +CGSM,+DS,+ES
OK
AT+CSQ
+CSQ: 18,99
OK
AT&F
OK
ATI
Manufacturer: huawei
Model: E173
Revision: 11.126.16.05.264
IMEI: 869878005215743
+GCAP: +CGSM,+DS,+ES
OK
AT+CSQ
+CSQ: 19,99
OK
AT&F
OK
Wydaje mi się też, że przez ten skrypt mam tylko /dev/ttyUSB0 bo jeśli go usunę to pojawiają się wszystkie tty.
Modem przełączyłem też w tryb tylko modemu więc modswitch nie musi nic robić.
to jest tak wersja na githubie?
Teraz nie mam żadnych aliasów w /dev/
Używam MR3420 z powiększonym flashem i najnowszego Gargoyle.
Mam modem Huawei e173 i skrypt trochę słabo działa.
w /dev/ mam coś takiego
lrwxrwxrwx 1 root root 12 Feb 11 23:30 mdm+++ -> /dev/ttyUSB2
lrwxrwxrwx 1 root root 12 Feb 11 23:30 sim++ -> /dev/ttyUSB2
crw-rw-rw- 1 root root 188, 0 Jan 1 1970 ttyUSB0
crw-rw-rw- 1 root root 188, 1 Jan 1 1970 ttyUSB1
crw-rw-rw- 1 root root 188, 2 Jan 1 1970 ttyUSB2
Dzięki, to pomogło. Wcześniej chyba też tego próbowałem ale nie zresetowałem routera i nic mi nie odpowiedział DNS.
Ręcznie nic nie robiłem. Ale czy nie powinno to działać automatyczne?
Teraz spróbowałem dodać w sekcji LAN adres DNS providera ale to nic nie pomogło. Nie mam też zaznaczonego wymuszania routera jako dns-a.
Mój provider internetu udostępnia skrzynki pocztowe na serwerze o IP 10.0.0.14 jeśli spytam się jego serwera DNS to dostaję takie IP
nslookup poczta.lokalna 10.0.0.12
Server: 10.0.0.12
Address 1: 10.0.0.12 dns1.lokalna
Name: poczta.lokalna
Address 1: 10.0.0.14
Niestety serwer DNS na OpenWrt jakoś nie chce mi zwrócić adresu IP. Jeśli wpiszę np.
ping poczta.lokalna
ping: bad address 'poczta.lokalna'
To nic nie dostanę 
Czy musiałbym coś pozmieniać w Dnsmasq?
Sprawdziłeś już może jak działa?
Ja mam takiego niby aktywnego huba, do którego można podłączyć zasilacz.
http://www.aliexpress.com/item/Free-Shi … 16919.html
O dziwo jeśli wyłączę na chwilę zasilanie USB idące od routera to modem wyłącza się na chwilę mimo, że jest też podłączony zasilacz. Zastanawiam się dlaczego tak się dzieje ale w sumie to całkiem pożądane zachowanie bo router się resetuje.
Ja ;-)
Na razie sobie radziłem, używając tutoriala od extroota ale za każdym wydaniem to trochę roboty, żeby poustawiać.
Cezary masz jeszcze tego hub-a? Mógłbym sprawdzić czy działa w nim wyłączanie zasilania do portów. Chciałbym resetować modem 3g.
Zauważyłem, że pojawiły się obrazy dla zmodyfikowanych MR3420v2 z 16MB flashem. Czy mógłbym zgłosić prośbę o takie "większe" obrazy dla MR-13u?
Ewidentnie jest na odwrót. Może ten przycisk jest tak zrobiony, że zwiera do masy a normalnie jest podciągnięty przez Vcc?
Natomiast reset, ten wystający przycisk z tyłu działa poprawnie.
logread -f
Dec 9 17:18:27 myjnia1 user.notice root: released
Dec 9 17:18:27 myjnia1 user.notice root: wps
Dec 9 17:18:28 myjnia1 user.notice root: pressed
Dec 9 17:18:28 myjnia1 user.notice root: wps
Dec 9 17:18:35 myjnia1 user.notice root: pressed
Dec 9 17:18:35 myjnia1 user.notice root: reset
Dec 9 17:18:36 myjnia1 user.notice root: released
Dec 9 17:18:36 myjnia1 user.notice root: reset
Teraz czy da się to jakoś łatwo zmienić bez kompilacji?
Tak bym chciał ale się tak nie dzieje. Akcja wywołuje się od razu po wciśnięciu przycisku poza tym zobacz, że działa to na odwrót. Jeśli wcisnę wps to wywołuje się to od released. Tak chyba nie powinno być.
Spróbuje jeszcze raz od początku wgrać system na czysto może coś po drodze pomieszałem.
uci show system
system.@system[0]=system
system.@system[0].timezone=CET-1CEST,M3.5.0/2,M10.5.0/3
system.@system[0].zonename=Europe/Warsaw
system.@system[0].cronloglevel=9
system.@system[0].hostname=myjnia1
system.ntp=timeserver
system.ntp.server=0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org
system.ntp.enable_server=0
system.reboot_button=button
system.reboot_button.action=released
system.reboot_button.handler=logger reboot ; /usr/lib/gargoyle/reboot.sh ;
system.reboot_button.min=3
system.reboot_button.max=10
system.reboot_button.button=reset
system.reset_button=button
system.reset_button.button=reset
system.reset_button.action=released
system.reset_button.handler=logger restore defaults ; /sbin/firstboot ; reboot ;
system.reset_button.min=11
system.reset_button.max=90
system.awaria_start=button
system.awaria_start.button=wps
system.awaria_start.action=released
system.awaria_start.handler=/etc/awarie/awaria start
system.awaria_start.min=10
system.awaria_start.max=20
system.awaria_stop=button
system.awaria_stop.button=wps
system.awaria_stop.action=pressed
system.awaria_stop.handler=/etc/awarie/awaria end
system.led_wan=led
system.led_wan.name=WAN
system.led_wan.sysfs=tp-link:green:wan
system.led_wan.trigger=netdev
system.led_wan.dev=eth0
system.led_wan.mode=link tx rx
system.led_lan1=led
system.led_lan1.name=LAN1
system.led_lan1.sysfs=tp-link:green:lan1
system.led_lan1.trigger=switch0
system.led_lan1.port_mask=0x04
system.led_lan2=led
system.led_lan2.name=LAN2
system.led_lan2.sysfs=tp-link:green:lan2
system.led_lan2.trigger=switch0
system.led_lan2.port_mask=0x08
system.led_lan3=led
system.led_lan3.name=LAN3
system.led_lan3.sysfs=tp-link:green:lan3
system.led_lan3.trigger=switch0
system.led_lan3.port_mask=0x10
system.led_lan4=led
system.led_lan4.name=LAN4
system.led_lan4.sysfs=tp-link:green:lan4
system.led_lan4.trigger=switch0
system.led_lan4.port_mask=0x02
system.led_wlan=led
system.led_wlan.name=WLAN
system.led_wlan.sysfs=tp-link:green:wlan
system.led_wlan.trigger=phy0tpt
system.led_usb=led
system.led_usb.name=USB
system.led_usb.sysfs=tp-link:green:3g
system.led_usb.trigger=usbdev
system.led_usb.dev=1-1
system.led_usb.interval=50
W /etc/hotplug.d/button/ mam tylko 00-button oraz jeszszcze jeden skrypt ale on mam na początku exit 0 więc nic się z niego nie wykonuje
Wydaje mi się, że tak. Zaczynałem od tego.
http://ecco.selfip.net/gargoyle-pl/atti … pgrade.bin
Później zainstalowałem extroota na karcie modemu E173 zgodnie z opisem na forum. Działa mi np. OpenVpn wiec chyba dobrze instalowałem pluginy od Ciebie.
| Gargoyle PL 1.5.11.5 (90efdde) |
| OpenWrt Attitude Adjustment 12.09.1 (r38863) |
| Build time: 2013-12-07 08:37 CET |
| |
| Cezary Jackiewicz (obsy), http://eko.one.pl |
| |
----------------------------------------------------------------
| Machine: TP-Link TL-MR3420 v2
/etc/hotplug.d/button/00-button
. /etc/functions.sh
do_button () {
local button
local action
local handler
local min
local max
config_get button $1 button
config_get action $1 action
config_get handler $1 handler
config_get min $1 min
config_get max $1 max
[ "$ACTION" = "$action" -a "$BUTTON" = "$button" -a -n "$handler" ] && {
[ -z "$min" -o -z "$max" ] && eval $handler
[ -n "$min" -a -n "$max" ] && {
[ $min -le $SEEN ] && eval $handler
}
}
}
config_load system
config_foreach do_button button
Znalezione posty: 26 do 50 z 192