Три точечных фикса по живым логам пользователей (Cudy TR3000 и ZBT-Z8102AX + MV31-W).
Опрос имени оператора больше не долбится в немой DIAG-порт
Когда AT-порт модема записан только в глобальной настройке (так его сохраняет автоопределение), опрос имени оператора начинал с первого tty по порядку. У Android-палок MDM96xx первый порт - диагностический, на AT-команды он молчит: каждый опрос честно ждал 5 секунд под блокировкой порта и уходил в кэш, засоряя журнал строками «at_lock: port busy». Теперь для активного модема подставляется определённый ранее AT-порт, и опрос попадает в живой порт с первой попытки.
ADB-интерфейс палок больше не притворяется серийным портом
Привязка портов классом ff захватывала и ADB-интерфейс палки - он появлялся в системе как лишний ttyUSB, AT-пробы в него кормили adbd мусором, а хостовый adb не мог подключиться к занятому интерфейсу. Теперь после привязки ADB-интерфейс (subclass 42) освобождается автоматически - и adb с роутера работает без ручных манипуляций.
Hotplug не ждёт выключенный ModemManager
Обработчик T99W175/MV31-W после привязки портов ждал до 180 секунд, пока ModemManager увидит модем - даже на конфигурациях umbim/qmi, где MM выключен вовсе, и заканчивал пугающим «ModemManager did not report a modem». Теперь ожидание включается только при наличии интерфейса на proto=modemmanager.