Virtual CD-ROM switching utility
Virtual CD-ROM switching utilitys are Linux programs to disable the virtual CD-ROM drive found on many devices.[1] A virtual CD-ROM switching utility is a mode switching tool for controlling "flip flop" (multiple device) USB gear. Several new USB devices (especially high-speed wireless WAN stuff, there seems to be a chipset from Qualcomm offering that feature) have their Microsoft Windows drivers onboard; when plugged in for the first time they act like a USB flash drive and start installing the driver from there. After that (and on every consecutive plugging) this driver switches the mode internally, the storage device vanishes (in most cases), and a new device (like a USB modem) shows up. The WWAN gear maker Option calls that feature "ZeroCD (TM)". With USB sniffing programs and libusb it is possible to eavesdrop the communication of the MS Windows driver, to isolate the command or action that does the switching and to reproduce the same thing under the rule of Linux or the BSD variants.[2]
The problem with most USB 3G modems is they have two modes. In one mode they are a USB flash drive and in the other mode they are a modem. Typically they only ship with Windows drivers, sometimes Mac drivers as well. In any case, they seemingly seldom, if ever, ship with Linux drivers. What normally happens with Windows is the device starts up as a USB flash drive, the hardware drivers are installed and then they are responsible for "switching" the device in to modem mode so you can use it. This "switch" is done via some codes, specific to the device, which controlling software can pass as a command to switch from disk to modem mode. The virtual CD-ROM switching utility manages the switch of mode from disk to modem, the latter disconnects any mounted disk containing software we don't care about that won't work anyway and, crucially, creates a modem port/serial device (usually /dev/ttyUSB0) for the networkmanager.[3]
ZeroCD
When a device uses the ZeroCD method means that it behaves as a USB CD-ROM when first connected, with a virtual CD-ROM inserted with the Windows drivers and related Cosmote control program. Once the Windows drivers are installed, a special USB command is sent to the device to “switch” it to modem mode.[4]
Ozerocdoff
Ozerocdoff temporarily disables ZeroCD for USB Option WWAN modem. The new USB Option WWAN modem devices support a CD-ROM device, which holds the needed Windows driver to use the WWAN modem. Therefore the firmware of the WWAN modem announces during the USB enumeration process to work as a virtual CD-ROM device with its vendor name "ZOPTION". This device is now called ZERO-CD. Ozerocdoff is a solution to switch off the ZERO-CD and allow the modem to be a used as a modem.[5]
USB_ModeSwitch
USB_ModeSwitch is a virtual CD-ROM switching utility. From version 1.0.3 upwards there is a simple framework for integrating the switching with udev (the device manager) to make it fully automatic.[2]
Switch2modem
Switch2modem is designed for switching a 3G USB modem. The program works under OpenSolaris.[6]
Fetch utility
huaweiAktBbo.c is a utility that can be compiled and re-creates the USB communication which is used in Windows.[7]
External links
References
- ^ USB_modeswitch Virtual CD-ROM switching utility
- ^ a b "USB_ModeSwitch - Activating Switchable USB Devices on Linux".
- ^ "Installing 3G USB Modems On Linux".
- ^ zerocd | StoiloBlog: everyday administration adventures
- ^ Debian package ozerocdoff in sid
- ^ Getting the Telecom T-Stick working under OpenSolaris
- ^ NSLU2-Linux - HowTo / AddUsb3gModem browse