KDMF Bluetooth Profile Driver, querying for the SDP & PARSE Interfaces fail

I am implementing a basic BT Profile driver (server) in accordance to the msdn Echo sample @ https://code.msdn.microsoft.com/windowshardware/Bluetooth-Echo-Sample-6f0a62d6

Using WdfFdoQueryForInterface to query for BTHDDI_PROFILE_DRIVER_INTERFACE SUCCEEDs.
However, Querying for BTHDDI_SDP_PARSE_INTERFACE & BTHDDI_SDP_NODE_INTERFACE fail with STATUS_NOT_SUPPORTED.

My Driver is registered under BTHENUM

The “msdn Echo sample” works perfectly.

Comparing the INF & Registry footprint of my project and the msdn sample is identical with the exception of the ServiceGUID…

What am I missing here ?
Why can’t I get a reference to the interfaces ?
Why does WdfFdoQueryForInterface returns STATUS_NOT_SUPPORTED ?

BTHENUM Registry footprint:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\BTHENUM{c07508f2-b970-43ca-b5dd-cc4f2391bef5}_LOCALMFG&0000]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\BTHENUM{c07508f2-b970-43ca-b5dd-cc4f2391bef5}_LOCALMFG&0000\8&107dd15c&0&000000000000_00000000]
“DeviceDesc”=“@oem10.inf,%hidprofsrv.devicedesc%;HIDProfSrv Device”
“Capabilities”=dword:000000c0
“ConfigFlags”=dword:00000000
“ContainerID”=“{bfc051ae-57d5-11e4-8253-806e6f6e6963}”
“HardwareID”=hex(7):42,00,54,00,48,00,45,00,4e,00,55,00,4d,00,5c,00,7b,00,63,\
00,30,00,37,00,35,00,30,00,38,00,66,00,32,00,2d,00,62,00,39,00,37,00,30,00,\
2d,00,34,00,33,00,63,00,61,00,2d,00,62,00,35,00,64,00,64,00,2d,00,63,00,63,\
00,34,00,66,00,32,00,33,00,39,00,31,00,62,00,65,00,66,00,35,00,7d,00,5f,00,\
4c,00,4f,00,43,00,41,00,4c,00,4d,00,46,00,47,00,26,00,30,00,30,00,30,00,30,\
00,00,00,00,00
“CompatibleIDs”=hex(7):42,00,54,00,48,00,45,00,4e,00,55,00,4d,00,5c,00,7b,00,\
63,00,30,00,37,00,35,00,30,00,38,00,66,00,32,00,2d,00,62,00,39,00,37,00,30,\
00,2d,00,34,00,33,00,63,00,61,00,2d,00,62,00,35,00,64,00,64,00,2d,00,63,00,\
63,00,34,00,66,00,32,00,33,00,39,00,31,00,62,00,65,00,66,00,35,00,7d,00,00,\
00,00,00
“ClassGUID”=“{e0cbf06c-cd8b-4647-bb8a-263b43f0f974}”
“Driver”=“{e0cbf06c-cd8b-4647-bb8a-263b43f0f974}\0002”
“Mfg”=“@oem10.inf,%manufacturername%;NewCORP Inc”
“Service”=“HIDProfSrv”

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\BTHENUM{c07508f2-b970-43ca-b5dd-cc4f2391bef5}_LOCALMFG&0000\8&107dd15c&0&000000000000_00000000\Device Parameters]
“Bluetooth_UniqueID”=“{c07508f2-b970-43ca-b5dd-cc4f2391bef5}#000000000000_00000000
“ConnectionCount”=dword:00000000

…\CurrentControlSet\Services\HIDProfSrv Registry footprint:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HIDProfSrv]
“Type”=dword:00000001
“Start”=dword:00000003
“ErrorControl”=dword:00000001
“Tag”=dword:00000038
“ImagePath”=hex(2):5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
74,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,52,\
00,49,00,56,00,45,00,52,00,53,00,5c,00,48,00,49,00,44,00,50,00,72,00,6f,00,\
66,00,53,00,72,00,76,00,2e,00,73,00,79,00,73,00,00,00
“DisplayName”=“@oem10.inf,%HIDProfSrv.SVCDESC%;HIDProfSrv Service”
“Group”=“Extended Base”
“Owners”=hex(7):6f,00,65,00,6d,00,31,00,30,00,2e,00,69,00,6e,00,66,00,00,00,00,\
00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HIDProfSrv\Parameters]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HIDProfSrv\Parameters\Wdf]
“WdfMajorVersion”=dword:00000001
“WdfMinorVersion”=dword:0000000b
“KmdfLibraryVersion”=“1.11”
“TimeOfLastSqmLog”=hex(b):9a,c3,ff,92,e8,eb,cf,01

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HIDProfSrv\Enum]
“Count”=dword:00000001
“NextInstance”=dword:00000001
“0”=“BTHENUM\{c07508f2-b970-43ca-b5dd-cc4f2391bef5}_LOCALMFG&0000\8&107dd15c&0&000000000000_00000000”
“INITSTARTFAILED”=dword:00000001

This post is to be deleted since the registry dump I have added part of the post seemed to corrupt it…

Re-posting since my last post got corrupted (gibberish in the post)

I am implementing a basic BT Profile driver (server) in accordance to the msdn Echo sample @ https://code.msdn.microsoft.com/windowshardware/Bluetooth-Echo-Sample-6f0a62d6

Using WdfFdoQueryForInterface to query for BTHDDI_PROFILE_DRIVER_INTERFACE SUCCEEDs.
However, Querying for BTHDDI_SDP_PARSE_INTERFACE & BTHDDI_SDP_NODE_INTERFACE fail with STATUS_NOT_SUPPORTED.

My Driver is registered under BTHENUM

The “msdn Echo sample” works perfectly.

Comparing the INF & Registry footprint of my project and the msdn sample is identical with the exception of the ServiceGUID…

What am I missing here ?
Why can’t I get a reference to the interfaces ?
Why does WdfFdoQueryForInterface returns STATUS_NOT_SUPPORTED ?

Elaborate description can be found @ https://social.msdn.microsoft.com/Forums/en-US/12c16d16-fa86-4d6d-9faf-73ea33e4c355/kdmf-bluetooth-profile-driver-wdffdoqueryforinterface-returns-statusnotsupported0xc00000bb?forum=wdk