This is the line that one would expect udev to match for this dongle, but it never happens. Instead the dongle switches mode for some other reason (I don't know what other reason, but I might eventually get round to investigating further) and then udev finds matching entry in /lib/udev/rules.d/40-usb_modeswitch.rules at lines 9 and 16 (cf my previous comment) for the new device. So the K3770 works correctly when connected to the system even though usb_modeswitch hasn't at any stage been invoked to switch its mode, as evidenced by the lack of a usb_modeswitch entry in syslog (cf my previous comment).
As a sanity check to confirm that usb_modeswitch was not responsible for the K3770 switching modes, I temporarily replaced /lib/udev/usb_modeswitch by a dummy shell script that did nothing more than 'exit 0' and then connected the K3770 to the system again. Despite the neutering of usb_modeswitch, the dongle still switched modes.
The attached file is an extract from syslog that includes debug output from udev when the K3770 is connected to the system.
Note that /lib/udev/ rules.d/ 40-usb_ modeswitch. rules line 397 is
ATTRS{idVendor} =="12d1" , ATTRS{idProduct }=="14d1" , RUN+="usb_ modeswitch '%b/%k'"
This is the line that one would expect udev to match for this dongle, but it never happens. Instead the dongle switches mode for some other reason (I don't know what other reason, but I might eventually get round to investigating further) and then udev finds matching entry in /lib/udev/ rules.d/ 40-usb_ modeswitch. rules at lines 9 and 16 (cf my previous comment) for the new device. So the K3770 works correctly when connected to the system even though usb_modeswitch hasn't at any stage been invoked to switch its mode, as evidenced by the lack of a usb_modeswitch entry in syslog (cf my previous comment).
As a sanity check to confirm that usb_modeswitch was not responsible for the K3770 switching modes, I temporarily replaced /lib/udev/ usb_modeswitch by a dummy shell script that did nothing more than 'exit 0' and then connected the K3770 to the system again. Despite the neutering of usb_modeswitch, the dongle still switched modes.