| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Signed Write Command data is as follow:
Attribute Handle (2 octets)
Data (0 or more octets)
Signature (12 octets).
> ACL Data RX: Handle 64 flags 0x02 dlen 20
ATT: Signed Write Command (0xd2) len 15
Handle: 0x001f
Data: 00
Signature: 00000000df559de6549e1757
|
|
|
|
| |
Make sure that font is always visible on white background.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The group data is as follow:
Attribute Handle (2 octets) End Group Handle (2 octets) Attribute Value
(Length - 4) octets
But since only primary and secondary can be used in ATT Read by Group
Type Request the value is garanteed to be a UUID:
< ACL Data TX: Handle 3585 flags 0x00 dlen 24
ATT: Read By Group Type Response (0x11) len 19
Attribute data length: 6
Attribute group list: 3 entries
Handle range: 0x0001-0x0005
UUID: Generic Access Profile (0x1800)
Handle range: 0x0006-0x000d
UUID: Heart Rate (0x180d)
Handle range: 0x000e-0x0011
UUID: Battery Service (0x180f)
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Handles the common profile and service error codes sent over the
Attribute Protocol in btgatt-client and monitor.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
BNEP: General Ethernet (0x00|1)
dst 00:00:00:00:00:00 src 00:00:00:00:00:00 [proto 0x0300]
Ext Control(0x00|1) len 0x0f
Filter MultAddr Set (0x05)
Length: 0x000c
03:00:00:20:00:00 - 03:00:00:20:00:00
Ext Unknown(0x7f|0) len 0x0a
ac ac ac ac ac ac ac ac ac 3c
3b 3a 39 38 37 36 35 34 33 32 31 30 2f 2e 2d 2c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
BNEP: Control (0x01|0)
Setup Conn Rsp (0x02)
Rsp msg: Operation Successful(0x0000)
BNEP: Control (0x01|0)
Filter NetType Rsp (0x04)
Rsp msg: Operation Successful(0x0000)
BNEP: Control (0x01|0)
Filter MultAddr Rsp (0x06)
Rsp msg: Operation Failed - Invalid Dst Srv UUID(0x0001)
|
|
|
|
|
|
|
| |
BNEP: Control (0x01|0)
Filter MultAddr Set (0x05)
Length: 0x000c
01:00:00:00:00:00 - ff:ff:ff:ff:ff:ff
|
|
|
|
|
|
|
| |
BNEP: Control (0x01|0)
Filter NetType Set (0x03)
Length: 0x0004
0x86dd - 0x86dd
|
|
|
|
|
|
|
|
| |
BNEP: Control (0x01|0)
Setup Conn Req (0x01)
Size: 0x02
Dst: 0x1116(NAP)
Src: 0x1115(PANU)
|
|
|
|
|
|
| |
BNEP: Control (0x01|0)
Command Not Understood (0x00)
Type: 0xff
|
| |
|
|
|
|
|
|
|
| |
BNEP: Compressed Ethernet DestOnly (0x04|0)
dst 00:00:00:00:00:00 [proto 0x0000]
00 00 00 00 00 00 61 62 63 64 65 66 30 31 32 33
34 35 36 37 38 39 5f 62 6e 65 70 5f 74 65 73 74
|
|
|
|
|
|
|
| |
BNEP: Compressed Ethernet SrcOnly (0x03|0)
src 00:00:00:00:00:00 [proto 0x0300]
3c 3b 3a 39 38 37 36 35 34 33 32 31 30 2f 2e 2d
2c 2b 2a 29 28 27 26 25 24 23 22 21 20 1f 1e 1d
|
|
|
|
|
|
|
| |
BNEP: Compressed Ethernet (0x02|0)
[proto 0x0300]
3c 3b 3a 39 38 37 36 35 34 33 32 31 30 2f 2e 2d
2c 2b 2a 29 28 27 26 25 24 23 22 21 20 1f 1e 1d
|
|
|
|
|
|
|
| |
BNEP: Control (0x01|0)
Filter MultAddr Set (0x05)
00 30 ff ff ff ff ff ff ff ff ff ff ff ff 33 33
00 00 00 01 33 33 00 00 00 01 01 00 5e 00 00 01
|
|
|
|
|
|
|
| |
BNEP: General Ethernet (0x00|0)
dst 00:00:00:00:00:00 src 00:00:00:00:00:00 [proto 0x0300]
3c 3b 3a 39 38 37 36 35 34 33 32 31 30 2f 2e 2d
2c 2b 2a 29 28 27 26 25 24 23 22 21 20 1f 1e 1d
|
|
|
|
| |
Support for AVRCP GeneralReject added to btmon.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support for AVRCP Search item added to btmon.
Channel: 65 len 17 ctrl 0x0000 [PSM 27 mode 3] {chan 1}
I-frame: Unsegmented TxSeq 0 ReqSeq 0
AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e
AVRCP: Search: len 0x0007
CharsetID: 0x006a (UTF-8)
Length: 0x0003 (3)
String: New
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support for decoding AVRCP GetItemAttributes added to btmon.
Channel: 65 len 26 ctrl 0x0102 [PSM 27 mode 3] {chan 1}
I-frame: Unsegmented TxSeq 1 ReqSeq 1
AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e
AVRCP: GetItemAttributes: len 0x0010
Scope: 0x01 (Media Player Virtual Filesystem)
UID: 0x0000000000000001 (1)
UIDCounter: 0x0000 (0)
AttributeCount: 0x01 (1)
AttributeID: 0x00000001 (Title)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for decoding AVRCP ChangePath in bluetooth monitor.
Channel: 65 len 21 ctrl 0x0000 [PSM 27 mode 3] {chan 1}
I-frame: Unsegmented TxSeq 0 ReqSeq 0
AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e
AVRCP: ChangePath: len 0x000b
UIDCounter: 0x0000 (0)
Direction: 0x01 (Folder Down)
FolderUID: 0x 1 (1)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for decoding GetFolderItems(MediaElementItem) for avrcp in
bluetooth monitor.
Channel: 65 len 20 ctrl 0x0000 [PSM 27 mode 3] {chan 1}
I-frame: Unsegmented TxSeq 0 ReqSeq 0
AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e
AVRCP: GetFolderItems: len 0x000a
Scope: 0x01 (Media Player Virtual Filesystem)
StartItem: 0x00000000 (0)
EndItem: 0x0000000a (10)
AttributeCount: 0xff (255)
AttributeID: 0x0000326e (Reserved)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for decoding GetFolderItems(FolderItem) for avrcp in
bluetooth monitor.
Channel: 65 len 20 ctrl 0x0000 [PSM 27 mode 3] {chan 1}
I-frame: Unsegmented TxSeq 0 ReqSeq 0
AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e
AVRCP: GetFolderItems: len 0x000a
Scope: 0x01 (Media Player Virtual Filesystem)
StartItem: 0x00000000 (0)
EndItem: 0x0000000a (10)
AttributeCount: 0xff (255)
AttributeID: 0x0000326e (Reserved)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for decoding GetFolderItems(MediaPlayerItem) for avrcp
in bluetooth monitor.
Channel: 65 len 20 ctrl 0x0306 [PSM 27 mode 3] {chan 1}
I-frame: Unsegmented TxSeq 3 ReqSeq 3
AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e
AVRCP: GetFolderItems: len 0x000a
Scope: 0x00 (Media Player List)
StartItem: 0x00000000 (0)
EndItem: 0x00000064 (100)
AttributeCount: 0x00 (0)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Support for decoding AVRCP GetFolderItems added in btmon.
Channel: 65 len 20 ctrl 0x0000 [PSM 27 mode 3] {chan 1}
I-frame: Unsegmented TxSeq 0 ReqSeq 0
AVCTP Browsing: Command: type 0x00 label 0 PID 0x110e
AVRCP: GetFolderItems: len 0x000a
Scope: 0x01 (Media Player Virtual Filesystem)
StartItem: 0x00000000 (0)
EndItem: 0x0000000a (10)
AttributeCount: 0xff (255)
AttributeID: 0x0000326e (Reserved)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> ACL Data RX: Handle 71 flags 0x02 dlen 11
Channel: 64 len 7 [PSM 15 mode 0] {chan 0}
BNEP: Control (0x01|0)
01 02 11 16 11 15 ......
> ACL Data RX: Handle 71 flags 0x01 dlen 35
Channel: 64 len 1532 [PSM 15 mode 0] {chan 0}
BNEP: General Ethernet (0x00|1)
00 00 00 00 00 00 00 00 00 00 00 00 08 00 00 0f ................
05 00 0c 03 00 00 20 00 00 03 00 00 20 00 00 3c ...... ..... ..<
> ACL Data RX: Handle 71 flags 0x01 dlen 12
Channel: 64 len 1509 [PSM 15 mode 0] {chan 0}
BNEP: Compressed Ethernet Dest Only (0x04|0)
00 00 00 00 00 00 08 00 3c 3b 3a 39 38 37 36 35 ........<;:98765
34 33 32 31 30 2f 2e 2d 2c 2b 2a 29 28 27 26 25 43210/.-,+*)('&%
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The 'master' parameter was renamed to 'type' and now has two new
possible values.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This uses identifier to match simultaneous L2CAP connect requests
and responses.
< ACL Data TX: Handle 3585 flags 0x00 dlen 18
LE L2CAP: LE Connection Request (0x14) ident 2 len 10
PSM: 131 (0x0083)
Source CID: 65
MTU: 672
MPS: 672
Credits: 10
> ACL Data RX: Handle 3585 flags 0x02 dlen 18
LE L2CAP: LE Connection Response (0x15) ident 2 len 10
Destination CID: 65
MTU: 23
MPS: 23
Credits: 5
Result: Connection successful (0x0000)
< ACL Data TX: Handle 3585 flags 0x00 dlen 27
Channel: 65 len 23 [PSM 131 mode 0] {chan 1}
17 00 00 00 00 00 17 00 7f 7f 7f 7f 7f 7f 7f 7f ................
7f 7f 7f 7f 7f 7f 7f .......
< ACL Data TX: Handle 3585 flags 0x00 dlen 6
Channel: 65 len 2 [PSM 131 mode 0] {chan 1}
7f 7f ..
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Current code could fail to pick up right PSM resulting in using PSM 1
for non-SDP traffic.
Fix following:
> ACL Data RX: Handle 3 flags 0x02 dlen 9
Channel: 64 len 5 [PSM 1 mode 0] {chan 0}
invalid frame size
> ACL Data RX: Handle 3 flags 0x02 dlen 20
Channel: 64 len 16 [PSM 1 mode 0] {chan 0}
invalid frame size
2b 42 52 53 46 3d 32 35 35 0d e4 +BRSF=255..
< ACL Data TX: Handle 3 flags 0x00 dlen 28
Channel: 256 len 24 [PSM 3 mode 0] {chan 1}
RFCOMM: Unnumbered Info with Header Check (UIH)(0xef)
Address: 0x69 cr 0 dlci 0x1a
Control: 0xef poll/final 0
Length: 20
FCS: 0x3e
0d 0a 2b 42 52 53 46 3a 20 38 37 31 0d 0a 0d 0a ..+BRSF: 871....
4f 4b 0d 0a 3e OK..>
instead of:
> ACL Data RX: Handle 4 flags 0x02 dlen 20
Channel: 64 len 16 [PSM 3 mode 0] {chan 1}
RFCOMM: Unnumbered Info with Header Check (UIH)(0xef)
Address: 0x6b cr 1 dlci 0x1a
Control: 0xef poll/final 0
Length: 12
FCS: 0xe4
41 54 2b 42 52 53 46 3d 32 35 35 0d e4 AT+BRSF=255..
< ACL Data TX: Handle 4 flags 0x00 dlen 28
Channel: 384 len 24 [PSM 3 mode 0] {chan 1}
RFCOMM: Unnumbered Info with Header Check (UIH)(0xef)
Address: 0x69 cr 0 dlci 0x1a
Control: 0xef poll/final 0
Length: 20
FCS: 0x3e
0d 0a 2b 42 52 53 46 3a 20 38 37 31 0d 0a 0d 0a ..+BRSF: 871....
4f 4b 0d 0a 3e OK..>
|
|
|
|
| |
This allows to have conditions check in single place.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
values
|
| |
|
| |
|
| |
|