"Driver Error" when trying BLE HIDS mouse example disabling SMP

Hi! 

I have a working example of BLE HIDs mouse in nRF52DK. I changed the HID report and works ok in Windows 10.

My problem is I need to connect to PC without confirming connection from MCU side. I tried disabling SMP and it connects automatically, but then after a few seconds, Windows shows "driver error"

Any suggestion? Is it possible to pair with Windows without SMP? Any way to use SMP and automatically accept connection? Any way to do not see the confirmation numbers from Windows?

Thank you!

Pedro.

Parents
  • Hi Pedro, 

    By spec, the communication between a HID device (mouse/keyboard) and the host must be encrypted. It's not allowed to have open connection for a mouse/keyboard for security reason. So Windows expect the device to support SMP (pairing) if the device doesn't have it supported Windows will display "Driver error". 

    One option I can think of is to run your own application on Windows. Then you can make your device connect to Windows via the app. It doesn't need to be HIDs hence doesn't require encryption. Your app on Windows should be incharge of converting BLE data to mouse/keyboard input to Windows. 

  • Hi Hung Bui,

    Thank you for your answer. I need to use HID so I will enable SMP and automatically accept connection from MCU.

    Is there any way to do not show "Numeric Match"? 

  • Hi Pedro, 


    Did it work before ?  Or it has always been like that ? 

    Which Jlink you used ? In my computer it does show up in CONNECTED DEVICES regardless if I connect the debugger to a external board or not. 


    Could you try doing debugging and programming via our DK (that connect to your custom board via Debug Out) ? 


  • Yes it worked before. It always worked. Just suddenly stopped appearing in available devices.

    In my computer it does show up in CONNECTED DEVICES regardless if I connect the debugger to a external board or not

    Mine had same behaviour when it worked. I have J-Link BASE Classic.

    Could you try doing debugging and programming via our DK (that connect to your custom board via Debug Out) ?

    I can do that, but I'd prefer to use J-Link.

    It's very strange. I don't know what more to do. Maybe clean uninstall and reinstall of vscode?

  • I'm not so sure. Please try nRF Connect for Desktop Programmer if you can detect the programmer. 
    Maybe Jlink driver has something to here ? Could you try update Jlink ? 

    I assume you still can see the DK in the list when you connect a DK in ? 

  • I assume you still can see the DK in the list when you connect a DK in ? 

    At the beggining yes, I could see DK in CONNECTED DEVICES, but now, suddenly I can't see DK neither J-Link.

    I've fully unistalled vscode, j-link drivers and nrf connect and then reinstalled and same result. Now in CONNECTED DEVICES I see nothing.

    In nRF Connect for Desktop Programmer I see all: nrF52DK, J-Link, and Nicla Sense CMSIS-DAP (This last although it is integrated in Nicla board to program it, I never saw in vscode)

    I don't know what more to do. I reinstalled all and now it is even worse. I see nothing in CONNECTED DEVICES.

    Any idea? Somebody that also happened to him?

  • I got it! It's a bug with just released (4 hours ago) nRF Connect for VS Code v2023.4.148 extension. If I downgrade to v2023.2.56 it works! It detects both DK and J-Link.

Reply Children
Related