Odp: Połączenie GSM w trybie NDIS
A skad konkretnie pochodzi patch dla cdc_ether? Jakos nie moge go znalezc w katalogu patches-3.3.
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
eko.one.pl → Oprogramowanie / Software → Połączenie GSM w trybie NDIS
Strony Poprzednia 1 2 3 4 5 6 … 10 Następna
Zaloguj się lub zarejestruj by napisać odpowiedź
A skad konkretnie pochodzi patch dla cdc_ether? Jakos nie moge go znalezc w katalogu patches-3.3.
Masz go zrobić. Zmodyfikowałeś źródła, zrób diff z oryginalnymi będziesz miał patcha.
Ok, już wiem jak zrobić patcha.
Ale chciałbym się jeszcze dowiedzieć skąd się wziął patch dodający obsługę cdc w modemach Huawei (dla modułu cdc_ether). W źródłach pobranych z openwrt nie mogę go znaleźć. Czy jest on jakoś dynamicznie generowany? Jeśli tak to w jaki sposób?
Jeżeli pytasz o trunka to toto już jest do kernela oddane.
Probuje dodac do kompilacji modul hw_cdc_driver i nie za bardzo mi sie to udaje.
....
Co jeszcze musze dodac/zmienic albo co zle skonfigurowalem?
Sorry, I writing english. Did you compile this driver succesfully for OpenWRT? I'v tryed to compile it (for 2.6.39.4 Kernel Version ) but got some mistackes - error: redefinition of...
Here is a part of report:
In file included from drivers/net/usb/hw_cdc_driver.c:132:0:
include/linux/unaligned/access_ok.h:7:19: error: redefinition of 'get_unaligned_le16'
include/linux/unaligned/le_struct.h:6:19: note: previous definition of 'get_unaligned_le16' was hereThe problem is here :
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26)
#include <linux/unaligned/access_ok.h>
#else
static inline u16 get_unaligned_le16(const void *p)
{
return le16_to_cpup((__le16 *)p);
}
static inline u32 get_unaligned_le32(const void *p)
{
return le32_to_cpup((__le32 *)p);
}
static inline void put_unaligned_le16(u16 val, void *p)
{
*((__le16 *)p) = cpu_to_le16(val);
}
static inline void put_unaligned_le32(u32 val, void *p)
{
*((__le32 *)p) = cpu_to_le32(val);
}
#endif I think gcc try to copy the same code from varios headers.
I've succesfully compiled thise driver under Debian (2.6.32-5-686) & for ZyXEL Keenetic (OpenWRT based - 2.6.23-rt), but no idea how to do it for another kernel ![]()
Just remove this declaration.
Myślę nad przełączeniem E372 w tryb NDIS i jestem po przeczytaniu poradników tego dotyczących (http://eko.one.pl/?p=openwrt-ndis, http://eko.one.pl/forum/viewtopic.php?id=3276&p=2 i ten wątek)
Po wydaniu komendy
# cat /proc/bus/usb/devicesbrakuje sekcji |none|
root@OpenWrt:~$ cat /proc/bus/usb/devices
T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0001 Rev= 2.06
S: Manufacturer=Linux 2.6.32.27 ohci_hcd
S: Product=Atheros AR71xx built-in OHCI controller
S: SerialNumber=ar71xx-ohci
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 2
B: Alloc= 2/800 us ( 0%), #Int= 2, #Iso= 0
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0002 Rev= 2.06
S: Manufacturer=Linux 2.6.32.27 ehci_hcd
S: Product=Atheros AR71xx built-in EHCI controller
S: SerialNumber=ar71xx-ehci
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=12d1 ProdID=1506 Rev= 0.00
S: Manufacturer=Huawei Technologies
S: Product=HUAWEI Mobile
C:* #Ifs= 7 Cfg#= 1 Atr=c0 MxPwr=500mA
A: FirstIf#= 1 IfCount= 2 Cls=02(comm.) Sub=00 Prot=00
I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=option
E: Ad=81(I) Atr=03(Int.) MxPS= 64 Ivl=2ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
I:* If#= 1 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=01 Prot=09 Driver=option
E: Ad=83(I) Atr=03(Int.) MxPS= 64 Ivl=2ms
I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=08 Driver=option
E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
I:* If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=03 Driver=option
E: Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
I:* If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=02 Driver=option
E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
I:* If#= 5 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=87(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 6 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E: Ad=06(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=88(I) Atr=02(Bulk) MxPS= 512 Ivl=0msI stąd moje wątpliwości. Mam jedno pytanie do osób korzystających z E372 - czy Huawei E372 w trybie NDIS działa już poprawnie i nadaje się do codziennego używania? Czy powinienem zrobić coś więcej niż jest to w ww poradnikach żeby to zaskoczyło? Chodzi mi o zwykłe działanie jednego modemu, bez mwana.
Pozdrawiam serdecznie
Dla niektórych modemów kod przełączający jest "inny" bo nie powstają te interfejsy odpowiadające za ndis. Zobacz pierwszy post tego wątku.
Just remove this declaration.
Przepraszamy, nie rozumiem co masz na myśli. Można odpowiedzieć w języku polskim. Delali patch dla hw_cdc_ether pod OpenWRT? Dziękuję
Skasuj tego całego if'a. Kod się skompiluje bez niego.
Skasuj tego całego if'a. Kod się skompiluje bez niego.
Dobrze. Dziękuję. A co jest jądrem OpenWRT?
Nic. Kompilowało się to zarówno dla backfire (2.6.32) jak i trunka (3.3.8 obecnie).
qmi_wwan z 3.4 przeniesiony do 3.3.8 kompiluje się bezbłędnie (do przeniesienia jest własnie qmi_wwan.c, cdc-wdm.h cdc-wdm.c i oczywiście dodanie do Makefile i Kconfig). To teraz tylko niech się znajdzie ktoś z E398 i niech sobie skompiluje i zobaczy czy działa.
Miło to słyszeć
. Ja co prawda nie mam E398 ale spróbuję sprawdzić działanie z E372. Hmm, a przejście na kernel 3.4 nie jest planowane?
Pewnie nie, jak już będzie przeskok na jedną z następnych wersji. Na razie wszystko jest sprowadzone do 3,3
Dostałem dzisiaj router TL-WR703N i postanowiłem przetestować moduł qmi_wwan który jest dostępny już w trunk'u (dzięki Cezaremu). Mnie jakoś nie wychodzi zabranie się za samodzielną kompilację ![]()
Modem Huawei E372 zostaje poprawnie rozpoznany i przełączony:
Aug 2 21:14:16 OpenWrt kern.info kernel: [ 406.380000] usb 1-1: new high-speed USB device number 3 using ehci-platform
Aug 2 21:14:17 OpenWrt kern.err kernel: [ 406.530000] cdc_wdm 1-1:1.0: Ignoring extra header, type 15, length 13
Aug 2 21:14:17 OpenWrt kern.err kernel: [ 406.540000] cdc_wdm 1-1:1.0: Ignoring extra header, type 6, length 5
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.540000] cdc_wdm 1-1:1.0: cdc-wdm0: USB WDM device
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.560000] qmi_wwan 1-1:1.1: Use "cdc_wdm" for QMI interface 1-1:1.0
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.560000] qmi_wwan 1-1:1.1: wwan0: register 'qmi_wwan' at usb-ehci-platform-1, QMI speaking wwan device, 02:50:f3:00:00:00
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.570000] option 1-1:1.2: GSM modem (1-port) converter detected
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.580000] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.580000] option 1-1:1.3: GSM modem (1-port) converter detected
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.590000] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
Aug 2 21:14:17 OpenWrt kern.info kernel: [ 406.610000] scsi1 : usb-storage 1-1:1.4
Aug 2 21:14:17 OpenWrt user.notice usb-modeswitch: 1-1:1.0: Manufacturer=Huawei_Technologies Product=HUAWEI_Mobile Serial=?
Aug 2 21:14:17 OpenWrt user.notice usb-modeswitch: 1-1:1.1: Manufacturer=Huawei_Technologies Product=HUAWEI_Mobile Serial=?
Aug 2 21:14:17 OpenWrt user.notice usb-modeswitch: 1-1:1.2: Manufacturer=Huawei_Technologies Product=HUAWEI_Mobile Serial=?
Aug 2 21:14:17 OpenWrt user.notice usb-modeswitch: 1-1:1.3: Manufacturer=Huawei_Technologies Product=HUAWEI_Mobile Serial=?
Aug 2 21:14:18 OpenWrt user.notice usb-modeswitch: 1-1:1.4: Manufacturer=Huawei_Technologies Product=HUAWEI_Mobile Serial=?
Aug 2 21:14:18 OpenWrt kern.notice kernel: [ 407.610000] scsi 1:0:0:0: Direct-Access HUAWEI TF CARD Storage 2.31 PQ: 0 ANSI: 2
Aug 2 21:14:18 OpenWrt kern.notice kernel: [ 407.620000] sd 1:0:0:0: [sda] Attached SCSI removable diskJak widać usb_modeswitch nie jest już potrzebne do przełączenia modemu.
Konfigurując interfejs sieciowy musimy dodać opcję:
option macaddr '00:01:02:03:04:05'W innym przypadku połączenie nie zostanie ustanowione. Taka sama sytuacja ma miejsce w przypadku modułu cdc_ether.
Połączenie zostaje ustanowione po wysłaniu komendy:
AT^NDISDUP=1,1,"apn"Maksymalna prędkość pobierania jaką udało mi się osiągnąć na tak zestawionym połączeniu to ok 25Mb/s.
Modem Vodafone (Huawei) K4505 który również działa w trybie NDIS nie jest obsługiwany.
Czyli działa - to dobrze. Żadnych innych zabiegów? Tak po prostu adres z dhcp itd?
A i jeszcze jedno - a jaką prędkość masz na komputerze normalnie?
Poza ustawieniem adresu mac to wszystko. Normalnie korzystam z routera WNDR3700 z modułem cdc_ether i prędkości mam podobne. Do komputera muszę dopiero podłączyć modem i sprawdzić. Ale z tego co kiedyś testowałem to też było podobnie. Korzystam z sieci Orange (HSPA+ DC).
A więc i tak więcej możesz nie uzyskać. No dobrze, to teraz E398 złap od kogoś. U mnie nikt nie ma ![]()
A więc i tak więcej możesz nie uzyskać. No dobrze, to teraz E398 złap od kogoś. U mnie nikt nie ma
Chętnie to przetestuję, ale potrzebowałbym obrazu dla WR1043ND.
Przy okazji, mój e398 od plusa przestał nawet pod win działać w trybie RAS (aplikacja CP ma opcję do wyboru) - kojarzycie co może być przyczyną?
z góry dzięki
p.
MT
A nie wyłączyłeś ras w ustawieniach modemu?
A nie wyłączyłeś ras w ustawieniach modemu?
raczej nie - chyba że przez przypadek.
a jak i gdzie się to przestawia? ewentualnie jak to można sprawdzić?
mt
AT^SETPORT=? i AT^SETPORT?
Do wykonania np. w putty czy innym hiperterminalu.
AT^SETPORT=?
Do wykonania np. w putty czy innym hiperterminalu.
sprawdziłem na innym kompie i po świeżej instalce programu od cp łączy się po RAS. Wynik setport:
AT^SETPORT=?
1:MODEM
2:PCUI
3:DIAG
4:PCSC
5:GPS
6:GPS CONTROL
7:NDIS
A:BLUE TOOTH
B:FINGER PRINT
D:MMS
E:PC VOICE
A1:CDROM
A2:SD
OK
Niestety pod Gargoyle (konf wyklikany) nie chce hulać:
Aug 7 00:19:26 Gargoyle daemon.debug pppd[14630]: Script USE_APN=internet /usr/sbin/chat -t5 -v -E -f /etc/chatscripts/3g.chat finished (pid 14735), status = 0x0
Aug 7 00:19:26 Gargoyle daemon.info pppd[14630]: Serial connection established.
Aug 7 00:19:26 Gargoyle daemon.debug pppd[14630]: using channel 143
Aug 7 00:19:26 Gargoyle daemon.info pppd[14630]: Using interface 3g-wan
Aug 7 00:19:26 Gargoyle daemon.notice pppd[14630]: Connect: 3g-wan <--> /dev/ttyUSB1
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: sent [LCP ConfReq id=0x7 <asyncmap 0x0> <magic 0xc2f9c3a0>]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: rcvd [LCP ConfReq id=0x6 <asyncmap 0x0> <auth chap MD5> <magic 0x3129eb8> <pcomp> <accomp>]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: No auth is possible
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: sent [LCP ConfRej id=0x6 <auth chap MD5> <pcomp> <accomp>]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: rcvd [LCP ConfAck id=0x7 <asyncmap 0x0> <magic 0xc2f9c3a0>]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: rcvd [LCP ConfReq id=0x7 <asyncmap 0x0> <magic 0x3129eb8>]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: sent [LCP ConfAck id=0x7 <asyncmap 0x0> <magic 0x3129eb8>]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: sent [LCP EchoReq id=0x0 magic=0xc2f9c3a0]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: rcvd [LCP DiscReq id=0x8 magic=0x3129eb8]
Aug 7 00:19:27 Gargoyle daemon.debug pppd[14630]: rcvd [LCP EchoRep id=0x0 magic=0x3129eb8 c2 f9 c3 a0]
Aug 7 00:19:30 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:33 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:36 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:39 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:42 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:45 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:48 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Aug 7 00:19:51 Gargoyle daemon.debug pppd[14630]: sent [IPCP ConfReq id=0x3 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
Jak widzisz łączy się bez problemu. Za to nie dostajesz od operatora ani adresu ip ani dnsów.
Strony Poprzednia 1 2 3 4 5 6 … 10 Następna
Zaloguj się lub zarejestruj by napisać odpowiedź
eko.one.pl → Oprogramowanie / Software → Połączenie GSM w trybie NDIS
Forum oparte o PunBB, wspierane przez Informer Technologies, Inc