Virtual CD-ROM switching utility


Virtual CD-ROM switching utilities are programs to disable the virtual CD-ROM drive found on many devices. A virtual CD-ROM switching utility is a mode switching tool for controlling "flip flop" USB gear. Several new USB devices have their Microsoft Windows device drivers on board; when plugged in for the first time they act like a USB flash drive and start installing the device driver from there.
After that this device driver switches the mode internally, the storage device vanishes, and a new device shows up. The Wireless WAN gear maker Option calls that feature "ZeroCD ". With USB sniffing programs and libusb it is possible to eavesdrop the communication of the MS Windows device 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.
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 device drivers, sometimes Mac device drivers as well. In any case, they seemingly seldom, if ever, ship with Linux device 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 for the networkmanager.
The approach of adding Virtual CD-ROM with software drivers on 3G or storage devices has two problems: it presumably raises the cost of the device, and it may ship outdated software or even viruses. Most of the times, up-to-date drivers are anyway built into the operating systems. Virtual CD-ROM on U3-compatible devices can be removed by the . Some 3G devices such as the Huawei support of the Virtual CD-ROM.

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 device drivers and related Cosmote control program. Once the Windows device drivers are installed, a special USB command is sent to the device to “switch” it to modem mode.

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 device 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.

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 to make it fully automatic.

Switch2modem

Switch2modem is designed for switching a 3G USB modem. The program works under OpenSolaris.

Fetch utility

huaweiAktBbo.c is a utility that can be compiled and re-creates the USB communication which is used in Windows.