Dear all, I want to use a modem like CDC-ACM device. Its custom made and is using a Microchip PIC18F2550 micro controller. The device works without any problem under Windows, Mac OS and Ubuntu. However when I try to use it with my Synology DS411slim NAS (uname -a Linux Speicherschwein 2.6.32.12 #1922 Sun Sep 4 02:10:58 CST 2011 armv5tel GNU/Linux) I'm always getting Input/Output Errors when I try to cat the device (/dev/ttyACM0). The NAS has an EHCI USB host controller. I have recompiled the kernel module with #define Debug and I'm getting the following error message - Please also note the "broken pipe" error of lsusb -v [80713.600000] usb 1-1.3: new full speed USB device using orion-ehci and address 33 [80713.710000] usb 1-1.3: configuration #1 chosen from 1 choice [80713.710000] cdc_acm 1-1.3:1.0: This device cannot do calls on its own. It is not a modem. [80713.720000] cdc_acm 1-1.3:1.0: The data interface has switched endpoints [80713.720000] drivers/usb/class/cdc-acm.c: interfaces are valid [80713.720000] cdc_acm 1-1.3:1.0: ttyACM0: USB ACM device [80713.760000] drivers/usb/class/cdc-acm.c: acm_control_msg: rq: 0x22 val: 0x0 len: 0x0 result: 0 [80713.760000] drivers/usb/class/cdc-acm.c: acm_control_msg: rq: 0x20 val: 0x0 len: 0x7 result: 7 [80713.760000] Got empty serial number. Generate serial number from product. [80749.480000] drivers/usb/class/cdc-acm.c: Entering acm_tty_open. [80749.480000] drivers/usb/class/cdc-acm.c: usb_submit_urb(ctrl irq) failed [80749.480000] tty_port_close_start: tty->count = 1 port count = 0. [80749.500000] drivers/usb/class/cdc-acm.c: acm_control_msg: rq: 0x22 val: 0x0 len: 0x0 result: 0 Does anyone has an idea what this error message (usb_submit_urb(ctrl irq) failed) means and how it can be fixed? Please find attached the output of lsusb and cat /proc/bus/usb/devices Thank you very much! Alex lsusb -v gives Bus 001 Device 033: ID 04d8:000a Microchip Technology, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 2 Communications bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 8 idVendor 0x04d8 Microchip Technology, Inc. idProduct 0x000a bcdDevice 0.01 iManufacturer 1 iProduct 2 iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 67 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 2 Communications bInterfaceSubClass 2 Abstract (modem) bInterfaceProtocol 1 AT-commands (v.25ter) iInterface 0 CDC Header: bcdCDC 1.10 CDC ACM: bmCapabilities 0x02 line coding and serial state CDC Union: bMasterInterface 0 bSlaveInterface 1 CDC Call Management: bmCapabilities 0x00 bDataInterface 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 2 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 10 CDC Data bInterfaceSubClass 0 Unused bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x03 EP 3 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 cannot read device status, Broken pipe (32) cat /proc/bus/usb/devices gives T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1 B: Alloc= 0/800 us ( 0%), #Int= 1, #Iso= 0 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0002 Rev= 2.06 S: Manufacturer=Linux 2.6.32.12 ehci_hcd S: Product=Marvell Orion EHCI S: SerialNumber=orion-ehci.0 C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms T: Bus=01 Lev=02 Prnt=02 Port=99 Cnt=01 Dev#= 33 Spd=12 MxCh= 0 D: Ver= 2.00 Cls=02(comm.) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=04d8 ProdID=000a Rev= 0.01 S: Manufacturer=sprut (www.sprut.de) S: Product=ADSB-PIC V.08 (sprut 2011) S: SerialNumber=9dac9dad9fbfcbbeccbccfe7c7ffcfe1 C:* #Ifs= 2 Cfg#= 1 Atr=c0 MxPwr=100mA I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=02 Prot=01 Driver=cdc_acm E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=2ms I:* If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm E: Ad=03(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html