В своих устройствах использую USB модемы Huawei,
со старыми моделями серии E1xx, где можно было отключить командой AT^U2DIAG=0 проблем не было,
но так как они потихоньку кончаются, а с новыми серии E3xx, это уже не проходило,
команды типа AT^SETPORT="A1,A2;1,2,3" помогают отключить CD и SD,
но только если на PC с виндой и с установленными драйверами.
Так вот хочу поделиться (1.5 дня на это убил, пока не взял USB Monitor от HHD Software)
как включить режим модема в доступных конфигурациях модема.
После того как получили конфигурацию, и CD активен, то в интерфейсах будут значения, (обычно это первый интерфейс)
bInterfaceClass == 0x08
bInterfaceSubClass == 0x06
bInterfaceProtocol == 0x50
затем закончить конфигурацию и послать Bulk-ом в модем буфер:
0x55, 0x53, 0x42, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11,
0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
после этого заново иницилизировать USB стек, без отключения питания с модема.
При данном способе и со старыми модемами нет необходимости отключать режимы CD и SD
Проверно на E153, E173, E303, E352