I've just bought one of these https://www.waveshare.com/SIM7600E-H-4G-hat.htm
and I'm trying to get it to work with ModemManager using (at the moment) the default version available in Raspberry Pi OS (mm 1.14.12). I'm also having some trouble convincing meson to build the latest version to try making changes, but I think that's a separate problem entirely due to my lack of understanding of meson. ModemManager v1.14.12 works if I switch the jumpers around to "control the SIM7600 via USB to UART" and plug in an additional USB cable from the Pi to the HAT's onboard USB connection, but I'm trying to get it to work without this cable and in its default "Raspberry Pi control" jumper setting (mainly because it's neater, honestly). I believe that the Hat's serial port is being filtered out because the Simtech plugin expects the Hat to have a Vendor/Product ID. However, when plugged in via the GPIO header, I see only a serial (ttyS0) interface, and thus no Vendor/Product IDs can match. Can I force the Simtech plugin to be used, or would it make no sense because of the single serial port? Should it be claimed and usable by the AT plugin instead? I'm more than happy to change stuff on this, because it has no other use at the moment. thanks Below is the output of ModemManager --debug, filtered for ttyS0 ModemManager[18072]: <debug> [1637163427.209175] [base-manager] adding port ttyS0 at sysfs path: /sys/devices/platform/soc/3f215040.serial/tty/ttyS0 ModemManager[18072]: <debug> [1637163427.211117] [filter] (tty/ttyS0) port allowed: device is whitelisted ModemManager[18072]: <debug> [1637163427.211261] [base-manager] port ttyS0 is first in device /sys/devices/platform/soc/3f215040.serial ModemManager[18072]: <debug> [1637163427.212551] [plugin-manager] task 0: port grabbed: ttyS0 ModemManager[18072]: <debug> [1637163427.212682] [plugin-manager] task 0,ttyS0: new support task for port ModemManager[18072]: <debug> [1637163427.212731] [plugin-manager] task 0,ttyS0: deferred until min wait time elapsed ModemManager[18072]: <debug> [1637163428.714120] [plugin/pantech] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714196] [plugin/novatel] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714249] [plugin/wavecom] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714297] [plugin/thuraya] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714340] [plugin/zte] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714394] [plugin/motorola] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714453] [plugin/option] port ttyS0 filtered by drivers ModemManager[18072]: <debug> [1637163428.714500] [plugin/nokia-icera] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714548] [plugin/simtech] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714598] [plugin/fibocom] port ttyS0 filtered by drivers ModemManager[18072]: <debug> [1637163428.714642] [plugin/altair-lte] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714693] [plugin/dell] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714737] [plugin/x22x] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714796] [plugin/ericsson-mbm] port ttyS0 filtered by udev tags ModemManager[18072]: <debug> [1637163428.714842] [plugin/longcheer] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714888] [plugin/anydata] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714941] [plugin/huawei] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.714996] [plugin/haier] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715039] [plugin/broadmobi] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715082] [plugin/d-link] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715130] [plugin/foxconn] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715193] [plugin/samsung] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715238] [plugin/tp-link] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715282] [plugin/linktop] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715326] [plugin/option-hso] port ttyS0 filtered by drivers ModemManager[18072]: <debug> [1637163428.715370] [plugin/sierra] port ttyS0 filtered by drivers ModemManager[18072]: <debug> [1637163428.715505] [plugin/mtk] port ttyS0 filtered by udev tags ModemManager[18072]: <debug> [1637163428.715563] [plugin/sierra-legacy] port ttyS0 filtered by drivers ModemManager[18072]: <debug> [1637163428.715618] [plugin/novatel-lte] port ttyS0 filtered by vendor/product IDs ModemManager[18072]: <debug> [1637163428.715698] [plugin-manager] task 0,ttyS0: found '8' plugins to try ModemManager[18072]: <debug> [1637163428.715741] [plugin-manager] task 0,ttyS0: will try with plugin 'u-blox' ModemManager[18072]: <debug> [1637163428.715777] [plugin-manager] task 0,ttyS0: will try with plugin 'iridium' ModemManager[18072]: <debug> [1637163428.715811] [plugin-manager] task 0,ttyS0: will try with plugin 'nokia' ModemManager[18072]: <debug> [1637163428.715857] [plugin-manager] task 0,ttyS0: will try with plugin 'cinterion' ModemManager[18072]: <debug> [1637163428.715892] [plugin-manager] task 0,ttyS0: will try with plugin 'via' ModemManager[18072]: <debug> [1637163428.715927] [plugin-manager] task 0,ttyS0: will try with plugin 'quectel' ModemManager[18072]: <debug> [1637163428.715961] [plugin-manager] task 0,ttyS0: will try with plugin 'telit' ModemManager[18072]: <debug> [1637163428.715998] [plugin-manager] task 0,ttyS0: will try with plugin 'generic' ModemManager[18072]: <debug> [1637163428.716092] [plugin-manager] task 0,ttyS0: started ModemManager[18072]: <debug> [1637163428.716152] [plugin-manager] task 0,ttyS0: checking with plugin 'u-blox' ModemManager[18072]: <debug> [1637163428.716255] [plugin/u-blox] probes required for port ttyS0: 'at, at-vendor' ModemManager[18072]: <debug> [1637163428.716335] [ttyS0/probe] launching port probing: 'at, at-vendor' ModemManager[18072]: <debug> [1637163428.716510] [plugin-manager] task 0: still 1 running probes (1 active): ttyS0 ModemManager[18072]: <debug> [1637163428.717410] [ttyS0/at] opening serial port... ModemManager[18072]: <debug> [1637163428.717933] [ttyS0/at] setting up baudrate: 57600 ModemManager[18072]: <debug> [1637163428.718050] [ttyS0/at] no flow control explicitly requested for device ModemManager[18072]: <debug> [1637163428.718219] [ttyS0/at] device open count is 1 (open) ModemManager[18072]: <debug> [1637163428.718346] [ttyS0/at] port attributes not fully set ModemManager[18072]: <debug> [1637163428.819514] [ttyS0/at] --> 'AT<CR>' ModemManager[18072]: <debug> [1637163429.714082] [plugin-manager] task 0: still 1 running probes (1 active): ttyS0 ModemManager[18072]: <debug> [1637163431.677274] [ttyS0/at] --> 'AT<CR>' ModemManager[18072]: <debug> [1637163434.678993] [ttyS0/at] --> 'AT<CR>' ModemManager[18072]: <debug> [1637163437.678441] [ttyS0/probe] port is not AT-capable ModemManager[18072]: <debug> [1637163437.678668] [plugin/u-blox] port ttyS0 filtered by vendor strings ModemManager[18072]: <debug> [1637163437.678790] [plugin-manager] task 0,ttyS0: checking with plugin 'iridium' ModemManager[18072]: <debug> [1637163437.678967] [plugin/iridium] probes required for port ttyS0: 'at, at-vendor, at-product' ModemManager[18072]: <debug> [1637163437.679067] [ttyS0/probe] port probing finished: no more probings needed ModemManager[18072]: <debug> [1637163437.679256] [ttyS0/at] device open count is 0 (close) ModemManager[18072]: <debug> [1637163437.679447] [ttyS0/at] closing serial port... ModemManager[18072]: <debug> [1637163437.679949] [ttyS0/at] serial port closed ModemManager[18072]: <debug> [1637163437.680213] [ttyS0/at] forced to close port ModemManager[18072]: <debug> [1637163437.680479] [plugin/iridium] port ttyS0 filtered as no vendor/product strings given ModemManager[18072]: <debug> [1637163437.680609] [plugin-manager] task 0,ttyS0: checking with plugin 'nokia' ModemManager[18072]: <debug> [1637163437.680798] [plugin/nokia] probes required for port ttyS0: 'at, at-vendor, at-icera' ModemManager[18072]: <debug> [1637163437.680925] [ttyS0/probe] port probing finished: no more probings needed ModemManager[18072]: <debug> [1637163437.681129] [plugin/nokia] port ttyS0 filtered by vendor strings ModemManager[18072]: <debug> [1637163437.681276] [plugin-manager] task 0,ttyS0: checking with plugin 'cinterion' ModemManager[18072]: <debug> [1637163437.681433] [plugin/cinterion] probes required for port ttyS0: 'at, at-vendor' ModemManager[18072]: <debug> [1637163437.681551] [ttyS0/probe] port probing finished: no more probings needed ModemManager[18072]: <debug> [1637163437.681750] [plugin/cinterion] port ttyS0 filtered by vendor strings ModemManager[18072]: <debug> [1637163437.681874] [plugin-manager] task 0,ttyS0: checking with plugin 'via' ModemManager[18072]: <debug> [1637163437.682050] [plugin/via] probes required for port ttyS0: 'at, at-vendor, at-product' ModemManager[18072]: <debug> [1637163437.682159] [ttyS0/probe] port probing finished: no more probings needed ModemManager[18072]: <debug> [1637163437.682372] [plugin/via] port ttyS0 filtered as no vendor/product strings given ModemManager[18072]: <debug> [1637163437.682485] [plugin-manager] task 0,ttyS0: checking with plugin 'quectel' ModemManager[18072]: <debug> [1637163437.682624] [plugin/quectel] probes required for port ttyS0: 'at, at-vendor, qcdm' ModemManager[18072]: <debug> [1637163437.682746] [ttyS0/probe] launching port probing: 'qcdm' ModemManager[18072]: <debug> [1637163437.682950] [ttyS0/probe] probing QCDM... ModemManager[18072]: <debug> [1637163437.683246] [ttyS0/qcdm] opening serial port... ModemManager[18072]: <debug> [1637163437.684313] [ttyS0/qcdm] device open count is 1 (open) ModemManager[18072]: <debug> [1637163437.684664] [ttyS0/qcdm] --> 7e 00 78 f0 7e ModemManager[18072]: <debug> [1637163440.679258] [ttyS0/qcdm] --> 7e 00 78 f0 7e ModemManager[18072]: <debug> [1637163443.678750] [ttyS0/probe] port is not QCDM-capable ModemManager[18072]: <debug> [1637163443.678992] [plugin/quectel] port ttyS0 filtered by vendor strings ModemManager[18072]: <debug> [1637163443.679206] [plugin-manager] task 0,ttyS0: checking with plugin 'telit' ModemManager[18072]: <debug> [1637163443.679968] [plugin/telit] probes required for port ttyS0: 'at, at-vendor' ModemManager[18072]: <debug> [1637163443.681210] [ttyS0/probe] port probing finished: no more probings needed ModemManager[18072]: <debug> [1637163443.682619] [ttyS0/qcdm] device open count is 0 (close) ModemManager[18072]: <debug> [1637163443.682762] [ttyS0/qcdm] closing serial port... ModemManager[18072]: <debug> [1637163443.683662] [ttyS0/qcdm] serial port closed ModemManager[18072]: <debug> [1637163443.683904] [ttyS0/qcdm] forced to close port ModemManager[18072]: <debug> [1637163443.684123] [plugin/telit] port ttyS0 filtered by vendor strings ModemManager[18072]: <debug> [1637163443.684238] [plugin-manager] task 0,ttyS0: checking with plugin 'generic' ModemManager[18072]: <debug> [1637163443.684396] [plugin/generic] probes required for port ttyS0: 'at, qcdm' ModemManager[18072]: <debug> [1637163443.684521] [ttyS0/probe] port probing finished: no more probings needed ModemManager[18072]: <debug> [1637163443.684733] [plugin-manager] task 0,ttyS0: found best plugin for port (generic) ModemManager[18072]: <debug> [1637163443.684833] [plugin-manager] task 0,ttyS0: finished in '16.472155' seconds ModemManager[18072]: <warn> [1637163443.717714] [plugin/generic] could not grab port ttyS0: Cannot add port 'tty/ttyS0', unhandled serial type