|
From: Erik HG on 11 May 2008 00:31 I need a kernel-mode proxy driver to control Bluetooth SCO (which only takes internal kernel mode ioctl). Does anyone have an example that they can point me towards? I would normally hack it out myself, but I only have a day (until Monday) to figure it out. Thanks, -Erik
From: Windows Bluetooth Technology Team on 12 May 2008 12:43 Bluetooth SCO was designed to be very similar to the Bluetooth L2CAP from interface point of view. To receive a remote SCO connection, you first register a 'server' with BRB_SCO_REGISTER_SERVER (to clear the registration you call BRB_UNREGISTER_SERVER). You answer the remote connection with BRB_SCO_OPEN_CHANNEL_RESPONSE. If you need to implement the client side of SCO, you just need to use the BRB_SCO_OPEN_CHANNEL with the right parameters for the connection you are making (voice settings, etc, please see Bluetooth Spec for more info on this). At this point with the returned handle you can start sending data via the BRB_SCO_TRANSFER. To understand if SCO is supported in the system, I suggest using the BRB_SCO_GET_SYSTEM_INFO, which also returns other useful information. Remember also to use the BRB_SCO_FLUSH_CHANNEL to flush out any pending I/O packets before destroying connections. Remember to create a SCO connection after you already have a HCI (host controller interface) link in place. The HCI link is created as a side effect of creating a L2CAP communication link (control channel) between the two devices (please see headset, hand-free profile for proper handshake). "Erik HG" <ErikHG(a)discussions.microsoft.com> wrote in message news:3F866AB6-9C9F-4071-9700-671C3B9FA7EC(a)microsoft.com... >I need a kernel-mode proxy driver to control Bluetooth SCO (which only >takes > internal kernel mode ioctl). Does anyone have an example that they can > point > me towards? I would normally hack it out myself, but I only have a day > (until Monday) to figure it out. > > Thanks, > -Erik >
From: Doron Holan [MSFT] on 12 May 2008 12:43 6001.18000\src\bth\bthecho is an L2CAP sample. you can easily replace the l2cap BRBs with SCO. d -- Please do not send e-mail directly to this alias. this alias is for newsgroup purposes only. This posting is provided "AS IS" with no warranties, and confers no rights. "Erik HG" <ErikHG(a)discussions.microsoft.com> wrote in message news:3F866AB6-9C9F-4071-9700-671C3B9FA7EC(a)microsoft.com... >I need a kernel-mode proxy driver to control Bluetooth SCO (which only >takes > internal kernel mode ioctl). Does anyone have an example that they can > point > me towards? I would normally hack it out myself, but I only have a day > (until Monday) to figure it out. > > Thanks, > -Erik >
From: Erik HG on 12 May 2008 13:04 Yes, unfortunately that is what I figured out myself. I am 90% done with porting bthecho at this point (two allnighters in a row). I am definately going to have to do a codeguru article on this one. Who came up with the terrible design spec of making the SCO/L2CAP support only via kernel mode drivers? MS created a beautiful BT interface with Vista, but really messed up on this part of it! -Erik "Doron Holan [MSFT]" wrote: > 6001.18000\src\bth\bthecho is an L2CAP sample. you can easily replace the > l2cap BRBs with SCO. > > d
From: Windows Bluetooth Technology Team on 12 May 2008 13:40 If you look at USB, you will see a lot of similarities. Initially this L2CAP/SCO interface was not supposed to be public; originally the idea was to provide all the necessary kernel plumbing and let developers further enhance Bluetooth via the winsock interface. But for Vista developers wanted more control and a way to write their own kernel Bluetooth drivers (for example: audio drivers). Thus we simply exposed this interface to everyone. I'm pretty sure the further direction is to expose this functionality to user mode (much like WinUSB for USB), but this is a future project which doesn't have a target date yet. "Erik HG" <ErikHG(a)discussions.microsoft.com> wrote in message news:37809E3C-428D-4384-B978-6567273CA252(a)microsoft.com... > Yes, unfortunately that is what I figured out myself. I am 90% done with > porting bthecho at this point (two allnighters in a row). I am definately > going to have to do a codeguru article on this one. > > Who came up with the terrible design spec of making the SCO/L2CAP support > only via kernel mode drivers? MS created a beautiful BT interface with > Vista, but really messed up on this part of it! > > -Erik > > "Doron Holan [MSFT]" wrote: > >> 6001.18000\src\bth\bthecho is an L2CAP sample. you can easily replace >> the >> l2cap BRBs with SCO. >> >> d >
|
Next
|
Last
Pages: 1 2 3 Prev: Bluetooth SCO connection requires developing kernel driver? Next: OS Question |