locked
Bluetooth LE Samples and WdpSamples and TI CC2540 demo kit

    Question

  • I installed a window 8 customer preview on my older laptop and I purchased an IOMega USB 4.0 adapter. Then I connected to the TI CC2540 demo kit. I can see the device is added into the device manager under Bluetooth.

    Then I downloaded WdpSample code and compiled them in windows 8 release x64 configuration. Then I tried to follow the steps to update driver (on the device with ffe0 in the hardward ID), but the driver update failed. "Windows Found Driver software for your device but encountered an error while attempting to install it. "TI CC2540 Simple keys Service Sample" and "A problem was encountered while attempting to add the driver to the store". Then I checked the setupapi.dev.log file, the error is "Verifying file against (valid) catalog failed! (0x00000057)" "Error 87: The parameter is incorrect". 

    I did a search on this forums and found someone else got it to work. I am not sue what I should do next. Any help would be appreciated.

    Monday, May 28, 2012 11:49 PM

Answers

  • You might want to call the device driver manufacturer.  If you wish to investigate:

    Any signing issues will be resolved if driver signatures enforcement is disabled.  Code 10, can’t start, means that at least DriverEntry is getting entered. 

    There are a few things you can do:

    1. Enable verbose setupapi logging (loglevel = 0x20007070) and then run the install
    2. If you are getting an “UNSIGNED DRIVER” error, even after disabling verification, this implies a cross signature is being checked… embed signing with anything will allow it to load.. but will not cause a code 10 to away.
    3. Debug DriverEntry and AddDevice for errors

    Best Wishes - Eric

    Monday, June 11, 2012 11:14 PM
    Moderator

All replies

  • Yves,

    Could you post to the link of the person that got it working?

    Best Wishes - Eric

    Tuesday, May 29, 2012 6:27 AM
    Moderator
  • Eric,

    Link is following. And in the first post, this person said that he got the driver replaced successfully.

    http://social.msdn.microsoft.com/Forums/en-US/tailoringappsfordevices/thread/b775b78a-2288-47c3-894b-8c2a0adc072f



    Yves Liu


    • Edited by Yves Liu Tuesday, May 29, 2012 9:32 PM
    Tuesday, May 29, 2012 5:40 PM
  • Update: It turned out that the driver is not signed. So, after I boot the system into the "Disable driver signature enforcement" mode, I can install the driver. But at the end of the installation, the error says "Driver cannot start, error code 10". Any ideas?


    Yves Liu

    Wednesday, May 30, 2012 5:54 AM
  • You might want to call the device driver manufacturer.  If you wish to investigate:

    Any signing issues will be resolved if driver signatures enforcement is disabled.  Code 10, can’t start, means that at least DriverEntry is getting entered. 

    There are a few things you can do:

    1. Enable verbose setupapi logging (loglevel = 0x20007070) and then run the install
    2. If you are getting an “UNSIGNED DRIVER” error, even after disabling verification, this implies a cross signature is being checked… embed signing with anything will allow it to load.. but will not cause a code 10 to away.
    3. Debug DriverEntry and AddDevice for errors

    Best Wishes - Eric

    Monday, June 11, 2012 11:14 PM
    Moderator
  • Hello Eric,

    So, I got the driver installed correctly now. So, I moved along but ran into another problem now.

    After I installed the driver, I then wrote a test code to use the CC2540 demo kit. Here is the code

     HRESULT hr = CoCreateInstance(CLSID_PortableDeviceManager, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pDeviceManager));
    if(SUCCEEDED(hr)){

       LPWSTR pszDevicePnPID = NULL;
                DWORD cDevices = 1;
                hr = pDeviceManager->GetDevices(&pszDevicePnPID, &cDevices);

                if (SUCCEEDED(hr) && cDevices > 0)
                {
             IPortableDeviceDispatchFactory * pDeviceDispatchFactory;
                      hr = CoCreateInstance(CLSID_PortableDeviceDispatchFactory, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pDeviceDispatchFactory));

                       if (SUCCEEDED(hr))
                       {
    IDispatch* pDeviceObject = NULL;
                            hr = pDeviceDispatchFactory->GetDeviceDispatch(pszDevicePnPID, &pDeviceObject);
    ..........................
     
    The last line GetDeviceDispatch returns E_ACCESSDENIED or 0x80070005. I tried to use other application to access this device, same error. Any idea what I did wrong? Do I need to set some permission stuff in the app manifest file?

    Thanks


    Yves Liu

    Monday, July 16, 2012 1:51 AM