Question

I'm using AM335x Beagle Bone black with WinCE 7 BSP VS 2008 on a Windows 7 PC. I'm using Mobile Device Centre. When the device boots, I'm getting 'USB device not recognized' pop-up message. I have checked the following.

  1. Required catalog items have been added
  2. All the USB drivers are in final image
  3. Tested it in windows XP 32-bit PC - error persists
  4. All the USB drivers are getting loaded
  5. Checked for mobile device-based updates in PC

The catalog items I have added are,

  1. Core OS\Windows Embedded Compact\Device Drivers\USB\USB Function\USB Function Clients\USBFN Serial Client
  2. Core OS\Windows Embedded Compact\Device Drivers\USB\USB Function\USB Function Support
  3. Core OS\Windows Embedded Compact\Applications - End User\Active Sync\File Sync
  4. Core OS\Windows Embedded Compact\Applications - End User\Active Sync
  5. Core OS\Windows Embedded Compact\Shell and User Interface\Shell\Graphical Shell\Standard Shell
  6. Third Party\BSP\AM33X_BSP\ARMV7\Drivers\MUSB OTG Driver

Am I missing any catalog item? What else can I verify for ActiveSync connection?

UPDATE 1:

This catalog item got included due to dependency. Is it any kind of reason for this issue?

Core OS\Windows Embedded Compact\Device Drivers\USB\USB Host\USB
    Host Support

As per the logs, I noticed that serialusbfn.dll is not getting loaded. How to get it loaded? In the registry its order number is not given.

Was it helpful?

Solution 2

It's now working in both Windows 7 and Windows XP.

Previously I was building the BSP in Debug mode. I changed it to Release Mode.

I ensured that KITL is disabled in OS Design and disabled KITL in eboot also when the device boots.

In Windows XP, it gets connected just like that.

In Windows 7, Windows update detected the device and installed drivers for it. It didn't get connected the first time (or maybe I didn't wait for few more minutes). The second time also Windows update installed drivers and got connected. From then, its getting connected every time in 2 minutes. No installation of drivers after that.

I think, due to some timing issues, Active Sync is not getting connected in Debug mode.

As per the ARM A8 User Guide, the reason why KITL and Active Sync can't be together at the same time is,

The USB RNDIS KITL transport uses a dedicated set of routines to communicate with the kernel. It does not use the standard USB function or OTG stacks. It is critical that all USB drivers be disabled when USB RNDIS KITL is in use. The USB RNDIS KITL implementation automatically disables the standard USB drivers when KITL is active.

Thanks to Keshava and Valter for the continuous help!

OTHER TIPS

If Windows is not asking for a driver it means that, after the physical connection, the device has provided no valid IDs and this should mean that the low-level USB link is not working as expected. IIRC the controller is an OTG controller and you need to configure it to behave as both host and device (or device only in your case) when you build the OSImage.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top