# Driver USB-SERIE-HART



## LIONHEAD (Ago 16, 2010)

Saludos,
     La ayuda que requiero es conseguir un driver para comunicar la PC a través del puerto USB, normalmente linux posee en su distro (en nuestro caso UBUNTU), paquetes para comunicación USB-Serie genérico, los cuales con solo aplicar el comando sudo modprobe usbserie vendor=0x8888 product=0x7777(donde 0x8888 y 0x7777 son valores distintos para cada tarjeta), se puede utilizar cualquier tarjeta usbserial reconociéndola a través de un puerto usb serie virtual como /dev/ttyUSB0.  En mi caso necesitamos desarrollar un driver en código abierto para un modem usb-hart, que se puede observar en  http://www.mactekcorp.com/product3.htm, al destaparlo la electrónica muestra un convertidor usbserial TUSB3210PM perteneciente a Texas Instruments, intentando montarlo con el código ya descrito, con el vendor (VID) y el product(PID) que conseguimos aplicando la instrucción lsusb en un terminal y el moden conectado (ID 10e5:0031), no lo reconoce y no aparece el puerto ttyUSB0 ni ninguno similar. Luego observando en lsusb -v muerta el dispositivo de la siguiente manera:

Bus 003 Device 002: ID 10e5:0031 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x10e5
  idProduct          0x0031
  bcdDevice            1.01
  iManufacturer           1
  iProduct                3
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           41
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower               30mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              1
      ** UNRECOGNIZED:  09 21 00 01 00 01 22 3f 00
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               1
cannot read device status, Operation not permitted (1)


     Luego en la pagina de Texas Instruments da un paquete para sus convertidores usbserie por medio de una pagina de apoyo http://focus.ti.com/docs/toolsw/folders/print/tusb-3p-lnxvcp.html  , procedo a instalar el paquete y siguiendo todas las instrucciones de su archivo .txt referente a montarlo con un VID/PID  diferente (en nuestro caso 10e5 y 0031) para que lo vea el puerto usb, no consiguiendo resultado, cuando conecto sigue reconociéndolo bajo el modulo uhci_hcd como un HID,
[ 7689.488034] usb 3-2: new full speed USB device using uhci_hcd and address 3
[ 7689.682344] usb 3-2: configuration #1 chosen from 1 choice
sin ver el modulo (ti_usb_3410_5052) que instale  para el convertidor y poder apuntar el puerto en el programa bajo C como un puerto virtual ttyUSB0. Es de mencionar que el driver original del convertidor para windows lo instala utilizando un puerto COM12, lo que nos constata que utiliza un puerto USBSerie virtual y continua utilizando la comunicación como si fuera un puerto serie.  Agradezco cualquier orientación en el tema, ya que quizás el problema no sea del modulo, sino de interferencia en los paquetes para USB Serie instalados, o algún problema en el manejo de los ficheros hacia donde debo apuntar el puerto. Gracias de antemano.

TSU Jorge López
2605910 / 04144676886


----------

