none
USB Device Connection problem RRS feed

  • Question

  • Hello:

    My general question is:  Where in the OS source code is the Vendor ID and Product ID extracted and transmitted over the USB port from my WINCE 6.0 unit to my PC when I first connect in the USB cable?

    My problem is that I am almost always seeing a "USB Device Not Recognized" pop-up message on my PC screen.

    The reason why is because the Vendor ID and Product ID the PC receives are both zero...USB\VID_0000&PID_0000\5&1BBF9BEF&0&2

    When I do get a good USB device connection, I see valid Vendor ID and Product ID values...USB\Vid_1286&Pid_a6cd\3a2a8904-4d43-585f-3330-303439323632

    It has been recommended I change these values to Micosoft vendor values...USB\Vid_045E&Pid_00CE.DeviceDesc = "Microsoft USB Sync" , but that does not fix the problem.

    Since these values do not match anything I understand why I get this message since it cannot find a driver matching these values.

    But what I want to know is why I'm receiving these incorrect values in the first place? Is my WInCE 6.0 OS transmitting the incorrect values or is the PC not receiving the correct values.

    I know that these values are saved in the registry in on my WinCE 6.0 unit in  [HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Serial_Class]

    And I do find valid numbers matching the Product and Vendor values found in the WinCE 6.0 registry that match Product and Vendor values I find in a wceusbsh.inf I find associated with the wceusbsh.sys driver I loaded in on my PC.

    But since the PC is receiving all zero's for the Product ID and Vendor ID I understand why I get a "USB Device Not Recognized" message.

    What I am trying to determine is if all zero's are actually getting transmitted, and if true then why are all zero's getting transmitted for the Product ID and Vendor ID.  I'm guessing that these values are extracted from the WInCE 6.0 registry, then transmitted.  What I am asking for is help or advice on finding out where in the source code of the OS the Product ID and Vendor ID is being determined and transmitted to my PC over its USB port.

    Thanks.
    Tuesday, January 15, 2013 9:41 PM

Answers

  • Here is the respose I got from the maker of the Com board that exhibits this problem:

    "We think that this is a silicon issue of Marvell's PXA310 CPU. Some batch might have problems because the only thing that helps is physical changing of CPU on module. "

    I was sent a new batch of Com(Computer on Module) boards and they seem to be working ok.

    Anyone else experiencing this problem?  My problem is that when I configured my unit as a USB device, and I plugged the USB cable into my PC to trigger an ActiveSync connection I would always get a Device USB Unrecognized message.  I found that the Vendor ID and Prodcut ID(among others) were set to 0(zero), which explains the 'unrecognized' message, but not really why.

    Just thought I'd pass this onto everyone.

    • Marked as answer by Chulk Ches Wednesday, February 20, 2013 2:46 PM
    Tuesday, February 19, 2013 9:54 PM

All replies

  • Hi,

    AFAIK if your target is USB Function then the VID and PID might be hard coded in Function Client Driver.

    The best thing would be enable some messages in the USB Function Client driver whether if it is sending a 0's for VID and PID.

    Regards,

    GSR

    Wednesday, January 16, 2013 5:07 AM
  • Hi Ches,

    Check your Platform.reg entry for the serial class.

    Compare with the following if its not same try the following entry.

    ;------------------------------------------------------------------------------
    ; USB serial class
    ;
    ; @CESYSGEN IF CE_MODULES_SERIALUSBFN
    [HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]
       "DefaultClientDriver"=- ; erase previous default
    [HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]
       "DefaultClientDriver"="Serial_Class"
    ; @CESYSGEN ENDIF CE_MODULES_SERIALUSBFN

    With Regards

    nadini

    Wednesday, January 16, 2013 5:25 AM
  • You need to check the registry for USB Function Client Driver in WinCE 6 client driver registry settings.

    See what VID & PID is set. Correct this with valid VID & PID (As per the device VID/PID)

    When you set "USB\Vid_045E&Pid_00CE" what is that you were able to see on the PC ?

    I also doubt that your USB is working (WinCE ) ... May be VBUS is fine and you get it detected.

    --- Misbah


    Senior Design Engineer T.E.S Electroni Solutions (Bangalore-India) www.tes-dst.com email-misbah.khan@tes-dst.com

    • Proposed as answer by Misbah Khan Wednesday, February 20, 2013 8:33 AM
    Wednesday, January 16, 2013 6:00 AM
  • Here is the respose I got from the maker of the Com board that exhibits this problem:

    "We think that this is a silicon issue of Marvell's PXA310 CPU. Some batch might have problems because the only thing that helps is physical changing of CPU on module. "

    I was sent a new batch of Com(Computer on Module) boards and they seem to be working ok.

    Anyone else experiencing this problem?  My problem is that when I configured my unit as a USB device, and I plugged the USB cable into my PC to trigger an ActiveSync connection I would always get a Device USB Unrecognized message.  I found that the Vendor ID and Prodcut ID(among others) were set to 0(zero), which explains the 'unrecognized' message, but not really why.

    Just thought I'd pass this onto everyone.

    • Marked as answer by Chulk Ches Wednesday, February 20, 2013 2:46 PM
    Tuesday, February 19, 2013 9:54 PM