| EPox Presenter |
| ============== |
| |
| # hcitool inq |
| Inquiring ... |
| 00:04:61:aa:bb:cc clock offset: 0x1ded class: 0x004000 |
| |
| # hcitool info 00:04:61:aa:bb:cc |
| Requesting information ... |
| BD Address: 00:04:61:aa:bb:cc |
| OUI Company: EPOX Computer Co., Ltd. (00-04-61) |
| Device Name: EPox BT-PM01B aabbcc |
| LMP Version: 1.1 (0x1) LMP Subversion: 0xf78 |
| Manufacturer: Cambridge Silicon Radio (10) |
| Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00 |
| <3-slot packets> <5-slot packets> <encryption> <slot offset> |
| <timing accuracy> <role switch> <hold mode> <sniff mode> |
| <park state> <RSSI> <channel quality> <SCO link> <HV2 packets> |
| <HV3 packets> <u-law log> <A-law log> <CVSD> <paging scheme> |
| <power control> <transparent SCO> |
| |
| # sdptool records --raw 00:04:61:aa:bb:cc |
| Sequence |
| Attribute 0x0000 - ServiceRecordHandle |
| UINT32 0x00010000 |
| Attribute 0x0001 - ServiceClassIDList |
| Sequence |
| UUID16 0x1101 - SerialPort |
| Attribute 0x0004 - ProtocolDescriptorList |
| Sequence |
| Sequence |
| UUID16 0x0100 - L2CAP |
| Sequence |
| UUID16 0x0003 - RFCOMM |
| UINT8 0x01 |
| Attribute 0x0100 |
| String Cable Replacement |
| |
| |
| J-Three Keyboard |
| ================ |
| |
| # hcitool inq |
| Inquiring ... |
| 00:0A:3A:aa:bb:cc clock offset: 0x3039 class: 0x001f00 |
| |
| # hcitool info 00:0A:3A:aa:bb:cc |
| Password: |
| Requesting information ... |
| BD Address: 00:0A:3A:aa:bb:cc |
| OUI Company: J-THREE INTERNATIONAL Holding Co., Ltd. (00-0A-3A) |
| Device Name: KEYBOARD |
| LMP Version: 1.1 (0x1) LMP Subversion: 0x2c2 |
| Manufacturer: Cambridge Silicon Radio (10) |
| Features: 0xbc 0x06 0x07 0x00 0x00 0x00 0x00 0x00 |
| <encryption> <slot offset> <timing accuracy> <role switch> |
| <sniff mode> <RSSI> <channel quality> <CVSD> <paging scheme> |
| <power control> |
| |
| # sdptool records --raw 00:0A:3A:aa:bb:cc |
| Sequence |
| Attribute 0x0000 - ServiceRecordHandle |
| UINT32 0x00010000 |
| Attribute 0x0001 - ServiceClassIDList |
| Sequence |
| UUID16 0x1101 - SerialPort |
| Attribute 0x0004 - ProtocolDescriptorList |
| Sequence |
| Sequence |
| UUID16 0x0100 - L2CAP |
| Sequence |
| UUID16 0x0003 - RFCOMM |
| UINT8 0x01 |
| Attribute 0x0006 - LanguageBaseAttributeIDList |
| Sequence |
| UINT16 0x656e |
| UINT16 0x006a |
| UINT16 0x0100 |
| Attribute 0x0100 |
| String SPP slave |
| |
| |
| Celluon Laserkey Keyboard |
| ========================= |
| |
| # hcitool inq |
| Inquiring ... |
| 00:0B:24:aa:bb:cc clock offset: 0x3ab6 class: 0x400210 |
| |
| # hcitool info 00:0B:24:aa:bb:cc |
| Requesting information ... |
| BD Address: 00:0B:24:aa:bb:cc |
| OUI Company: AirLogic (00-0B-24) |
| Device Name: CL800BT |
| LMP Version: 1.1 (0x1) LMP Subversion: 0x291 |
| Manufacturer: Cambridge Silicon Radio (10) |
| Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00 |
| <3-slot packets> <5-slot packets> <encryption> <slot offset> |
| <timing accuracy> <role switch> <hold mode> <sniff mode> |
| <park state> <RSSI> <channel quality> <SCO link> <HV2 packets> |
| <HV3 packets> <u-law log> <A-law log> <CVSD> <paging scheme> |
| <power control> <transparent SCO> |
| |
| # sdptool records --raw 00:0B:24:aa:bb:cc |
| Sequence |
| Attribute 0x0000 - ServiceRecordHandle |
| UINT32 0x00010000 |
| Attribute 0x0001 - ServiceClassIDList |
| Sequence |
| UUID16 0x1101 - SerialPort |
| Attribute 0x0004 - ProtocolDescriptorList |
| Sequence |
| Sequence |
| UUID16 0x0100 - L2CAP |
| Sequence |
| UUID16 0x0003 - RFCOMM |
| UINT8 0x01 |
| Attribute 0x0100 |
| String Serial Port |
| |
| Packet format is as follows (all fields little-endian): |
| 0 uint16 magic # 0x5a5a |
| 2 uint32 unknown # ??? |
| 6 uint8 action # 0 = keyup, 1 = keydown, 2 = repeat |
| # 3, 4, 5, 6 = ??? (Mouse mode) |
| 7 uint8 unknown[9] # ??? |
| 16 uint8 action2 # ??? same as action |
| 17 uint16 x # Horizontal coordinate |
| 19 uint16 y # Vertical coordinate |
| 21 uint16 time # Some sort of timestamp |
| 23 uint8 unknown[5] # ??? |
| 28 uint8 key[] # single byte keycode or 0xff byte |
| # follwed by special keycode byte. |
| Each packet followed by a checksum byte. |