I'm trying to write a J2ME MIDlet for using my phone as a wireless
mouse or simplified keyboard for a PC.
In practice i'm trying to implement the Bluetooth HID Profile on top
of JSR 82.
I found the infamous JSR82 L2CAP obstacle: PSM can ony be in the range
0x1001 - 0xFFFF.
This leaves out the HID PSMs (0x11 for control channel and
0x13 for interrupt channel).
Only God knows the reason for this limitations :-(
Apart of this i have a couple of questions:
I create a ServiceRecord compliant with the HID profile (in fact the bluetooth
stack on the PC recognizes the HID service).
In the ServiceRecord i inserted the attributes for both the HID
Contron channel (ProtocolDescriptorList, this attribute is inserted by
JSR82 and cannot be modified) ed Interrupt channel (AdditionalProtocolDescriptorLists).
So the questions are:
- Is the Bluetooth stack in the phone listening on this 2 PSM channel i defined in the service record ?
- The Bluetooth stack on the PC (i tried Widcomm and the native stack
in Windows XP) uses SDP to identify the service.
Why it continues to try to open L2CAP channel 0x11 and 0x13 when through
the attributes in the ServiceRecord i told him to use different PSM ?
Does anyone knows of a smarter bluetooth implementations ?
Thanks a lot to anyone