Other Parts Discussed in Thread: CC2564
Hello,
I am having issues running BlueZ 5.22 with the CC2564 chip. I am running as a peripheral using the Linux 3.17+ kernel and trying to connect to my peripheral using a Windows 7 laptop.
In my user-space program, I register with the running SDP daemon as a keyboard, and my device is discoverable on the laptop as a keyboard. However, when Windows attempts to connect to the device, it will fail.
I've used sniffing on both sides: on the Linux (device) side and on the host side (I used a USB sniffer with my USB Bluetooth dongle), and the problem seems to arise right before I would expect Windows to request a connection on PSM 0x11 and 0x13 (17 & 19, the control and interrupt channels). All of the lower-level negotiation has completed, but it seems that WIndows never opens up these two channels.
Now what makes this odd is that the same program works when I try to connect with the same laptop running Linux, with a different Windows 7 computer, with an iPhone and an iPad.
To debug this, I've tried copying the characteristics of the Apple Bluetooth Keyboard that I have (which connects successfully with the problematic Windows 7 machine), and still no luck.
I can only hope that maybe there is a newer TI firmware that can be used? Outside of that, I can't think of what else to try. I've tried working through WINDBG to debug the Windows driver, but that is a rat-hole that didn't really shed any light on anything. Based on my sniffers, it seems that everything from the HCI layer on up is identical to the Apple Wireless Keyboard, so is it possible that it's something at a lower layer that I can't see?
Setup:
Linux Kernel 3.17+
Firmware: TIInit_6.6.15.bts
BlueZ 5.22
Any help is appreciated!