1 (edytowany przez Cezary 2024-07-19 18:33:39)

Temat: Quectel-CM

Dla Quectela EC25 z Teltoniki RUT950. Jeżeli ktoś korzysta z mojego repo.

# opkg update
# opkg install quectel-cm kmod-qmi_wwan_q
# ifdown wan
# rmmod qmi_wwan 
# modprobe qmi_wwan_q
# echo 1 > /sys/class/net/wwan0/bridge_mode
# logread | grep qmi_wwan_q

Sat Jul 20 15:08:31 2024 kern.info kernel: [  266.154350] qmi_wwan_q 1-1:1.4: cdc-wdm0: USB WDM device
Sat Jul 20 15:08:31 2024 kern.info kernel: [  266.164232] qmi_wwan_q 1-1:1.4: Quectel Android work on RawIP mode
Sat Jul 20 15:08:31 2024 kern.info kernel: [  266.192678] qmi_wwan_q 1-1:1.4: rx_urb_size = 1520
Sat Jul 20 15:08:31 2024 kern.info kernel: [  266.198675] qmi_wwan_q 1-1:1.4 wwan0: register 'qmi_wwan_q' at usb-1b000000.usb-1, WWAN/QMI Raw IP device, 02:ec:55:b6:c7:d9
Sat Jul 20 15:08:31 2024 kern.info kernel: [  266.210465] usbcore: registered new interface driver qmi_wwan_q
Sat Jul 20 15:09:26 2024 kern.info kernel: [  321.474368] net wwan0: bridge_mode change to 0x1

# lsmod | grep qmi_wwan
cdc_wdm                 8704  3 qmi_wwan_q,cdc_mbim,huawei_cdc_ncm
qmi_wwan_q             18464  0 
usbcore               148416 18 qmi_wwan_q,qcserial,option,cdc_mbim,usb_wwan,sierra_net,sierra,rndis_host,huawei_cdc_ncm,cdc_ncm,cdc_ether,usbserial,usbnet,cdc_wdm,cdc_acm,ehci_platform,ehci_fsl,ehci_hcd
usbnet                 17680  7 qmi_wwan_q,cdc_mbim,sierra_net,rndis_host,huawei_cdc_ncm,cdc_ncm,cdc_ether


# brctl addbr br0
# ifconfig eth1 up
# ifconfig br0 up
# brctl addif br0 eth1
# brctl addif br0 wwan0
# brctl show br0
bridge name    bridge id        STP enabled    interfaces
br0        8000.001e4218a05e    no        wwan0
                            eth1

root@MiFi:~# quectel-CM -b -f /tmp/log.txt &
root@MiFi:~# [07-20_15:12:45:358] QConnectManager_Linux_V1.6.6_beta0319
[07-20_15:12:45:360] Find /sys/bus/usb/devices/1-1 idVendor=0x2c7c idProduct=0x125, bus=0x001, dev=0x002
[07-20_15:12:45:363] Auto find qmichannel = /dev/cdc-wdm0
[07-20_15:12:45:365] Auto find usbnet_adapter = wwan0
[07-20_15:12:45:366] netcard driver = qmi_wwan_q, driver version = V1.2.7_beta0315
[07-20_15:12:45:368] Modem works in QMI mode
[07-20_15:12:45:383] cdc_wdm_fd = 8
[07-20_15:12:45:466] Get clientWDS = 20
[07-20_15:12:45:498] Get clientDMS = 1
[07-20_15:12:45:532] Get clientNAS = 4
[07-20_15:12:45:562] Get clientUIM = 1
[07-20_15:12:45:595] Get clientWDA = 1
[07-20_15:12:45:627] requestBaseBandVersion EC25EFAR06A17M4G
[07-20_15:12:45:755] requestGetSIMStatus SIMStatus: SIM_READY
[07-20_15:12:45:819] requestGetProfile[pdp:1 index:1] ///0/IPV4
[07-20_15:12:45:852] requestRegistrationState2 MCC: 260, MNC: 6, PS: Attached, DataCap: LTE
[07-20_15:12:45:883] requestQueryDataCall IPv4ConnectionStatus: DISCONNECTED
[07-20_15:12:45:885] ip addr flush dev wwan0
[07-20_15:12:45:898] ip link set dev wwan0 down
[07-20_15:12:45:947] requestSetupDataCall WdsConnectionIPv4Handle: 0x87285280
[07-20_15:12:46:075] ip link set dev wwan0 up
[07-20_15:12:46:090] echo '0x2e7a8e0a' > /sys/class/net/wwan0/bridge_ipv4

I na samym komputerze który miał kabel wpięty do wanu teltoniki (czyli eth1)

~$ ip a
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 8c:8c:aa:57:3a:98 brd ff:ff:ff:ff:ff:ff
    altname enp3s0
    inet 10.97.217.166/30 brd 10.97.217.167 scope global dynamic noprefixroute eno1
       valid_lft 7181sec preferred_lft 7181sec
~$ ip r
default via 10.97.217.165 dev eno1 proto dhcp src 10.97.217.166 metric 20100 
10.97.217.164/30 dev eno1 proto kernel scope link src 10.97.217.166 metric 100

Problem jest tylko taki że nie ma transmisji i pakiety nie przechodzą (nawet pingi)

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

2

Odp: Quectel-CM

Taa, nie skopiowałem. Zwykłe insmod qmi_wwan_q było.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Quectel-CM

Z tym parametrem próbowałeś ?

insmode qmi_wwan_q bridge_mode=1

4

Odp: Quectel-CM

Nie muszę. Sam kompilowałem moduł i mam bridge mode włączony domyślnie. Instrukcja quectla była do kitu, quectel-CM musi być uruchomiony z opcją -b (bridge) bo inaczej działa jak zwykły moduł i po prostu woła uhdhcp na wwan0 i daje mu adres w routerze. A tak czeka na to co podłączy się do ethernetu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5 (edytowany przez MiG25 2024-07-19 19:19:09)

Odp: Quectel-CM

Skompilujesz takie coś na AW1000 , to sprawdzę u siebie ?

EDIT:CZyli działa w końcu ?

6

Odp: Quectel-CM

Jako bridge - tak, przypisuje adres z dhcp od razu do interfejsu do komputera. Ale nie działa transmisja do niego i nie wiem jeszcze dlaczego.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7 (edytowany przez secam7 2024-07-19 20:15:56)

Odp: Quectel-CM

Tak z ciekawości, co pokazuje komenda jak niżej na twoim module??

modinfo qmi_wwan_q

8 (edytowany przez Cezary 2024-07-19 21:52:49)

Odp: Quectel-CM

root@MiFi:~# modinfo qmi_wwan_q
module:        /lib/modules/5.15.162/qmi_wwan_q.ko
license:    GPL
depends:    usbnet,usbcore,cdc-wdm
name:        qmi_wwan_q
vermagic:    5.15.162 mod_unload MIPS32_R2 32BIT 

Jak coś to parametry mam

root@MiFi:~# ls /sys/module/qmi_wwan_q/parameters
agg_bypass_time  agg_time_limit   bridge_mode      qmap_mode        rx_qmap
root@MiFi:~# cat /sys/module/qmi_wwan_q/parameters/bridge_mode 
1
Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9 (edytowany przez MiG25 2024-07-20 10:42:54)

Odp: Quectel-CM

W sumie z tym parametrem też widać ,że się ładuje.

root@HikariWrt:~# cat /sys/module/qmi_wwan_q/parameters/bridge_mode
0
root@HikariWrt:~# modinfo qmi_wwan_q
filename:    /lib/modules/6.6.37/qmi_wwan_q.ko
license:    GPL
depends:    rmnet_nss,usbnet,cdc-wdm
name:        qmi_wwan_q
vermagic:    6.6.37 SMP preempt mod_unload aarch64
parm:        qmap_mode (uint)
parm:        rx_qmap (uint)
parm:        bridge_mode (uint)
parm:        agg_time_limit (long)
parm:        agg_bypass_time (long)
root@HikariWrt:~# cat /sys/module/qmi_wwan_q/parameters/bridge_mode
0
root@HikariWrt:~# rmmod qmi_wwan
root@HikariWrt:~# rmmod qmi_wwan_q
root@HikariWrt:~# cat /sys/module/qmi_wwan_q/parameters/bridge_mode
cat: can't open '/sys/module/qmi_wwan_q/parameters/bridge_mode': No such file or directory
root@HikariWrt:~# insmod qmi_wwan_q
root@HikariWrt:~# cat /sys/module/qmi_wwan_q/parameters/bridge_mode
0
root@HikariWrt:~# rmmod qmi_wwan_q
root@HikariWrt:~# insmod qmi_wwan_q bridge_mode=1
root@HikariWrt:~# cat /sys/module/qmi_wwan_q/parameters/bridge_mode
1
root@HikariWrt:~# 

Tylko czemu wwan0 do bridga nie chce dodać...

10

Odp: Quectel-CM

Skompilowałem zarówno qmi_wwan_q i quectel-cm, jest u mnie w repo. Nie wiem czy komuś się to przyda, najwyżej usunę przy następnej kompilacji jak nic nie osiągniemy. Zaktualizowałem pierwszy post.

Znów zmieniłem źródła. Dla ipq807x było domyślnie przyjmowane że jest nss net włączony i wymagany był dodatkowy moduł którego quectel dostarczał. Z tego to rozumiem to właśnie to jest ta "akceleracja sprzętowa", ale jako że w OpenWrt ten NSS nie jest kompilowany (przynajmniej nie ta akcelerowana wersja), więc i u mnie qmi_wwan_q dla ipq807x jest skompilowany bez tego dodatkowego modułu.


Na razie rezultat jest taki że da się otrzymać adres od operatora. Ale na tym koniec, no nie przechodzą pingi  ani nic innego nie wczytuje.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11 (edytowany przez MiG25 2024-07-20 17:18:35)

Odp: Quectel-CM

Na Twoim buildzie jeszcze inne dziwniejsze rzeczy...( na aw1000 i dzisiejszy snapshot).
Teraz br0 jest busy , po dodaniu pierwszego interfejsu ( obojętnie czy jest to lan1 czy wwan0 ) drugiego interfejsu nie idzie dodać , bo br0 busy....
nic nie daje ifconfig br0 down/up itp.

12

Odp: Quectel-CM

No to ciekawe. Ale nie mam żadnego ipq807x pod rękę więc nie sprawdzę.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: Quectel-CM

Mogę Ci go jakoś zdalnie udostępnić przez jeszcze inny modem np...

14

Odp: Quectel-CM

Chciałem spróbować na lbr20 , ale chyba już nie kompilujesz paczek quectel-cm i  kmod-qmi_wwan_q ?

15

Odp: Quectel-CM

Nie, wywaliłem z repo.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

16

Odp: Quectel-CM

A mógłbyś skompilować dla ipq40xx w wolnej chwili ? Póki mam LBR20 to mogłbym sprawdzić , noż widelec dla tego modemu się uda.
Może też Cheatau LTE12 by się udało..

17

Odp: Quectel-CM

Wieczorem.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

18

Odp: Quectel-CM

Dziś wieczorem ? smile

19 (edytowany przez Cezary 2024-10-11 18:13:36)

Odp: Quectel-CM

No, wiedziałem ze czegoś wczoraj nie zrobiłem.

EDIT: tu masz: https://dl.eko.one.pl/test/

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

20

Odp: Quectel-CM

Dlaczego mi krzyczy ,że się kernel nie zgadza , jak się zgadza:

oot@OpenWrt:/tmp# opkg install kmod-qmi_wwan_q_5.15.167+V1.2.7_beta0315-1_arm_cortex-a7_neon-vfpv4.ipk 
Unknown package 'kmod-qmi_wwan_q'.
Collected errors:
 * pkg_hash_check_unresolved: cannot find dependency kernel (= 5.15.167-1-7faa14383abe317653ce20268c5993ba) for kmod-qmi_wwan_q
 * pkg_hash_fetch_best_installation_candidate: Packages for kmod-qmi_wwan_q found, but incompatible with the architectures configured
 * opkg_install_cmd: Cannot install package kmod-qmi_wwan_q.
root@OpenWrt:/tmp# 

21

Odp: Quectel-CM

Wyciągnij sobie plik ze środka i po prostu do właduj do systemu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

22 (edytowany przez MiG25 2024-10-11 19:23:54)

Odp: Quectel-CM

No tu przynajmniej lan do bridge się dodał ,ale i tak niewiele wyszło , w logach takie coś:

ri Oct 11 20:13:12 2024 daemon.notice netifd: Interface 'wan' is now down
Fri Oct 11 20:13:12 2024 daemon.notice netifd: Interface 'wan' is setting up now
Fri Oct 11 20:13:12 2024 daemon.notice netifd: wan (2035): Waiting for SIM initialization
Fri Oct 11 20:13:13 2024 daemon.notice netifd: wan (2035): Failed to parse message data
Fri Oct 11 20:13:13 2024 daemon.warn odhcpd[1625]: No default route present, overriding ra_lifetime!
Fri Oct 11 20:13:13 2024 daemon.notice netifd: wan (2035): PIN verification is disabled
Fri Oct 11 20:13:14 2024 daemon.notice netifd: wan (2035): Device only supports raw-ip mode but is missing this required driver attribute: /sys/class/net/wwan0/qmi/raw_ip
Fri Oct 11 20:13:14 2024 daemon.notice netifd: wan (2221): Stopping network wan
Fri Oct 11 20:13:15 2024 daemon.notice netifd: wan (2221): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "wan" } (Permission denied)

Tak jakby jaiś atrybut raw_ip był do ustawienia...
Wogóle nie ma katalogu qmi tam:

root@OpenWrt:/# ls /sys/class/net/wwan0/q
qmap_mode  qmap_size  queues/

23 (edytowany przez MiG25 2024-10-12 18:23:21)

Odp: Quectel-CM

Standardowo jest ta opcja:

root@OpenWrt:~# cat /sys/class/net/wwan0/qmi/raw_ip
Y
root@OpenWrt:~# ifdown wan
root@OpenWrt:~# cat /sys/class/net/wwan0/qmi/raw_ip
Y
root@OpenWrt:~# rmmod qmi_wwan
root@OpenWrt:~# cat /sys/class/net/wwan0/qmi/raw_ip
cat: can't open '/sys/class/net/wwan0/qmi/raw_ip': No such file or directory
root@OpenWrt:~# # modprobe qmi_wwan_q
root@OpenWrt:~# cat /sys/class/net/wwan0/qmi/raw_ip
cat: can't open '/sys/class/net/wwan0/qmi/raw_ip': No such file or directory
root@OpenWrt:~# 

znika po usunięciu qmi_wwan i wstawieniu qmi_wwan_q ... Da się to z tym skompilować ?

24

Odp: Quectel-CM

Tak, przy normalnym jest w standardzie. dla mdm9x40 którym jest EG18 też jest w sterowniku to definiowane. Dlaczego nie masz - nie wiem.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

25

Odp: Quectel-CM

najlepsze jest to ,że pisze ,żę rejestruje qmi_wwan_q jako WWAN/QMI Raw IP device...

Sat Oct 12 20:17:48 2024 kern.info kernel: [13677.000328] qmi_wwan 2-1:1.4 wwan0: unregister 'qmi_wwan' usb-xhci-hcd.0.auto-1, WWAN/QMI device
Sat Oct 12 20:17:55 2024 kern.info kernel: [13683.782739] qmi_wwan_q 2-1:1.4: cdc-wdm0: USB WDM device
Sat Oct 12 20:17:55 2024 kern.info kernel: [13683.783844] qmi_wwan_q 2-1:1.4: Quectel EG18-EA work on RawIP mode
Sat Oct 12 20:17:55 2024 kern.info kernel: [13683.788535] qmi_wwan_q 2-1:1.4: rx_urb_size = 16384
Sat Oct 12 20:17:55 2024 kern.info kernel: [13683.794275] qmi_wwan_q 2-1:1.4 wwan0: register 'qmi_wwan_q' at usb-xhci-hcd.0.auto-1, WWAN/QMI Raw IP device, 7a:d2:2c:60:b4:83
Sat Oct 12 20:17:55 2024 kern.info kernel: [13683.798210] usbcore: registered new interface driver qmi_wwan_q
root@OpenWrt:~# cat /sys/class/net/wwan0/qmi/raw_ip
cat: can't open '/sys/class/net/wwan0/qmi/raw_ip': No such file or directory
root@OpenWrt:~#