1

(15 odpowiedzi, napisanych Oprogramowanie)

kamiKAC napisał/a:

Udało mi się ustalić, że w jądrze 2.6 występuje pakiet kmod-usb-atm, którego nie ma w 2.4. Być może tu jest problem.

W wersji 2.4 rzeczywiście nie ma modułu pod nazwą kmod-usb-atm, ale jest to po prostu moduł kmod-atm, który z resztą skompilowałem i udostępniłem.

W mailu pisałeś do mnie:

kamiKAC napisał/a:

Ściągnąłem SDK oraz svn do kamikaze 8.09, jednak na razie nie udało mi się nawet zkompilować paczek, które zamieściłeś w artykule.

Paczki, które udostępniam, są w wersji binarnej, a źródła do nich masz w repo SVN, tyle, żeby je uzyskać, trzeba było pogrzebać trochę w ustawieniach (nie pamiętam już jakich).

Najwięcej problemów sprawiło mi skompilowanie modem_run, bo gdy kompilowałem je w środowisku (nazwijmy to) OpenWRT, na docelowej maszynie nie mógł za chiny ludowe dostać deskryptora do urządzenia, tłumacząc, że urządzenie jest zajęte. Gdy kompilowałem ten program z tymi samymi parametrami lecz lekko po za tym środowiskiem, problemu tego nie było i do dziś nie wiem co było tego powodem. Zanim do tego doszedłem (tzn. do momentu używalności modem_run), minęły z 1-2 tygodnie...

2

(15 odpowiedzi, napisanych Oprogramowanie)

leslie666 napisał/a:

wielkie dzięki za udostępnienie pakietów.
na asusie wl-500gP z netią wszystko działa bez problemu:)

No tak wink Z tego co wiem Asus WL-500W to jest WL-500gP z nowszą radiową kartą sieciową - w standardzie N smile

Pozdrawiam

3

(15 odpowiedzi, napisanych Oprogramowanie)

frutis napisał/a:

[...] ale niestety połączenie to trwa zaledwie kilka sekund. Po czy router zawiesza się.

Może związane to jest z próbą przeładowania skryptu odpowiedzialnego za konfigurację w sieci. W tym celu w pliku '/etc/hotplug.d/usb/20-usb-speedtouch' należy zamienić 'RELOAD_NETWORK=1' na 'RELOAD_NETWORK=0' oraz ponownie uruchomić router.

W ten sposób utraci się możliwość automatycznej próby połączenia z internetem przy ponownym uruchamianiu routera i podłączaniu modemu, ale trzeba by zdiagnozować problem zaczynając od tego.

Potem po podłączeniu modemu, gdy ten się zsynchronizuje, trzeba by spróbować ręcznie ustanowić połączenie w panelu admina 'administration -> network -> interfaces'. Proszę dać znać czy coś to zmieniło smile (dobrym rozwiązaniem będzie również czytanie logów przy użyciu polecenia 'logread -f' i weryfikować co następuje i w którym momencie router się wiesza).

frutis napisał/a:

Podczas instalacji musiałem użyć innych modułów do obsługi usb (kmod-usb-ohci) ze względu na inny kontroler.
Czy to jakiś znany błąd w modułach do obsługi usb na tym routerze?

Szczerze to nie wiem, wiem tyle, że różne routery mogą mieć inne interfejsy USB, a przez to wymagają innej paczki z modułem do USB. Ja poradniczek napisałem pod swój router, ale zawsze można go zaktualizować smile

frutis napisał/a:

Instalacja paczki speedtouch-usb-firmware nie jest możliwa na WL-520GU ze względu ograniczoną ilość wolnego miejsca (4MB flash).

Musiałbym poszukać rozwiązania podobnego do tego z Debiana. Tam można utworzyć tzw. paczki wirtualne, które nie są rzeczywistymi paczkami, a są określone do spełnienia pewnych zależności. Wtedy to utworzyło by się osobne paczki dla poszczególnych wersji firmware'u smile

Pozdrawiam i czekam na odpowiedź/wyniki.

Witam

Ten krótki przewodnik opisuje jak zmusić OpenWrt Kamikaze w wersji 8.09.1 na Kernelu serii 2.4 do obsługi modemu ADSL SpeedTouch 330 firmy Alcatel/Thomson.

Modem ten jest obsługiwany w OpenWrt na Kernelu z serii 2.6, jednak z powodu braku sterowników dla karty WiFi tkwiącej w routerze Asus WL-500w zostałem zmuszony na wprowadzenie takiej funkcjonalności do starszego Kernela.

Efektem moich prac postanowiam podzielić się ze społecznością. Dołożyłem starań, aby wdrożenie nowej funkcjonalności było możliwie najłatwiejsze - oprócz skompilowania odpowiednich modułów i programów utworzyłem do nich paczki oraz napisałem skrypt, ale o tym później.

Ze względu na brak czasu z mojej strony, opis będzie przedstawiał co należy zrobić aby uzyskać nową funkcjonalność, a nie jak to zrobić. Jeżeli jesteś chętny trochę rozpisać się na ten temat, nie krępuj się smile

Zabieramy się więc do roboty smile

Ze strony http://downloads.openwrt.org/kamikaze/8 … /packages/ należy pobrać oraz zainstalować następujące paczki:

kmod-usb-core
kmod-usb-uhci
kmod-usb-usb2
linux-atm

Z mojej strony, tj. http://likemandrake.pl.pl/openwrt/packages/ należy pobrać oraz zainstalować następujące paczki:

kmod-atm
kmod-pppoa
ppp-mod-pppoa
kmod-usb-speedtouch
speedtouch-usb-firmware
speedtouch

Istnieje również możliwość dodania mojego repozytorium do konfiguracji OpenWrt, co polecam zrobić, ze względu na możliwość pojawienia się aktualizacji w/w paczek. Możliwe, że pojawią się kiedyś jakieś inne, nowe paczki.

W tym celu do pliku /etc/opkg.conf należy dodać następującą linijkę (potem oczywiście zaktualizować repo poleceniem 'opkg update'):

src/gz likemandrake http://likemandrake.pl.pl/openwrt/packages

Na tym etapie to już koniec wprowadzania obsługi modemu smile Musimy jeszcze ponownie uruchomić routerek (polecenie 'reboot' lub w panelu wybrać 'System -> Reboot').

Należy zwrócić uwagę, czy po ponownym uruchomieniu dioda modemu zacznie mrugać przez jakiś czas, potem przestanie - co znaczyło by, że modem zsynchronizował się z linią.

Teraz zajmiemy się konfiguracją nowego połączenia. W tym celu w panelu administracyjnym przechodzimy do zakładki 'administration' i z menu wybieramy 'Network -> Interfaces -> WAN'.

  • Wybieramy 'Protocol' : 'PPPoA'

  • W 'Interface' wybieramy 'custom' i wpisujemy 'ppp0'

  • Pozycja 'Bridge interfaces' i 'Enable IPv6 on PPP link' powinna być odznaczona

  • Wpisujemy nazwę użytkownika i hasło (wiadomo)

  • Pozostawiamy zaznaczone pozycje 'Replace default route' i 'Use peer DNS'

Teraz w zależności od usługi oferowanej przez operatora musimy uzupełnić pola 'PPPoA Encapsulation', 'VPI' i 'VCI'. Dla usług Netii świadczonych na liniach TP są to odpowiednio 'LLC', '0' i '35'.

Teraz należałoby zapisać konfigurację i w zasadzie mieć nadzieję, że modem się połączy z internetem smile

Na zakończenie coś dla osób zainteresowanych rozwojem aplikacji smile

W paczce 'speedtouch' znajduje się plik '/etc/hotplug.d/usb/20-usb-speedtouch'. Jest to skrypt hotplug, który ma za zadanie automatyczne uruchomienie programu modem_run z odpowiednimi parametrami w celu wgrania firmware do modemu.

Aby zapewnić automatyczne połaczenie modemu z internetem po ponownym uruchomieniu routera (lub podłączeniu go w czasie pracy routera), musiałem dopisać pewien kawałek kodu, który metodą wykrywania ilości uruchomionych jednocześnie procesów modem_run, oczekuje do momentu, gdy będzie uruchomiony tylko jeden proces. W tym momencie następuje wywołanie skryptu '/etc/init.d/network' z parametrem 'restart' w celu wykrycia nowego interfejsu, jakim będzie prawdopodobnie 'ppp0'.

Może ktoś znajdzie alternatywne, lepsze rozwiązania i zechce je wdrożyć do mojej paczki smile

Pozdrawiam i życzę bezproblemowej pracy smile