usb-modeswitch - mode switching tool for controlling "flip flop" USB devices

Property Value
Distribution Debian 7 (Wheezy)
Repository Debian Main i386
Package name usb-modeswitch
Package version 1.2.3+repack0
Package release 1
Package architecture i386
Package type deb
Installed size 163 B
Download size 48.56 KB
Official Mirror
Several new USB devices have their proprietary Windows drivers onboard,
especially WAN dongles. When plugged in for the first time, they act
like a flash storage and start installing the driver from there. If
the driver is already installed, the storage device vanishes and
a new device, such as an USB modem, shows up. This is called the
"ZeroCD" feature.
On Debian, this is not needed, since the driver is included as a
Linux kernel module, such as "usbserial". However, the device still
shows up as "usb-storage" by default. usb-modeswitch solves that
issue by sending the command which actually performs the switching
of the device from "usb-storage" to "usbserial".
This package contains the binaries and the brother scripts.


Package Version Architecture Repository
usb-modeswitch_1.2.3+repack0-1_amd64.deb 1.2.3+repack0 amd64 Debian Main
usb-modeswitch - - -


Name Value
dpkg >=
libc6 >= 2.4
libjim0debian2 >= 0.72
libusb-0.1-4 >= 2:0.1.12
usb-modeswitch-data >= 20110227-1~


Type URL
Binary Package usb-modeswitch_1.2.3+repack0-1_i386.deb
Source Package usb-modeswitch

Install Howto

  1. Update the package index:
    # sudo apt-get update
  2. Install usb-modeswitch deb package:
    # sudo apt-get install usb-modeswitch




2012-01-30 - Didier Raboud <>
usb-modeswitch (1.2.3+repack0-1) unstable; urgency=medium
* New 1.2.3 upstream release.
- Fixed two bugs both causing the embedded-jimsh install variant of the
dispatcher crash;
(Closes: #656688)
- Fixed some "regexp" incompatibilities with Debian's libjim.
(Closes: #656063)
* Repack the upstream tarball:
- Drop the code copy of jimtcl.
* Rise urgency to medium as this new upstream release fixes two RC bugs.
* Add patch to disable logging as enabled in 1.2.3 upstream release.
2012-01-19 - Didier Raboud <>
usb-modeswitch (1.2.2+repack0-1) unstable; urgency=low
* New 1.2.2 upstream release.
- Fixed bad bug preventing mode switch for devices using TargetClass
(Closes: #656248);
* Repack the upstream tarball:
- Drop the code copy of jimtcl.
2012-01-02 - Didier Raboud <>
usb-modeswitch (1.2.1+repack0-1) unstable; urgency=low
* New 1.2.1 upstream release.
* Repack the upstream tarball:
- Drop the code copy of jimtcl.
* Refresh patches.
× 03_use_udev_specifics.patch: Refresh.
2011-10-24 - Didier Raboud <>
usb-modeswitch (1.2.0+repack0-1) unstable; urgency=low
* New 1.2.0 upstream release:
- added command line options for binary program to accept configuration
data via stdin or as a long string parameter - this fixes the bug with
non-writable temporary file during boot (Closes: #629371);
* Repack the upstream tarball:
- Drop the code copy of jimtcl.
* Refresh patches:
× 03_use_udev_specifics.patch: Refresh.
+ 04_cope_with_repack.patch: Add.
- wait_half_second_non_scsi.patch: was from upstream; drop.
* Link usb-modeswitch-dispatcher against libjim.
- Add Build-Depends on jimtcl and libjim-dev.
- Drop Depends on tcl/tclsh.
- Use explicit makefile targets.
* Bump debhelper compat to 9, for auto- buildflags.
- Bump debhelper B-D to 8.9.0~.
- Add source lintian override.
2011-08-16 - Didier Raboud <>
usb-modeswitch (1.1.9-2) unstable; urgency=low
* Patch the tcl dispatcher to wait some time with non-scsi-needing
devices. (Closes: #637972)
2011-08-07 - Didier Raboud <>
usb-modeswitch (1.1.9-1) unstable; urgency=low
* New 1.1.9 upstream version:
× Refresh 03_use_udev_specifics.patch.
2011-06-20 - Didier Raboud <>
usb-modeswitch (1.1.8-1) unstable; urgency=low
* New 1.1.8 upstream version:
- Rewrite Debian's "override from /etc" code
(Closes: #630081, thanks to Alex Hermann).
- Fix boot-time switching regression
(Closes: #629371, thanks to Christian Kastner).
* Drop patches obsoleted by 1.1.8:
- 01_extract_to_var_lib_not_tmp
- 02_allow_override_from_etc
* Drop device_reference.txt from docs as upstream dropped it.
* Bump Standards-Version to 3.9.2 without changes needed.
2011-03-15 - Didier Raboud <>
usb-modeswitch (1.1.7-1) unstable; urgency=low
* New 1.1.7 upstream version.
* Patches:
+ Add 01_extract_to_var_lib_not_tmp.patch to extract
temporary files to /var/lib/usb_modeswitch instead of /tmp.
+ Add 02_allow_override_from_etc.patch to permit overriding
packed configurations with files within /etc/usb_modeswitch.d/.
- Remove 02_mp_correct_hyphens.patch: merged upstream.
- Remove 04__use_var_lib_not_etc.patch: merged upstream.
- Remove 05_fixed_configuration_switching_races.patch: was an upstream
- Remove 06_umdp_archive_in_usr.patch: Obsoleted by upstream.
* Replace usb-modeswitch-data-packed dependency by a versioned dependency on
usb-modeswitch-data (copes with -packed package removal).
* Add a postinst maintainer script to move past runtime files to their new
(and correct) location under /var/lib/.
* Also bump debhelper compat (was forgotten).

See Also

Package Description
usbip_1.1.1+3.2.17-1_i386.deb USB device sharing system over IP network
usbmount_0.0.22_all.deb automatically mount and unmount USB mass storage devices
usbmuxd_1.0.7-2_i386.deb USB multiplexor daemon for iPhone and iPod Touch devices
usbprog-gui_0.2.0-2_i386.deb GUI firmware programming tool for the USBprog hardware
usbprog_0.2.0-2_i386.deb Firmware programming tool for the USBprog hardware
usbredirserver_0.4.3-2_i386.deb Simple USB host TCP server
usbutils_005-3_i386.deb Linux USB utilities
usbview_1.1-1_i386.deb USB device viewer
usemod-wiki_1.0.5-1+deb7u1_all.deb Perl-based Wiki clone
usepackage_1.8-1_i386.deb utility to manage environment variables from within dotfiles
user-he_1.0.20_all.deb Hebrew support for Debian based systems
user-mode-linux-doc_20060501-1_all.deb User-mode Linux (Documentation)
user-mode-linux_3.2-2um-1+deb7u2+b3_i386.deb User-mode Linux (kernel)
user-setup_1.48_all.deb Set up initial user and password
userinfo_2.2-3_i386.deb display information about local users