Hey, > The change I made is for cinterion plugin only: > diff --git a/plugins/cinterion/mm-plugin-cinterion.c > b/plugins/cinterion/mm-plugin-cinterion.c > index 48fbb1ac..fe97f900 100644 > --- a/plugins/cinterion/mm-plugin-cinterion.c > +++ b/plugins/cinterion/mm-plugin-cinterion.c > @@ -181,9 +181,9 @@ grab_port (MMPlugin *self, > G_MODULE_EXPORT MMPlugin * > mm_plugin_create (void) > { > - static const gchar *subsystems[] = { "tty", "net", "usbmisc", NULL }; > + static const gchar *subsystems[] = { "tty", "net", "usbmisc", "wwan", > NULL }; > static const gchar *vendor_strings[] = { "cinterion", "siemens", NULL }; > - static const guint16 vendor_ids[] = { 0x1e2d, 0x0681, 0 }; > + static const guint16 vendor_ids[] = { 0x1e2d, 0x0681, 0x1269, 0 }; > static const MMAsyncMethod custom_init = { > .async = G_CALLBACK (cinterion_custom_init), > .finish = G_CALLBACK (cinterion_custom_init_finish), > > The quectel plugins does not whitelist the 0x1269: > [...] > [5328]: <debug> [plugin-manager] loaded plugin 'quectel' from > '/usr/lib/ModemManager/libmm-plugin-quect el.so' > [5328]: <debug> [filter] registered plugin whitelist vendor id: 2c7c > [5328]: <debug> [filter] registered plugin whitelist vendor id: 1eac > [5328]: <debug> [plugin-manager] loaded plugin 'pantech' from > '/usr/lib/ModemManager/libmm-plugin-pante ch.so' > [...] > [5328]: <debug> [plugin-manager] task 10,wwan0mbim0: found '3' plugins to try > [5328]: <debug> [plugin-manager] task 10,wwan0mbim0: will try with plugin > 'quectel' > [5328]: <debug> [plugin-manager] task 10,wwan0mbim0: will try with plugin > 'cinterion' > [5328]: <debug> [plugin-manager] task 10,wwan0mbim0: will try with plugin > 'generic' > [...] > So it's weird it matches the MV31-W modem
Yes, this is very very weird, and something we'll need to fix at some point. I'll try to see if I can find a reason for that. > > I also tried using the mbimcli directly but it does not work as well: > root@OpenWrt:~# mbimcli --query-device-caps -d /dev/wwan0mbim0 -v > [30 Jul 2021, 06:19:33] [Debug] opening device... > [30 Jul 2021, 06:19:34] [Debug] [/dev/wwan0mbim0] Couldn't query maximum > message size: IOCTL_WDM_MAX_COMMAND failed: Not a tty > [30 Jul 2021, 06:19:34] [Debug] [/dev/wwan0mbim0] Couldn't find descriptors > file, possibly not using cdc_mbim > [30 Jul 2021, 06:19:34] [Debug] [/dev/wwan0mbim0] Fallback to default max > control message size: 4096 > [30 Jul 2021, 06:19:34] [Debug] [/dev/wwan0mbim0] Sent message... > <<<<<< RAW: > <<<<<< length = 16 > <<<<<< data = 01:00:00:00:10:00:00:00:01:00:00:00:00:10:00:00 > > [30 Jul 2021, 06:19:34] [Debug] [/dev/wwan0mbim0] Sent message (translated)... > <<<<<< Header: > <<<<<< length = 16 > <<<<<< type = open (0x00000001) > <<<<<< transaction = 1 > <<<<<< Contents: > <<<<<< max control transfer = 4096 > [...] > [30 Jul 2021, 06:19:59] [Debug] [/dev/wwan0mbim0] Sent message... > <<<<<< RAW: > <<<<<< length = 16 > <<<<<< data = 01:00:00:00:10:00:00:00:06:00:00:00:00:10:00:00 > > [30 Jul 2021, 06:19:59] [Debug] [/dev/wwan0mbim0] Sent message (translated)... > <<<<<< Header: > <<<<<< length = 16 > <<<<<< type = open (0x00000001) > <<<<<< transaction = 6 > <<<<<< Contents: > <<<<<< max control transfer = 4096 > > [30 Jul 2021, 06:20:04] [Debug] open operation timed out: closed > error: couldn't open the MbimDevice: Operation timed out: device is closed > > Not sure if something interesting can be spotted here: > root@OpenWrt:~# grep "" /sys/kernel/debug/mhi/mhi0/* > /sys/kernel/debug/mhi/mhi0/channels:LOOPBACK(0) state: 0x0 brstmode: 0x2 > pollcfg: 0x0 type: 0x1 event ring: 0 base: 0x0 len: 0x0 rp: 0x0 wp: 0x0 local > rp: 0x0000000000000000 local wp: 0x0000000000000000 db: 0x0x0000000000000000 > /sys/kernel/debug/mhi/mhi0/channels:LOOPBACK(1) state: 0x0 brstmode: 0x2 > pollcfg: 0x0 type: 0x2 event ring: 0 base: 0x0 len: 0x0 rp: 0x0 wp: 0x0 local > rp: 0x0000000000000000 local wp: 0x0000000000000000 db: 0x0x0000000000000000 > /sys/kernel/debug/mhi/mhi0/channels:MBIM(12) state: 0x0 brstmode: 0x0 > pollcfg: 0x0 type: 0x1 event ring: 0 base: 0x0 len: 0x0 rp: 0x0 wp: 0x0 local > rp: 0x00000000298af610 local wp: 0x00000000298af610 db: 0x0x0000000074e4e060 > /sys/kernel/debug/mhi/mhi0/channels:MBIM(13) state: 0x0 brstmode: 0x0 > pollcfg: 0x0 type: 0x2 event ring: 0 base: 0x0 len: 0x0 rp: 0x0 wp: 0x0 local > rp: 0x00000000680319b8 local wp: 0x00000000680319b8 db: 0x0x00000000730183f0 > /sys/kernel/debug/mhi/mhi0/channels:DUN(32) state: 0x0 brstmode: 0x2 pollcfg: > 0x0 type: 0x1 event ring: 0 base: 0x0 len: 0x0 rp: 0x0 wp: 0x0 local rp: > 0x0000000000000000 local wp: 0x0000000000000000 db: 0x0x0000000000000000 > /sys/kernel/debug/mhi/mhi0/channels:DUN(33) state: 0x0 brstmode: 0x2 pollcfg: > 0x0 type: 0x2 event ring: 0 base: 0x0 len: 0x0 rp: 0x0 wp: 0x0 local rp: > 0x0000000000000000 local wp: 0x0000000000000000 db: 0x0x0000000000000000 > /sys/kernel/debug/mhi/mhi0/channels:IP_HW0_MBIM(100) state: 0x3 brstmode: 0x3 > pollcfg: 0x0 type: 0x1 event ring: 2 base: 0x7d018000 len: 0x2000 rp: > 0x1007d018000 wp: 0x7d018000 local rp: 0x0000000076b3677a local wp: > 0x0000000076b3677a db: 0x0x0000000000000000 > /sys/kernel/debug/mhi/mhi0/channels:IP_HW0_MBIM(101) state: 0x3 brstmode: 0x3 > pollcfg: 0x0 type: 0x2 event ring: 3 base: 0x7d01c000 len: 0x2000 rp: > 0x1007d01c000 wp: 0x7d01c000 local rp: 0x0000000034401564 local wp: > 0x0000000034401564 db: 0x0x0000000000000000 > /sys/kernel/debug/mhi/mhi0/device_wake:Wake count: 0 > /sys/kernel/debug/mhi/mhi0/device_wake:Usage: echo get/put > device_wake to > vote/unvote for M0 > /sys/kernel/debug/mhi/mhi0/devices:mhi0: type: Controller dev_wake: 0 > /sys/kernel/debug/mhi/mhi0/devices:LOOPBACK: type: Transfer dev_wake: 0 > channels: 0(UL)/1(DL) > /sys/kernel/debug/mhi/mhi0/devices:MBIM: type: Transfer dev_wake: 0 channels: > 12(UL)/13(DL) > /sys/kernel/debug/mhi/mhi0/devices:DUN: type: Transfer dev_wake: 0 channels: > 32(UL)/33(DL) > /sys/kernel/debug/mhi/mhi0/devices:IP_HW0_MBIM: type: Transfer dev_wake: 0 > channels: 100(UL)/101(DL) > /sys/kernel/debug/mhi/mhi0/events:Index: 0 intmod count: 0 time: 0 base: > 0x7d002000 len: 0x1000 rp: 0x7d002180 wp: 0x7d002170 local rp: > 0x000000003c6b2158 db: 0x0x000000007d002160 > /sys/kernel/debug/mhi/mhi0/events:Index: 1 intmod count: 0 time: 5 base: > 0x7d004000 len: 0x1000 rp: 0x7d004000 wp: 0x7d004ff0 local rp: > 0x00000000157b4460 db: 0x0x000000007d004ff0 > /sys/kernel/debug/mhi/mhi0/events:Index: 2 intmod count: 0 time: 1 base: > 0x7d008000 len: 0x4000 rp: 0x7d008000 wp: 0x7d00bff0 local rp: > 0x0000000035452f1e db: 0x0x000000007d00bff0 > /sys/kernel/debug/mhi/mhi0/events:Index: 3 intmod count: 0 time: 1 base: > 0x7d010000 len: 0x4000 rp: 0x7d010000 wp: 0x7d013ff0 local rp: > 0x000000006057ed08 db: 0x0x000000007d013ff0 > /sys/kernel/debug/mhi/mhi0/states:PM state: M3 Device: Active MHI state: M3 > EE: MISSION MODE wake: false > /sys/kernel/debug/mhi/mhi0/states:M0: 2 M2: 0 M3: 2 device wake: 0 pending > packets: 0 > /sys/kernel/debug/mhi/mhi0/timeout_ms:20000 ms > Maybe @Loic Poulain can spot something? Anyway, before attempting to make it work with ModemManager, try to make it work with mbimcli only first, that should be the first step. -- Aleksander https://aleksander.es