USB

From DD-WRT Wiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 01:09, 29 October 2007 (edit)
Carlb (Talk | contribs)
m (USB drivers)
← Previous diff
Revision as of 01:11, 29 October 2007 (edit) (undo)
Carlb (Talk | contribs)
m
Next diff →
Line 17: Line 17:
The availability of external storage and peripherals makes a greater number of packages, including audio and multimedia, potentially usable from these otherwise-tiny devices. The availability of external storage and peripherals makes a greater number of packages, including audio and multimedia, potentially usable from these otherwise-tiny devices.
-== Multimedia ==+=== Multimedia ===
There are a number of [[Optware]] packages designed to handle audio or to convert multimedia data from one format to another. USB audio hardware is becoming more commonplace due to its use with Voice over IP softphone applications, and the "video 4 linux" project has done much toward making analogue video capture and webcam devices operate with the Linux desktop. It would appear that, once USB support is available, many packages are available to be tested on the embedded Linux platform. There are a number of [[Optware]] packages designed to handle audio or to convert multimedia data from one format to another. USB audio hardware is becoming more commonplace due to its use with Voice over IP softphone applications, and the "video 4 linux" project has done much toward making analogue video capture and webcam devices operate with the Linux desktop. It would appear that, once USB support is available, many packages are available to be tested on the embedded Linux platform.
Line 26: Line 26:
Another possible combination: a Dreambox DM500 (dream-multimedia-tv.de) and a NAS-capable Linux router on the same network. The DM500's are Linux-based digital TV units (they do not tune analogue signals). Having no built-in USB or storage, these depend on network-attached storage elsewhere on the LAN in order to provide PVR-like capabilities. Pair these with a Linux-based router such as the [[Asus WL-700GE]] (which has a built-in 160GB HDD) or any of the USB-capable devices (which interface to USB hard drives) and video can be stored and displayed without relying on access to desktop PC's and without going to the higher-end Dreambox DM7000 series (which offers built-in HDD, USB, keyboard and flash memory support, but at double the price - a hefty premium to pay). Another possible combination: a Dreambox DM500 (dream-multimedia-tv.de) and a NAS-capable Linux router on the same network. The DM500's are Linux-based digital TV units (they do not tune analogue signals). Having no built-in USB or storage, these depend on network-attached storage elsewhere on the LAN in order to provide PVR-like capabilities. Pair these with a Linux-based router such as the [[Asus WL-700GE]] (which has a built-in 160GB HDD) or any of the USB-capable devices (which interface to USB hard drives) and video can be stored and displayed without relying on access to desktop PC's and without going to the higher-end Dreambox DM7000 series (which offers built-in HDD, USB, keyboard and flash memory support, but at double the price - a hefty premium to pay).
-== Multifunction devices ==+=== Multifunction devices ===
Multifunction printers (a printer and scanner in one unit, resembling a small photocopier) may be supported, depending on model. These may be treated as the individual portions - a printer and a scanner - although even an otherwise-incompatible device will normally allow just the printer portion to be used on a strictly pass-through basis through p910d even if none of the other capabilities are supported. Multifunction printers (a printer and scanner in one unit, resembling a small photocopier) may be supported, depending on model. These may be treated as the individual portions - a printer and a scanner - although even an otherwise-incompatible device will normally allow just the printer portion to be used on a strictly pass-through basis through p910d even if none of the other capabilities are supported.

Revision as of 01:11, 29 October 2007

See also: USB storage

Contents

USB support

Of the Supported Devices, just a few support USB. These include the ASUS WL-500g Premium and various devices in this same series, as well as the Asus WL-500W and the Linksys WRTSL54GS.

USB can be enabled by installing the required kernel modules to JFFS, then using a startup script to mount individual devices. See USB storage for instructions and example scripts.

The cost of USB-capable network routers starts slightly over-$100 (as of 2007), depending on capability, but the ability to add external hardware easily makes these far more powerful units.

USB devices

The various USB options include:

  • Network-attached storage including flash memories, hard discs, floppy discs and CD/DVD-ROM devices. These can be shared across a LAN using Samba; an external hard drive also provides plentiful swap space for use as virtual memory.
  • Printer Sharing; as either a pass-through driver (p910nd - for printers not supported directly by embedded Linux or those needing proprietary manufacturers' drivers) or CUPS (for fully Linux-supported printers only)
  • CD recording; the Optware packages provide cdrtools: common low-level CD recording tools such as cdrecord and mkisofs.
  • Local network sharing of supported scanner models using SANE drivers; these may be accessed from Linux desktop PC's or (through third-party utilities like SaneTwain) even from Windows PC's.

The availability of external storage and peripherals makes a greater number of packages, including audio and multimedia, potentially usable from these otherwise-tiny devices.

Multimedia

There are a number of Optware packages designed to handle audio or to convert multimedia data from one format to another. USB audio hardware is becoming more commonplace due to its use with Voice over IP softphone applications, and the "video 4 linux" project has done much toward making analogue video capture and webcam devices operate with the Linux desktop. It would appear that, once USB support is available, many packages are available to be tested on the embedded Linux platform.

Getting video back out, however, is no easy task.

One device which may be of interest is a USB hard drive enclosure with a built-in media player, such as the Mediasonic HM2-U2TV or others like it. Install a laptop HDD into this tiny device, connect it to your USB-aware router as network-attached storage and load it with images, audio and video files. Unplug it and connect it to your PAL or NTSC TV monitor as a self-contained media playback device. Note that the media player is deactivated whenever the USB interface is connected.

Another possible combination: a Dreambox DM500 (dream-multimedia-tv.de) and a NAS-capable Linux router on the same network. The DM500's are Linux-based digital TV units (they do not tune analogue signals). Having no built-in USB or storage, these depend on network-attached storage elsewhere on the LAN in order to provide PVR-like capabilities. Pair these with a Linux-based router such as the Asus WL-700GE (which has a built-in 160GB HDD) or any of the USB-capable devices (which interface to USB hard drives) and video can be stored and displayed without relying on access to desktop PC's and without going to the higher-end Dreambox DM7000 series (which offers built-in HDD, USB, keyboard and flash memory support, but at double the price - a hefty premium to pay).

Multifunction devices

Multifunction printers (a printer and scanner in one unit, resembling a small photocopier) may be supported, depending on model. These may be treated as the individual portions - a printer and a scanner - although even an otherwise-incompatible device will normally allow just the printer portion to be used on a strictly pass-through basis through p910d even if none of the other capabilities are supported.

USB telephone-style handsets may or may not be Linux-compatible, with low-end models being more likely to be recognised as some Linux-compatible combination (typically a standard USB sound card with perhaps a USB human interface device as the keypad). Higher-end devices often are locked to one provider by being tightly-integrated to Windows-specific drivers and/or the Skype softphone application, rendering them useless. For instance, the Linksys CIT200 is useless outside Windows, while the far lower-end Skype SK04 is a relatively-standard USB device which may be worth testing in a Linux environment.

Laptop "USB docking stations" typically provide some combination of a USB hub, an extra network interface, audio, serial/parallel ports, keyboard and mouse. Their compatibility varies depending on model; it may be necessary to determine which drivers are installed by manufacturer-supplied Windows discs for each of the individual peripherals in these bundled units and check availability of corresponding existing embedded Linux drivers before considering these for use. Some may work, some most certainly don't. Unfortunately, USB to SVGA interfaces in these packages are currently very proprietary and in no way Linux compatible - the one key stumbling block preventing a USB-aware network-storage device such as Linksys' NSLU2 or a USB-aware router from being expanded to be a small but complete self-contained embedded Linux computer system.

USB drivers

These drivers may be installed to JFFS using ipkg and then loaded (using insmod) from a startup script to enable USB support:

USB base drivers:

kmod-usb-core -- Kernel Support for USB
kmod-usb-ohci -- Kernel driver for OHCI USB controllers
kmod-usb-uhci -- Kernel driver for UHCI USB controllers
kmod-usb-uhci-iv -- Kernel driver for Intel/VIA UHCI USB controllers
kmod-usb2 -- Kernel driver for USB2 controllers
kmod-usb-acm -- Kernel modules for USB ACM (Abstract Control Model) support

Storage:

kmod-usb-storage -- Kernel modules for USB storage support
kmod-ext2 -- Kernel modules for EXT2 filesystem support
kmod-ext3 -- Kernel modules for EXT3 filesystem support
kmod-vfat -- Kernel modules for VFAT filesystem support

Serial ports:

kmod-usb-serial -- Kernel Support for USB-to-Serial converters
kmod-usb-serial-belkin -- Kernel Support for Belkin USB-to-Serial converters
kmod-usb-serial-ftdi -- Kernel Support for FTDI USB-to-Serial converters
kmod-usb-serial-mct-u232 -- Kernel Support for Magic Control Technology USB-to-Serial converters
kmod-usb-serial-pl2303 -- Kernel Support for Prolific PL2303 USB-to-Serial converters
kmod-usb-serial-visor -- Kernel Support for Handspring Visor / Palm m50x / Sony Clie

Audio:

See http://sokrates.mimuw.edu.pl/~sebek/openwrt/ - some drivers exist but these are not part of the base distribution.

Printer and multifunction:

kmod-usb-printer -- Kernel modules for USB Printer support
kmod-usb-scanner -- Kernel modules for USB Scanner support
kmod-videodev -- Video For Linux kernel support

Bluetooth:

kmod-bluetooth -- Bluetooth stack kernel modules
kmod-bluetooth-bfusb -- Bluetooth HCI BlueFRITZ! USB driver
kmod-bluetooth-hciuart -- Bluetooth HCI UART driver
kmod-bluetooth-hciusb -- Bluetooth HCI USB driver
kmod-bluetooth-hcivhci -- Bluetooth Virtual HCI device driver