Setting up a Bluetooth PAN












14















I am trying to create a Bluetooth PAN between two devices where I can access REST based web services over the Bluetooth connection. I have had some success with various proof of concepts (both Bluetooth legacy and Bluetooth Smart) but I am having problems trying to create a Group network or a PANU <-> PANU network. I am able to get a network working using the network access point scenario however our use case needs to be a single device communicating with another single device with no routing to any other devices or networks.



To start off with I have a Raspberry Pi with the latest Raspbian OS. This comes with bluez 5.23. To get the network access point working I am using the following code:



brctl addbr pan0
brctl setfd pan0 0
brctl stp pan0 off

ifconfig pan0 inet6 add fd00::5ef3:70ff:xxxx:xxxx
iplink set pan0 up

bt-network –d –s nap pan0


This works great and I am able to connect both Linux and Windows devices. I am also able to access an Apache web server running on the Raspberry Pi from the device that I connected to it.



On the Linux device I use blueman to connect. I have also used the bt-network with the –c option to connect as well. For the Windows device (windows 10 tablet) I pair the device and then connect to the network from the Bluetooth Personal Area Network Devices screen. I did need to use bluetoothctl to trust both devices prior to connecting.



With the NAP working I wanted to attempt to get the group network or the panu-panu network working as described in this document: http://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=6554 These scenarios would work best for us since we do not want to route to any additional networks or devices (the panu-panu scenario would be ideal)



My initial thought is all I should need to do is to change the bt-network command to one of these two commands:



bt-network –d –s gn pan0

bt-network –d –s panu pan0


Both of these commands start up with any errors but I am unable to establish a network connection between my Linux or Windows devices. I am able to successfully pair the devices (I am using the “hciconfig hci0 piscan” command to advertise) but I am unable to bring the network up.



If I run hcidump, I get the following output. Note I included the entire hcidump from the connection attempt so it is pretty long but I thought it may help identify the problem. This is for a group network but I get the same error with the panu-panu scenario:



HCI sniffer - Bluetooth packet analyzer ver 5.23
device: hci0 snap_len: 1500 filter: 0xffffffff
> HCI Event: Connect Request (0x04) plen 10
bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
< HCI Command: Accept Connection Request (0x01|0x0009) plen 7
bdaddr 5C:F3:70:66:XX:XX role 0x00
Role: Master
> HCI Event: Command Status (0x0f) plen 4
Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
> HCI Event: Role Change (0x12) plen 8
status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
Role: Master
> HCI Event: Connect Complete (0x03) plen 11
status 0x00 handle 11 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
< HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
handle 11
> HCI Event: Command Status (0x0f) plen 4
Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
> HCI Event: Max Slots Change (0x1b) plen 3
handle 11 slots 5
> HCI Event: Read Remote Supported Features (0x0b) plen 11
status 0x00 handle 11
Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
< HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
handle 11 page 1
> HCI Event: Command Status (0x0f) plen 4
Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
> HCI Event: Read Remote Extended Features (0x23) plen 13
status 0x00 handle 11 page 1 max 1
Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
< HCI Command: Remote Name Request (0x01|0x0019) plen 10
bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
< ACL data: handle 11 flags 0x00 dlen 10
L2CAP(s): Info req: type 2
> HCI Event: Command Status (0x0f) plen 4
Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
> HCI Event: Remote Name Req Complete (0x07) plen 255
status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
> HCI Event: IO Capability Response (0x32) plen 9
bdaddr 5C:F3:70:66:XX:XX capability 0x01 oob 0x00 auth 0x03
Capability: DisplayYesNo (OOB data not present)
Authentication: Dedicated Bonding (MITM Protection)
> HCI Event: IO Capability Request (0x31) plen 6
bdaddr 5C:F3:70:66:XX:XX
< HCI Command: IO Capability Request Reply (0x01|0x002b) plen 9
bdaddr 5C:F3:70:66:XX:XX capability 0x03 oob 0x00 auth 0x02
Capability: NoInputNoOutput (OOB data not present)
Authentication: Dedicated Bonding (No MITM Protection)
> HCI Event: Command Complete (0x0e) plen 10
IO Capability Request Reply (0x01|0x002b) ncmd 1
status 0x00 bdaddr 5C:F3:70:66:XX:XX
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 11 packets 1
> HCI Event: User Confirmation Request (0x33) plen 10
bdaddr 5C:F3:70:66:XX:XX passkey 774674
< HCI Command: User Confirmation Request Reply (0x01|0x002c) plen 6
bdaddr 5C:F3:70:66:XX:XX
> HCI Event: Command Complete (0x0e) plen 10
User Confirmation Request Reply (0x01|0x002c) ncmd 1
status 0x00 bdaddr 5C:F3:70:66:XX:XX
> HCI Event: Simple Pairing Complete (0x36) plen 7
status 0x00 bdaddr 5C:F3:70:66:XX:XX
> HCI Event: Link Key Notification (0x18) plen 23
bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0 type 4
Type: Unauthenticated Combination Key
> HCI Event: Encrypt Change (0x08) plen 4
status 0x00 handle 11 encrypt 0x01
> ACL data: handle 11 flags 0x02 dlen 10
L2CAP(s): Info req: type 2
> ACL data: handle 11 flags 0x02 dlen 16
L2CAP(s): Info rsp: type 2 result 0
Extended feature mask 0x02b8
Enhanced Retransmission mode
Streaming mode
FCS Option
Fixed Channels
Unicast Connectless Data Reception
< ACL data: handle 11 flags 0x00 dlen 16
L2CAP(s): Info rsp: type 2 result 0
Extended feature mask 0x02b8
Enhanced Retransmission mode
Streaming mode
FCS Option
Fixed Channels
Unicast Connectless Data Reception
< ACL data: handle 11 flags 0x00 dlen 10
L2CAP(s): Info req: type 3
> ACL data: handle 11 flags 0x02 dlen 10
L2CAP(s): Info req: type 3
< ACL data: handle 11 flags 0x00 dlen 20
L2CAP(s): Info rsp: type 3 result 0
Fixed channel list 0x00000006
L2CAP Signalling Channel
L2CAP Connless
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 11 packets 2
> ACL data: handle 11 flags 0x02 dlen 20
L2CAP(s): Info rsp: type 3 result 0
Fixed channel list 0x00000006
L2CAP Signalling Channel
L2CAP Connless
> ACL data: handle 11 flags 0x02 dlen 12
L2CAP(s): Connect req: psm 1 scid 0x0040
< ACL data: handle 11 flags 0x00 dlen 16
L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 0 status 0
Connection successful
< ACL data: handle 11 flags 0x00 dlen 23
L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
RFC 0x00 (Basic)
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 11 packets 2
> ACL data: handle 11 flags 0x02 dlen 23
L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
RFC 0x00 (Basic)
< ACL data: handle 11 flags 0x00 dlen 18
L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
MTU 672
> ACL data: handle 11 flags 0x02 dlen 18
L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
MTU 672
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 11 packets 2
> ACL data: handle 11 flags 0x02 dlen 24
L2CAP(d): cid 0x0040 len 20 [psm 1]
SDP SSA Req: tid 0x0 len 0xf
pat uuid-16 0x0100 (L2CAP)
max 65535
aid(s) 0x0000 - 0xffff
cont 00
< ACL data: handle 11 flags 0x00 dlen 606
L2CAP(d): cid 0x0040 len 602 [psm 1]
SDP SSA Rsp: tid 0x0 len 0x255
count 594
record #0
aid 0x0000 (SrvRecHndl)
uint 0x10001
aid 0x0001 (SrvClassIDList)
< uuid-16 0x1800 >
aid 0x0004 (ProtocolDescList)
< < uuid-16 0x0100 (L2CAP) uint 0x1f > <
uuid-16 0x0007 uint 0x1 uint 0x8 > >
aid 0x0005 (BrwGrpList)
< uuid-16 0x1002 (PubBrwsGrp) >
aid 0x000a (DocURL)
url "http://www.bluez.org/"
aid 0x000b (ClientExeURL)
url "http://www.bluez.org/"
aid 0x000c (IconURL)
url "http://www.bluez.org/"
aid 0x0100 (SrvName)
str "Generic Access Profile"
aid 0x0102 (ProviderName)
str "BlueZ"
record #1
aid 0x0000 (SrvRecHndl)
uint 0x10002
aid 0x0001 (SrvClassIDList)
< uuid-16 0x1801 >
aid 0x0004 (ProtocolDescList)
< < uuid-16 0x0100 (L2CAP) uint 0x1f > <
uuid-16 0x0007 uint 0x10 uint 0x10 > >
aid 0x0005 (BrwGrpList)
< uuid-16 0x1002 (PubBrwsGrp) >
aid 0x0100 (SrvName)
str "Generic Attribute Profile"
aid 0x0102 (ProviderName)
str "BlueZ"
record #2
aid 0x0000 (SrvRecHndl)
uint 0x10003
aid 0x0001 (SrvClassIDList)
< uuid-16 0x110e (AVRemote) uuid-16 0x110f (AVRemCt) >
aid 0x0004 (ProtocolDescList)
< < uuid-16 0x0100 (L2CAP) uint 0x17 > <
uuid-16 0x0017 (AVCTP) uint 0x103 > >
aid 0x0005 (BrwGrpList)
< uuid-16 0x1002 (PubBrwsGrp) >
aid 0x0009 (BTProfileDescList)
< < uuid-16 0x110e (AVRemote) uint 0x105 > >
aid 0x000d (AdditionalProtocolDescLists)
< < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
aid 0x0100 (SrvName)
str "AVRCP CT"
aid 0x0311 (SuppFeatures)
uint 0x4f
record #3
aid 0x0000 (SrvRecHndl)
uint 0x10004
aid 0x0001 (SrvClassIDList)
< uuid-16 0x110c (AVRemTarget) >
aid 0x0004 (ProtocolDescList)
< < uuid-16 0x0100 (L2CAP) uint 0x17 > <
uuid-16 0x0017 (AVCTP) uint 0x103 > >
aid 0x0005 (BrwGrpList)
< uuid-16 0x1002 (PubBrwsGrp) >
aid 0x0009 (BTProfileDescList)
< < uuid-16 0x110e (AVRemote) uint 0x104 > >
aid 0x000d (AdditionalProtocolDescLists)
< < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
aid 0x0100 (SrvName)
str "AVRCP TG"
aid 0x0311 (SuppFeatures)
uint 0x5f
record #4
aid 0x0000 (SrvRecHndl)
uint 0x10005
aid 0x0001 (SrvClassIDList)
< uuid-16 0x1117 (GN) >
aid 0x0004 (ProtocolDescList)
< < uuid-16 0x0100 (L2CAP) uint 0xf > <
uuid-16 0x000f (BNEP) uint 0x100 < uint 0x800 uint 0x806 > > >
aid 0x0005 (BrwGrpList)
< uuid-16 0x1002 (PubBrwsGrp) >
aid 0x0006 (LangBaseAttrIDList)
< uint 0x656e uint 0x6a uint 0x100 >
aid 0x0009 (BTProfileDescList)
< < uuid-16 0x1117 (GN) uint 0x100 > >
aid 0x0100 (SrvName)
str "Network service"
aid 0x0101 (SrvDesc)
str "Network service"
aid 0x030a (SecurityDescription)
uint 0x1
cont 00
> ACL data: handle 11 flags 0x02 dlen 24
L2CAP(d): cid 0x0040 len 20 [psm 1]
SDP SSA Req: tid 0x1 len 0xf
pat uuid-16 0x1200 (PNPInfo)
max 65535
aid(s) 0x0000 - 0xffff
cont 00
< ACL data: handle 11 flags 0x00 dlen 88
L2CAP(d): cid 0x0040 len 84 [psm 1]
SDP SSA Rsp: tid 0x1 len 0x4f
count 76
record #0
aid 0x0000 (SrvRecHndl)
uint 0x10000
aid 0x0001 (SrvClassIDList)
< uuid-16 0x1200 (PNPInfo) >
aid 0x0005 (BrwGrpList)
< uuid-16 0x1002 (PubBrwsGrp) >
aid 0x0009 (BTProfileDescList)
< < uuid-16 0x1200 (PNPInfo) uint 0x103 > >
aid 0x0200 (VersionNumList)
uint 0x103
aid 0x0201 (SrvDBState)
uint 0x1d6b
aid 0x0202 (unknown)
uint 0x246
aid 0x0203 (unknown)
uint 0x517
aid 0x0204 (unknown)
bool 0x1
aid 0x0205 (unknown)
uint 0x2
cont 00
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 11 packets 2
> ACL data: handle 11 flags 0x02 dlen 12
L2CAP(s): Disconn req: dcid 0x0040 scid 0x0040
< ACL data: handle 11 flags 0x00 dlen 12
L2CAP(s): Disconn rsp: dcid 0x0040 scid 0x0040
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 11 packets 1
> HCI Event: Disconn Complete (0x05) plen 4
status 0x00 handle 11 reason 0x13
Reason: Remote User Terminated Connection
> HCI Event: Connect Request (0x04) plen 10
bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
< HCI Command: Accept Connection Request (0x01|0x0009) plen 7
bdaddr 5C:F3:70:66:XX:XX role 0x00
Role: Master
> HCI Event: Command Status (0x0f) plen 4
Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
> HCI Event: Role Change (0x12) plen 8
status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
Role: Master
> HCI Event: Connect Complete (0x03) plen 11
status 0x00 handle 12 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
< HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
handle 12
> HCI Event: Command Status (0x0f) plen 4
Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
> HCI Event: Max Slots Change (0x1b) plen 3
handle 12 slots 5
> HCI Event: Read Remote Supported Features (0x0b) plen 11
status 0x00 handle 12
Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
< HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
handle 12 page 1
> HCI Event: Command Status (0x0f) plen 4
Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
> HCI Event: Read Remote Extended Features (0x23) plen 13
status 0x00 handle 12 page 1 max 1
Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
< HCI Command: Remote Name Request (0x01|0x0019) plen 10
bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
< ACL data: handle 12 flags 0x00 dlen 10
L2CAP(s): Info req: type 2
> HCI Event: Command Status (0x0f) plen 4
Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
> HCI Event: Remote Name Req Complete (0x07) plen 255
status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
> HCI Event: Link Key Request (0x17) plen 6
bdaddr 5C:F3:70:66:XX:XX
< HCI Command: Link Key Request Reply (0x01|0x000b) plen 22
bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0
> HCI Event: Command Complete (0x0e) plen 10
Link Key Request Reply (0x01|0x000b) ncmd 1
status 0x00 bdaddr 5C:F3:70:66:XX:XX
> HCI Event: Encrypt Change (0x08) plen 4
status 0x00 handle 12 encrypt 0x01
> ACL data: handle 12 flags 0x02 dlen 10
L2CAP(s): Info req: type 2
< ACL data: handle 12 flags 0x00 dlen 16
L2CAP(s): Info rsp: type 2 result 0
Extended feature mask 0x02b8
Enhanced Retransmission mode
Streaming mode
FCS Option
Fixed Channels
Unicast Connectless Data Reception
> ACL data: handle 12 flags 0x02 dlen 16
L2CAP(s): Info rsp: type 2 result 0
Extended feature mask 0x02b8
Enhanced Retransmission mode
Streaming mode
FCS Option
Fixed Channels
Unicast Connectless Data Reception
< ACL data: handle 12 flags 0x00 dlen 10
L2CAP(s): Info req: type 3
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 12 packets 2
> ACL data: handle 12 flags 0x02 dlen 10
L2CAP(s): Info req: type 3
< ACL data: handle 12 flags 0x00 dlen 20
L2CAP(s): Info rsp: type 3 result 0
Fixed channel list 0x00000006
L2CAP Signalling Channel
L2CAP Connless
> ACL data: handle 12 flags 0x02 dlen 20
L2CAP(s): Info rsp: type 3 result 0
Fixed channel list 0x00000006
L2CAP Signalling Channel
L2CAP Connless
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 12 packets 2
> ACL data: handle 12 flags 0x02 dlen 12
L2CAP(s): Connect req: psm 15 scid 0x0040
< ACL data: handle 12 flags 0x00 dlen 16
L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 1 status 2
Connection pending - Authorization pending
< ACL data: handle 12 flags 0x00 dlen 16
L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 3 status 0
Connection refused - security block
> HCI Event: Number of Completed Packets (0x13) plen 5
handle 12 packets 2
> HCI Event: Disconn Complete (0x05) plen 4
status 0x00 handle 12 reason 0x13
Reason: Remote User Terminated Connection


At the end of this dump I am getting the error: “Connection refused - security block”. I believe this is the issue but I have the devices trusted at both ends. I get this same error whether I try to use a gn or panu as the server type and with either connecting from the Linux or Window devices.



I do see lots of examples for the network access point (NAP) however I am having a hard time finding examples for the group or panu network. Has anyone had any success getting a group or panu network working using bt-network (bluez 5.23)? Am I simply missing something? Any help would be appreciated.



Thanks



Jon










share|improve this question



























    14















    I am trying to create a Bluetooth PAN between two devices where I can access REST based web services over the Bluetooth connection. I have had some success with various proof of concepts (both Bluetooth legacy and Bluetooth Smart) but I am having problems trying to create a Group network or a PANU <-> PANU network. I am able to get a network working using the network access point scenario however our use case needs to be a single device communicating with another single device with no routing to any other devices or networks.



    To start off with I have a Raspberry Pi with the latest Raspbian OS. This comes with bluez 5.23. To get the network access point working I am using the following code:



    brctl addbr pan0
    brctl setfd pan0 0
    brctl stp pan0 off

    ifconfig pan0 inet6 add fd00::5ef3:70ff:xxxx:xxxx
    iplink set pan0 up

    bt-network –d –s nap pan0


    This works great and I am able to connect both Linux and Windows devices. I am also able to access an Apache web server running on the Raspberry Pi from the device that I connected to it.



    On the Linux device I use blueman to connect. I have also used the bt-network with the –c option to connect as well. For the Windows device (windows 10 tablet) I pair the device and then connect to the network from the Bluetooth Personal Area Network Devices screen. I did need to use bluetoothctl to trust both devices prior to connecting.



    With the NAP working I wanted to attempt to get the group network or the panu-panu network working as described in this document: http://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=6554 These scenarios would work best for us since we do not want to route to any additional networks or devices (the panu-panu scenario would be ideal)



    My initial thought is all I should need to do is to change the bt-network command to one of these two commands:



    bt-network –d –s gn pan0

    bt-network –d –s panu pan0


    Both of these commands start up with any errors but I am unable to establish a network connection between my Linux or Windows devices. I am able to successfully pair the devices (I am using the “hciconfig hci0 piscan” command to advertise) but I am unable to bring the network up.



    If I run hcidump, I get the following output. Note I included the entire hcidump from the connection attempt so it is pretty long but I thought it may help identify the problem. This is for a group network but I get the same error with the panu-panu scenario:



    HCI sniffer - Bluetooth packet analyzer ver 5.23
    device: hci0 snap_len: 1500 filter: 0xffffffff
    > HCI Event: Connect Request (0x04) plen 10
    bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
    < HCI Command: Accept Connection Request (0x01|0x0009) plen 7
    bdaddr 5C:F3:70:66:XX:XX role 0x00
    Role: Master
    > HCI Event: Command Status (0x0f) plen 4
    Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
    > HCI Event: Role Change (0x12) plen 8
    status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
    Role: Master
    > HCI Event: Connect Complete (0x03) plen 11
    status 0x00 handle 11 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
    < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
    handle 11
    > HCI Event: Command Status (0x0f) plen 4
    Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
    > HCI Event: Max Slots Change (0x1b) plen 3
    handle 11 slots 5
    > HCI Event: Read Remote Supported Features (0x0b) plen 11
    status 0x00 handle 11
    Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
    < HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
    handle 11 page 1
    > HCI Event: Command Status (0x0f) plen 4
    Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
    > HCI Event: Read Remote Extended Features (0x23) plen 13
    status 0x00 handle 11 page 1 max 1
    Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    < HCI Command: Remote Name Request (0x01|0x0019) plen 10
    bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
    < ACL data: handle 11 flags 0x00 dlen 10
    L2CAP(s): Info req: type 2
    > HCI Event: Command Status (0x0f) plen 4
    Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
    > HCI Event: Remote Name Req Complete (0x07) plen 255
    status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
    > HCI Event: IO Capability Response (0x32) plen 9
    bdaddr 5C:F3:70:66:XX:XX capability 0x01 oob 0x00 auth 0x03
    Capability: DisplayYesNo (OOB data not present)
    Authentication: Dedicated Bonding (MITM Protection)
    > HCI Event: IO Capability Request (0x31) plen 6
    bdaddr 5C:F3:70:66:XX:XX
    < HCI Command: IO Capability Request Reply (0x01|0x002b) plen 9
    bdaddr 5C:F3:70:66:XX:XX capability 0x03 oob 0x00 auth 0x02
    Capability: NoInputNoOutput (OOB data not present)
    Authentication: Dedicated Bonding (No MITM Protection)
    > HCI Event: Command Complete (0x0e) plen 10
    IO Capability Request Reply (0x01|0x002b) ncmd 1
    status 0x00 bdaddr 5C:F3:70:66:XX:XX
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 11 packets 1
    > HCI Event: User Confirmation Request (0x33) plen 10
    bdaddr 5C:F3:70:66:XX:XX passkey 774674
    < HCI Command: User Confirmation Request Reply (0x01|0x002c) plen 6
    bdaddr 5C:F3:70:66:XX:XX
    > HCI Event: Command Complete (0x0e) plen 10
    User Confirmation Request Reply (0x01|0x002c) ncmd 1
    status 0x00 bdaddr 5C:F3:70:66:XX:XX
    > HCI Event: Simple Pairing Complete (0x36) plen 7
    status 0x00 bdaddr 5C:F3:70:66:XX:XX
    > HCI Event: Link Key Notification (0x18) plen 23
    bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0 type 4
    Type: Unauthenticated Combination Key
    > HCI Event: Encrypt Change (0x08) plen 4
    status 0x00 handle 11 encrypt 0x01
    > ACL data: handle 11 flags 0x02 dlen 10
    L2CAP(s): Info req: type 2
    > ACL data: handle 11 flags 0x02 dlen 16
    L2CAP(s): Info rsp: type 2 result 0
    Extended feature mask 0x02b8
    Enhanced Retransmission mode
    Streaming mode
    FCS Option
    Fixed Channels
    Unicast Connectless Data Reception
    < ACL data: handle 11 flags 0x00 dlen 16
    L2CAP(s): Info rsp: type 2 result 0
    Extended feature mask 0x02b8
    Enhanced Retransmission mode
    Streaming mode
    FCS Option
    Fixed Channels
    Unicast Connectless Data Reception
    < ACL data: handle 11 flags 0x00 dlen 10
    L2CAP(s): Info req: type 3
    > ACL data: handle 11 flags 0x02 dlen 10
    L2CAP(s): Info req: type 3
    < ACL data: handle 11 flags 0x00 dlen 20
    L2CAP(s): Info rsp: type 3 result 0
    Fixed channel list 0x00000006
    L2CAP Signalling Channel
    L2CAP Connless
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 11 packets 2
    > ACL data: handle 11 flags 0x02 dlen 20
    L2CAP(s): Info rsp: type 3 result 0
    Fixed channel list 0x00000006
    L2CAP Signalling Channel
    L2CAP Connless
    > ACL data: handle 11 flags 0x02 dlen 12
    L2CAP(s): Connect req: psm 1 scid 0x0040
    < ACL data: handle 11 flags 0x00 dlen 16
    L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 0 status 0
    Connection successful
    < ACL data: handle 11 flags 0x00 dlen 23
    L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
    RFC 0x00 (Basic)
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 11 packets 2
    > ACL data: handle 11 flags 0x02 dlen 23
    L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
    RFC 0x00 (Basic)
    < ACL data: handle 11 flags 0x00 dlen 18
    L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
    MTU 672
    > ACL data: handle 11 flags 0x02 dlen 18
    L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
    MTU 672
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 11 packets 2
    > ACL data: handle 11 flags 0x02 dlen 24
    L2CAP(d): cid 0x0040 len 20 [psm 1]
    SDP SSA Req: tid 0x0 len 0xf
    pat uuid-16 0x0100 (L2CAP)
    max 65535
    aid(s) 0x0000 - 0xffff
    cont 00
    < ACL data: handle 11 flags 0x00 dlen 606
    L2CAP(d): cid 0x0040 len 602 [psm 1]
    SDP SSA Rsp: tid 0x0 len 0x255
    count 594
    record #0
    aid 0x0000 (SrvRecHndl)
    uint 0x10001
    aid 0x0001 (SrvClassIDList)
    < uuid-16 0x1800 >
    aid 0x0004 (ProtocolDescList)
    < < uuid-16 0x0100 (L2CAP) uint 0x1f > <
    uuid-16 0x0007 uint 0x1 uint 0x8 > >
    aid 0x0005 (BrwGrpList)
    < uuid-16 0x1002 (PubBrwsGrp) >
    aid 0x000a (DocURL)
    url "http://www.bluez.org/"
    aid 0x000b (ClientExeURL)
    url "http://www.bluez.org/"
    aid 0x000c (IconURL)
    url "http://www.bluez.org/"
    aid 0x0100 (SrvName)
    str "Generic Access Profile"
    aid 0x0102 (ProviderName)
    str "BlueZ"
    record #1
    aid 0x0000 (SrvRecHndl)
    uint 0x10002
    aid 0x0001 (SrvClassIDList)
    < uuid-16 0x1801 >
    aid 0x0004 (ProtocolDescList)
    < < uuid-16 0x0100 (L2CAP) uint 0x1f > <
    uuid-16 0x0007 uint 0x10 uint 0x10 > >
    aid 0x0005 (BrwGrpList)
    < uuid-16 0x1002 (PubBrwsGrp) >
    aid 0x0100 (SrvName)
    str "Generic Attribute Profile"
    aid 0x0102 (ProviderName)
    str "BlueZ"
    record #2
    aid 0x0000 (SrvRecHndl)
    uint 0x10003
    aid 0x0001 (SrvClassIDList)
    < uuid-16 0x110e (AVRemote) uuid-16 0x110f (AVRemCt) >
    aid 0x0004 (ProtocolDescList)
    < < uuid-16 0x0100 (L2CAP) uint 0x17 > <
    uuid-16 0x0017 (AVCTP) uint 0x103 > >
    aid 0x0005 (BrwGrpList)
    < uuid-16 0x1002 (PubBrwsGrp) >
    aid 0x0009 (BTProfileDescList)
    < < uuid-16 0x110e (AVRemote) uint 0x105 > >
    aid 0x000d (AdditionalProtocolDescLists)
    < < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
    aid 0x0100 (SrvName)
    str "AVRCP CT"
    aid 0x0311 (SuppFeatures)
    uint 0x4f
    record #3
    aid 0x0000 (SrvRecHndl)
    uint 0x10004
    aid 0x0001 (SrvClassIDList)
    < uuid-16 0x110c (AVRemTarget) >
    aid 0x0004 (ProtocolDescList)
    < < uuid-16 0x0100 (L2CAP) uint 0x17 > <
    uuid-16 0x0017 (AVCTP) uint 0x103 > >
    aid 0x0005 (BrwGrpList)
    < uuid-16 0x1002 (PubBrwsGrp) >
    aid 0x0009 (BTProfileDescList)
    < < uuid-16 0x110e (AVRemote) uint 0x104 > >
    aid 0x000d (AdditionalProtocolDescLists)
    < < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
    aid 0x0100 (SrvName)
    str "AVRCP TG"
    aid 0x0311 (SuppFeatures)
    uint 0x5f
    record #4
    aid 0x0000 (SrvRecHndl)
    uint 0x10005
    aid 0x0001 (SrvClassIDList)
    < uuid-16 0x1117 (GN) >
    aid 0x0004 (ProtocolDescList)
    < < uuid-16 0x0100 (L2CAP) uint 0xf > <
    uuid-16 0x000f (BNEP) uint 0x100 < uint 0x800 uint 0x806 > > >
    aid 0x0005 (BrwGrpList)
    < uuid-16 0x1002 (PubBrwsGrp) >
    aid 0x0006 (LangBaseAttrIDList)
    < uint 0x656e uint 0x6a uint 0x100 >
    aid 0x0009 (BTProfileDescList)
    < < uuid-16 0x1117 (GN) uint 0x100 > >
    aid 0x0100 (SrvName)
    str "Network service"
    aid 0x0101 (SrvDesc)
    str "Network service"
    aid 0x030a (SecurityDescription)
    uint 0x1
    cont 00
    > ACL data: handle 11 flags 0x02 dlen 24
    L2CAP(d): cid 0x0040 len 20 [psm 1]
    SDP SSA Req: tid 0x1 len 0xf
    pat uuid-16 0x1200 (PNPInfo)
    max 65535
    aid(s) 0x0000 - 0xffff
    cont 00
    < ACL data: handle 11 flags 0x00 dlen 88
    L2CAP(d): cid 0x0040 len 84 [psm 1]
    SDP SSA Rsp: tid 0x1 len 0x4f
    count 76
    record #0
    aid 0x0000 (SrvRecHndl)
    uint 0x10000
    aid 0x0001 (SrvClassIDList)
    < uuid-16 0x1200 (PNPInfo) >
    aid 0x0005 (BrwGrpList)
    < uuid-16 0x1002 (PubBrwsGrp) >
    aid 0x0009 (BTProfileDescList)
    < < uuid-16 0x1200 (PNPInfo) uint 0x103 > >
    aid 0x0200 (VersionNumList)
    uint 0x103
    aid 0x0201 (SrvDBState)
    uint 0x1d6b
    aid 0x0202 (unknown)
    uint 0x246
    aid 0x0203 (unknown)
    uint 0x517
    aid 0x0204 (unknown)
    bool 0x1
    aid 0x0205 (unknown)
    uint 0x2
    cont 00
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 11 packets 2
    > ACL data: handle 11 flags 0x02 dlen 12
    L2CAP(s): Disconn req: dcid 0x0040 scid 0x0040
    < ACL data: handle 11 flags 0x00 dlen 12
    L2CAP(s): Disconn rsp: dcid 0x0040 scid 0x0040
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 11 packets 1
    > HCI Event: Disconn Complete (0x05) plen 4
    status 0x00 handle 11 reason 0x13
    Reason: Remote User Terminated Connection
    > HCI Event: Connect Request (0x04) plen 10
    bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
    < HCI Command: Accept Connection Request (0x01|0x0009) plen 7
    bdaddr 5C:F3:70:66:XX:XX role 0x00
    Role: Master
    > HCI Event: Command Status (0x0f) plen 4
    Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
    > HCI Event: Role Change (0x12) plen 8
    status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
    Role: Master
    > HCI Event: Connect Complete (0x03) plen 11
    status 0x00 handle 12 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
    < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
    handle 12
    > HCI Event: Command Status (0x0f) plen 4
    Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
    > HCI Event: Max Slots Change (0x1b) plen 3
    handle 12 slots 5
    > HCI Event: Read Remote Supported Features (0x0b) plen 11
    status 0x00 handle 12
    Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
    < HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
    handle 12 page 1
    > HCI Event: Command Status (0x0f) plen 4
    Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
    > HCI Event: Read Remote Extended Features (0x23) plen 13
    status 0x00 handle 12 page 1 max 1
    Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    < HCI Command: Remote Name Request (0x01|0x0019) plen 10
    bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
    < ACL data: handle 12 flags 0x00 dlen 10
    L2CAP(s): Info req: type 2
    > HCI Event: Command Status (0x0f) plen 4
    Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
    > HCI Event: Remote Name Req Complete (0x07) plen 255
    status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
    > HCI Event: Link Key Request (0x17) plen 6
    bdaddr 5C:F3:70:66:XX:XX
    < HCI Command: Link Key Request Reply (0x01|0x000b) plen 22
    bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0
    > HCI Event: Command Complete (0x0e) plen 10
    Link Key Request Reply (0x01|0x000b) ncmd 1
    status 0x00 bdaddr 5C:F3:70:66:XX:XX
    > HCI Event: Encrypt Change (0x08) plen 4
    status 0x00 handle 12 encrypt 0x01
    > ACL data: handle 12 flags 0x02 dlen 10
    L2CAP(s): Info req: type 2
    < ACL data: handle 12 flags 0x00 dlen 16
    L2CAP(s): Info rsp: type 2 result 0
    Extended feature mask 0x02b8
    Enhanced Retransmission mode
    Streaming mode
    FCS Option
    Fixed Channels
    Unicast Connectless Data Reception
    > ACL data: handle 12 flags 0x02 dlen 16
    L2CAP(s): Info rsp: type 2 result 0
    Extended feature mask 0x02b8
    Enhanced Retransmission mode
    Streaming mode
    FCS Option
    Fixed Channels
    Unicast Connectless Data Reception
    < ACL data: handle 12 flags 0x00 dlen 10
    L2CAP(s): Info req: type 3
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 12 packets 2
    > ACL data: handle 12 flags 0x02 dlen 10
    L2CAP(s): Info req: type 3
    < ACL data: handle 12 flags 0x00 dlen 20
    L2CAP(s): Info rsp: type 3 result 0
    Fixed channel list 0x00000006
    L2CAP Signalling Channel
    L2CAP Connless
    > ACL data: handle 12 flags 0x02 dlen 20
    L2CAP(s): Info rsp: type 3 result 0
    Fixed channel list 0x00000006
    L2CAP Signalling Channel
    L2CAP Connless
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 12 packets 2
    > ACL data: handle 12 flags 0x02 dlen 12
    L2CAP(s): Connect req: psm 15 scid 0x0040
    < ACL data: handle 12 flags 0x00 dlen 16
    L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 1 status 2
    Connection pending - Authorization pending
    < ACL data: handle 12 flags 0x00 dlen 16
    L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 3 status 0
    Connection refused - security block
    > HCI Event: Number of Completed Packets (0x13) plen 5
    handle 12 packets 2
    > HCI Event: Disconn Complete (0x05) plen 4
    status 0x00 handle 12 reason 0x13
    Reason: Remote User Terminated Connection


    At the end of this dump I am getting the error: “Connection refused - security block”. I believe this is the issue but I have the devices trusted at both ends. I get this same error whether I try to use a gn or panu as the server type and with either connecting from the Linux or Window devices.



    I do see lots of examples for the network access point (NAP) however I am having a hard time finding examples for the group or panu network. Has anyone had any success getting a group or panu network working using bt-network (bluez 5.23)? Am I simply missing something? Any help would be appreciated.



    Thanks



    Jon










    share|improve this question

























      14












      14








      14


      3






      I am trying to create a Bluetooth PAN between two devices where I can access REST based web services over the Bluetooth connection. I have had some success with various proof of concepts (both Bluetooth legacy and Bluetooth Smart) but I am having problems trying to create a Group network or a PANU <-> PANU network. I am able to get a network working using the network access point scenario however our use case needs to be a single device communicating with another single device with no routing to any other devices or networks.



      To start off with I have a Raspberry Pi with the latest Raspbian OS. This comes with bluez 5.23. To get the network access point working I am using the following code:



      brctl addbr pan0
      brctl setfd pan0 0
      brctl stp pan0 off

      ifconfig pan0 inet6 add fd00::5ef3:70ff:xxxx:xxxx
      iplink set pan0 up

      bt-network –d –s nap pan0


      This works great and I am able to connect both Linux and Windows devices. I am also able to access an Apache web server running on the Raspberry Pi from the device that I connected to it.



      On the Linux device I use blueman to connect. I have also used the bt-network with the –c option to connect as well. For the Windows device (windows 10 tablet) I pair the device and then connect to the network from the Bluetooth Personal Area Network Devices screen. I did need to use bluetoothctl to trust both devices prior to connecting.



      With the NAP working I wanted to attempt to get the group network or the panu-panu network working as described in this document: http://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=6554 These scenarios would work best for us since we do not want to route to any additional networks or devices (the panu-panu scenario would be ideal)



      My initial thought is all I should need to do is to change the bt-network command to one of these two commands:



      bt-network –d –s gn pan0

      bt-network –d –s panu pan0


      Both of these commands start up with any errors but I am unable to establish a network connection between my Linux or Windows devices. I am able to successfully pair the devices (I am using the “hciconfig hci0 piscan” command to advertise) but I am unable to bring the network up.



      If I run hcidump, I get the following output. Note I included the entire hcidump from the connection attempt so it is pretty long but I thought it may help identify the problem. This is for a group network but I get the same error with the panu-panu scenario:



      HCI sniffer - Bluetooth packet analyzer ver 5.23
      device: hci0 snap_len: 1500 filter: 0xffffffff
      > HCI Event: Connect Request (0x04) plen 10
      bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
      < HCI Command: Accept Connection Request (0x01|0x0009) plen 7
      bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Command Status (0x0f) plen 4
      Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
      > HCI Event: Role Change (0x12) plen 8
      status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Connect Complete (0x03) plen 11
      status 0x00 handle 11 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
      < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
      handle 11
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
      > HCI Event: Max Slots Change (0x1b) plen 3
      handle 11 slots 5
      > HCI Event: Read Remote Supported Features (0x0b) plen 11
      status 0x00 handle 11
      Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
      < HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
      handle 11 page 1
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
      > HCI Event: Read Remote Extended Features (0x23) plen 13
      status 0x00 handle 11 page 1 max 1
      Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
      < HCI Command: Remote Name Request (0x01|0x0019) plen 10
      bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
      < ACL data: handle 11 flags 0x00 dlen 10
      L2CAP(s): Info req: type 2
      > HCI Event: Command Status (0x0f) plen 4
      Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
      > HCI Event: Remote Name Req Complete (0x07) plen 255
      status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
      > HCI Event: IO Capability Response (0x32) plen 9
      bdaddr 5C:F3:70:66:XX:XX capability 0x01 oob 0x00 auth 0x03
      Capability: DisplayYesNo (OOB data not present)
      Authentication: Dedicated Bonding (MITM Protection)
      > HCI Event: IO Capability Request (0x31) plen 6
      bdaddr 5C:F3:70:66:XX:XX
      < HCI Command: IO Capability Request Reply (0x01|0x002b) plen 9
      bdaddr 5C:F3:70:66:XX:XX capability 0x03 oob 0x00 auth 0x02
      Capability: NoInputNoOutput (OOB data not present)
      Authentication: Dedicated Bonding (No MITM Protection)
      > HCI Event: Command Complete (0x0e) plen 10
      IO Capability Request Reply (0x01|0x002b) ncmd 1
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 1
      > HCI Event: User Confirmation Request (0x33) plen 10
      bdaddr 5C:F3:70:66:XX:XX passkey 774674
      < HCI Command: User Confirmation Request Reply (0x01|0x002c) plen 6
      bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Command Complete (0x0e) plen 10
      User Confirmation Request Reply (0x01|0x002c) ncmd 1
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Simple Pairing Complete (0x36) plen 7
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Link Key Notification (0x18) plen 23
      bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0 type 4
      Type: Unauthenticated Combination Key
      > HCI Event: Encrypt Change (0x08) plen 4
      status 0x00 handle 11 encrypt 0x01
      > ACL data: handle 11 flags 0x02 dlen 10
      L2CAP(s): Info req: type 2
      > ACL data: handle 11 flags 0x02 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      < ACL data: handle 11 flags 0x00 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      < ACL data: handle 11 flags 0x00 dlen 10
      L2CAP(s): Info req: type 3
      > ACL data: handle 11 flags 0x02 dlen 10
      L2CAP(s): Info req: type 3
      < ACL data: handle 11 flags 0x00 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > ACL data: handle 11 flags 0x02 dlen 12
      L2CAP(s): Connect req: psm 1 scid 0x0040
      < ACL data: handle 11 flags 0x00 dlen 16
      L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 0 status 0
      Connection successful
      < ACL data: handle 11 flags 0x00 dlen 23
      L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
      RFC 0x00 (Basic)
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 23
      L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
      RFC 0x00 (Basic)
      < ACL data: handle 11 flags 0x00 dlen 18
      L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
      MTU 672
      > ACL data: handle 11 flags 0x02 dlen 18
      L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
      MTU 672
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 24
      L2CAP(d): cid 0x0040 len 20 [psm 1]
      SDP SSA Req: tid 0x0 len 0xf
      pat uuid-16 0x0100 (L2CAP)
      max 65535
      aid(s) 0x0000 - 0xffff
      cont 00
      < ACL data: handle 11 flags 0x00 dlen 606
      L2CAP(d): cid 0x0040 len 602 [psm 1]
      SDP SSA Rsp: tid 0x0 len 0x255
      count 594
      record #0
      aid 0x0000 (SrvRecHndl)
      uint 0x10001
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1800 >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x1f > <
      uuid-16 0x0007 uint 0x1 uint 0x8 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x000a (DocURL)
      url "http://www.bluez.org/"
      aid 0x000b (ClientExeURL)
      url "http://www.bluez.org/"
      aid 0x000c (IconURL)
      url "http://www.bluez.org/"
      aid 0x0100 (SrvName)
      str "Generic Access Profile"
      aid 0x0102 (ProviderName)
      str "BlueZ"
      record #1
      aid 0x0000 (SrvRecHndl)
      uint 0x10002
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1801 >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x1f > <
      uuid-16 0x0007 uint 0x10 uint 0x10 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0100 (SrvName)
      str "Generic Attribute Profile"
      aid 0x0102 (ProviderName)
      str "BlueZ"
      record #2
      aid 0x0000 (SrvRecHndl)
      uint 0x10003
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x110e (AVRemote) uuid-16 0x110f (AVRemCt) >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x17 > <
      uuid-16 0x0017 (AVCTP) uint 0x103 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x110e (AVRemote) uint 0x105 > >
      aid 0x000d (AdditionalProtocolDescLists)
      < < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
      aid 0x0100 (SrvName)
      str "AVRCP CT"
      aid 0x0311 (SuppFeatures)
      uint 0x4f
      record #3
      aid 0x0000 (SrvRecHndl)
      uint 0x10004
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x110c (AVRemTarget) >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x17 > <
      uuid-16 0x0017 (AVCTP) uint 0x103 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x110e (AVRemote) uint 0x104 > >
      aid 0x000d (AdditionalProtocolDescLists)
      < < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
      aid 0x0100 (SrvName)
      str "AVRCP TG"
      aid 0x0311 (SuppFeatures)
      uint 0x5f
      record #4
      aid 0x0000 (SrvRecHndl)
      uint 0x10005
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1117 (GN) >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0xf > <
      uuid-16 0x000f (BNEP) uint 0x100 < uint 0x800 uint 0x806 > > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0006 (LangBaseAttrIDList)
      < uint 0x656e uint 0x6a uint 0x100 >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x1117 (GN) uint 0x100 > >
      aid 0x0100 (SrvName)
      str "Network service"
      aid 0x0101 (SrvDesc)
      str "Network service"
      aid 0x030a (SecurityDescription)
      uint 0x1
      cont 00
      > ACL data: handle 11 flags 0x02 dlen 24
      L2CAP(d): cid 0x0040 len 20 [psm 1]
      SDP SSA Req: tid 0x1 len 0xf
      pat uuid-16 0x1200 (PNPInfo)
      max 65535
      aid(s) 0x0000 - 0xffff
      cont 00
      < ACL data: handle 11 flags 0x00 dlen 88
      L2CAP(d): cid 0x0040 len 84 [psm 1]
      SDP SSA Rsp: tid 0x1 len 0x4f
      count 76
      record #0
      aid 0x0000 (SrvRecHndl)
      uint 0x10000
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1200 (PNPInfo) >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x1200 (PNPInfo) uint 0x103 > >
      aid 0x0200 (VersionNumList)
      uint 0x103
      aid 0x0201 (SrvDBState)
      uint 0x1d6b
      aid 0x0202 (unknown)
      uint 0x246
      aid 0x0203 (unknown)
      uint 0x517
      aid 0x0204 (unknown)
      bool 0x1
      aid 0x0205 (unknown)
      uint 0x2
      cont 00
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 12
      L2CAP(s): Disconn req: dcid 0x0040 scid 0x0040
      < ACL data: handle 11 flags 0x00 dlen 12
      L2CAP(s): Disconn rsp: dcid 0x0040 scid 0x0040
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 1
      > HCI Event: Disconn Complete (0x05) plen 4
      status 0x00 handle 11 reason 0x13
      Reason: Remote User Terminated Connection
      > HCI Event: Connect Request (0x04) plen 10
      bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
      < HCI Command: Accept Connection Request (0x01|0x0009) plen 7
      bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Command Status (0x0f) plen 4
      Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
      > HCI Event: Role Change (0x12) plen 8
      status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Connect Complete (0x03) plen 11
      status 0x00 handle 12 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
      < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
      handle 12
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
      > HCI Event: Max Slots Change (0x1b) plen 3
      handle 12 slots 5
      > HCI Event: Read Remote Supported Features (0x0b) plen 11
      status 0x00 handle 12
      Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
      < HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
      handle 12 page 1
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
      > HCI Event: Read Remote Extended Features (0x23) plen 13
      status 0x00 handle 12 page 1 max 1
      Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
      < HCI Command: Remote Name Request (0x01|0x0019) plen 10
      bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
      < ACL data: handle 12 flags 0x00 dlen 10
      L2CAP(s): Info req: type 2
      > HCI Event: Command Status (0x0f) plen 4
      Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
      > HCI Event: Remote Name Req Complete (0x07) plen 255
      status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
      > HCI Event: Link Key Request (0x17) plen 6
      bdaddr 5C:F3:70:66:XX:XX
      < HCI Command: Link Key Request Reply (0x01|0x000b) plen 22
      bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0
      > HCI Event: Command Complete (0x0e) plen 10
      Link Key Request Reply (0x01|0x000b) ncmd 1
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Encrypt Change (0x08) plen 4
      status 0x00 handle 12 encrypt 0x01
      > ACL data: handle 12 flags 0x02 dlen 10
      L2CAP(s): Info req: type 2
      < ACL data: handle 12 flags 0x00 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      > ACL data: handle 12 flags 0x02 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      < ACL data: handle 12 flags 0x00 dlen 10
      L2CAP(s): Info req: type 3
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 12 packets 2
      > ACL data: handle 12 flags 0x02 dlen 10
      L2CAP(s): Info req: type 3
      < ACL data: handle 12 flags 0x00 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > ACL data: handle 12 flags 0x02 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 12 packets 2
      > ACL data: handle 12 flags 0x02 dlen 12
      L2CAP(s): Connect req: psm 15 scid 0x0040
      < ACL data: handle 12 flags 0x00 dlen 16
      L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 1 status 2
      Connection pending - Authorization pending
      < ACL data: handle 12 flags 0x00 dlen 16
      L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 3 status 0
      Connection refused - security block
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 12 packets 2
      > HCI Event: Disconn Complete (0x05) plen 4
      status 0x00 handle 12 reason 0x13
      Reason: Remote User Terminated Connection


      At the end of this dump I am getting the error: “Connection refused - security block”. I believe this is the issue but I have the devices trusted at both ends. I get this same error whether I try to use a gn or panu as the server type and with either connecting from the Linux or Window devices.



      I do see lots of examples for the network access point (NAP) however I am having a hard time finding examples for the group or panu network. Has anyone had any success getting a group or panu network working using bt-network (bluez 5.23)? Am I simply missing something? Any help would be appreciated.



      Thanks



      Jon










      share|improve this question














      I am trying to create a Bluetooth PAN between two devices where I can access REST based web services over the Bluetooth connection. I have had some success with various proof of concepts (both Bluetooth legacy and Bluetooth Smart) but I am having problems trying to create a Group network or a PANU <-> PANU network. I am able to get a network working using the network access point scenario however our use case needs to be a single device communicating with another single device with no routing to any other devices or networks.



      To start off with I have a Raspberry Pi with the latest Raspbian OS. This comes with bluez 5.23. To get the network access point working I am using the following code:



      brctl addbr pan0
      brctl setfd pan0 0
      brctl stp pan0 off

      ifconfig pan0 inet6 add fd00::5ef3:70ff:xxxx:xxxx
      iplink set pan0 up

      bt-network –d –s nap pan0


      This works great and I am able to connect both Linux and Windows devices. I am also able to access an Apache web server running on the Raspberry Pi from the device that I connected to it.



      On the Linux device I use blueman to connect. I have also used the bt-network with the –c option to connect as well. For the Windows device (windows 10 tablet) I pair the device and then connect to the network from the Bluetooth Personal Area Network Devices screen. I did need to use bluetoothctl to trust both devices prior to connecting.



      With the NAP working I wanted to attempt to get the group network or the panu-panu network working as described in this document: http://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=6554 These scenarios would work best for us since we do not want to route to any additional networks or devices (the panu-panu scenario would be ideal)



      My initial thought is all I should need to do is to change the bt-network command to one of these two commands:



      bt-network –d –s gn pan0

      bt-network –d –s panu pan0


      Both of these commands start up with any errors but I am unable to establish a network connection between my Linux or Windows devices. I am able to successfully pair the devices (I am using the “hciconfig hci0 piscan” command to advertise) but I am unable to bring the network up.



      If I run hcidump, I get the following output. Note I included the entire hcidump from the connection attempt so it is pretty long but I thought it may help identify the problem. This is for a group network but I get the same error with the panu-panu scenario:



      HCI sniffer - Bluetooth packet analyzer ver 5.23
      device: hci0 snap_len: 1500 filter: 0xffffffff
      > HCI Event: Connect Request (0x04) plen 10
      bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
      < HCI Command: Accept Connection Request (0x01|0x0009) plen 7
      bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Command Status (0x0f) plen 4
      Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
      > HCI Event: Role Change (0x12) plen 8
      status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Connect Complete (0x03) plen 11
      status 0x00 handle 11 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
      < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
      handle 11
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
      > HCI Event: Max Slots Change (0x1b) plen 3
      handle 11 slots 5
      > HCI Event: Read Remote Supported Features (0x0b) plen 11
      status 0x00 handle 11
      Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
      < HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
      handle 11 page 1
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
      > HCI Event: Read Remote Extended Features (0x23) plen 13
      status 0x00 handle 11 page 1 max 1
      Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
      < HCI Command: Remote Name Request (0x01|0x0019) plen 10
      bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
      < ACL data: handle 11 flags 0x00 dlen 10
      L2CAP(s): Info req: type 2
      > HCI Event: Command Status (0x0f) plen 4
      Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
      > HCI Event: Remote Name Req Complete (0x07) plen 255
      status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
      > HCI Event: IO Capability Response (0x32) plen 9
      bdaddr 5C:F3:70:66:XX:XX capability 0x01 oob 0x00 auth 0x03
      Capability: DisplayYesNo (OOB data not present)
      Authentication: Dedicated Bonding (MITM Protection)
      > HCI Event: IO Capability Request (0x31) plen 6
      bdaddr 5C:F3:70:66:XX:XX
      < HCI Command: IO Capability Request Reply (0x01|0x002b) plen 9
      bdaddr 5C:F3:70:66:XX:XX capability 0x03 oob 0x00 auth 0x02
      Capability: NoInputNoOutput (OOB data not present)
      Authentication: Dedicated Bonding (No MITM Protection)
      > HCI Event: Command Complete (0x0e) plen 10
      IO Capability Request Reply (0x01|0x002b) ncmd 1
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 1
      > HCI Event: User Confirmation Request (0x33) plen 10
      bdaddr 5C:F3:70:66:XX:XX passkey 774674
      < HCI Command: User Confirmation Request Reply (0x01|0x002c) plen 6
      bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Command Complete (0x0e) plen 10
      User Confirmation Request Reply (0x01|0x002c) ncmd 1
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Simple Pairing Complete (0x36) plen 7
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Link Key Notification (0x18) plen 23
      bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0 type 4
      Type: Unauthenticated Combination Key
      > HCI Event: Encrypt Change (0x08) plen 4
      status 0x00 handle 11 encrypt 0x01
      > ACL data: handle 11 flags 0x02 dlen 10
      L2CAP(s): Info req: type 2
      > ACL data: handle 11 flags 0x02 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      < ACL data: handle 11 flags 0x00 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      < ACL data: handle 11 flags 0x00 dlen 10
      L2CAP(s): Info req: type 3
      > ACL data: handle 11 flags 0x02 dlen 10
      L2CAP(s): Info req: type 3
      < ACL data: handle 11 flags 0x00 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > ACL data: handle 11 flags 0x02 dlen 12
      L2CAP(s): Connect req: psm 1 scid 0x0040
      < ACL data: handle 11 flags 0x00 dlen 16
      L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 0 status 0
      Connection successful
      < ACL data: handle 11 flags 0x00 dlen 23
      L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
      RFC 0x00 (Basic)
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 23
      L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 11
      RFC 0x00 (Basic)
      < ACL data: handle 11 flags 0x00 dlen 18
      L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
      MTU 672
      > ACL data: handle 11 flags 0x02 dlen 18
      L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 4
      MTU 672
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 24
      L2CAP(d): cid 0x0040 len 20 [psm 1]
      SDP SSA Req: tid 0x0 len 0xf
      pat uuid-16 0x0100 (L2CAP)
      max 65535
      aid(s) 0x0000 - 0xffff
      cont 00
      < ACL data: handle 11 flags 0x00 dlen 606
      L2CAP(d): cid 0x0040 len 602 [psm 1]
      SDP SSA Rsp: tid 0x0 len 0x255
      count 594
      record #0
      aid 0x0000 (SrvRecHndl)
      uint 0x10001
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1800 >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x1f > <
      uuid-16 0x0007 uint 0x1 uint 0x8 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x000a (DocURL)
      url "http://www.bluez.org/"
      aid 0x000b (ClientExeURL)
      url "http://www.bluez.org/"
      aid 0x000c (IconURL)
      url "http://www.bluez.org/"
      aid 0x0100 (SrvName)
      str "Generic Access Profile"
      aid 0x0102 (ProviderName)
      str "BlueZ"
      record #1
      aid 0x0000 (SrvRecHndl)
      uint 0x10002
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1801 >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x1f > <
      uuid-16 0x0007 uint 0x10 uint 0x10 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0100 (SrvName)
      str "Generic Attribute Profile"
      aid 0x0102 (ProviderName)
      str "BlueZ"
      record #2
      aid 0x0000 (SrvRecHndl)
      uint 0x10003
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x110e (AVRemote) uuid-16 0x110f (AVRemCt) >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x17 > <
      uuid-16 0x0017 (AVCTP) uint 0x103 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x110e (AVRemote) uint 0x105 > >
      aid 0x000d (AdditionalProtocolDescLists)
      < < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
      aid 0x0100 (SrvName)
      str "AVRCP CT"
      aid 0x0311 (SuppFeatures)
      uint 0x4f
      record #3
      aid 0x0000 (SrvRecHndl)
      uint 0x10004
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x110c (AVRemTarget) >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0x17 > <
      uuid-16 0x0017 (AVCTP) uint 0x103 > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x110e (AVRemote) uint 0x104 > >
      aid 0x000d (AdditionalProtocolDescLists)
      < < < uuid-16 0x0100 (L2CAP) uint 0x1b > < uuid-16 0x0017 (AVCTP) uint 0x103 > > >
      aid 0x0100 (SrvName)
      str "AVRCP TG"
      aid 0x0311 (SuppFeatures)
      uint 0x5f
      record #4
      aid 0x0000 (SrvRecHndl)
      uint 0x10005
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1117 (GN) >
      aid 0x0004 (ProtocolDescList)
      < < uuid-16 0x0100 (L2CAP) uint 0xf > <
      uuid-16 0x000f (BNEP) uint 0x100 < uint 0x800 uint 0x806 > > >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0006 (LangBaseAttrIDList)
      < uint 0x656e uint 0x6a uint 0x100 >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x1117 (GN) uint 0x100 > >
      aid 0x0100 (SrvName)
      str "Network service"
      aid 0x0101 (SrvDesc)
      str "Network service"
      aid 0x030a (SecurityDescription)
      uint 0x1
      cont 00
      > ACL data: handle 11 flags 0x02 dlen 24
      L2CAP(d): cid 0x0040 len 20 [psm 1]
      SDP SSA Req: tid 0x1 len 0xf
      pat uuid-16 0x1200 (PNPInfo)
      max 65535
      aid(s) 0x0000 - 0xffff
      cont 00
      < ACL data: handle 11 flags 0x00 dlen 88
      L2CAP(d): cid 0x0040 len 84 [psm 1]
      SDP SSA Rsp: tid 0x1 len 0x4f
      count 76
      record #0
      aid 0x0000 (SrvRecHndl)
      uint 0x10000
      aid 0x0001 (SrvClassIDList)
      < uuid-16 0x1200 (PNPInfo) >
      aid 0x0005 (BrwGrpList)
      < uuid-16 0x1002 (PubBrwsGrp) >
      aid 0x0009 (BTProfileDescList)
      < < uuid-16 0x1200 (PNPInfo) uint 0x103 > >
      aid 0x0200 (VersionNumList)
      uint 0x103
      aid 0x0201 (SrvDBState)
      uint 0x1d6b
      aid 0x0202 (unknown)
      uint 0x246
      aid 0x0203 (unknown)
      uint 0x517
      aid 0x0204 (unknown)
      bool 0x1
      aid 0x0205 (unknown)
      uint 0x2
      cont 00
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 2
      > ACL data: handle 11 flags 0x02 dlen 12
      L2CAP(s): Disconn req: dcid 0x0040 scid 0x0040
      < ACL data: handle 11 flags 0x00 dlen 12
      L2CAP(s): Disconn rsp: dcid 0x0040 scid 0x0040
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 11 packets 1
      > HCI Event: Disconn Complete (0x05) plen 4
      status 0x00 handle 11 reason 0x13
      Reason: Remote User Terminated Connection
      > HCI Event: Connect Request (0x04) plen 10
      bdaddr 5C:F3:70:66:XX:XX class 0x000000 type ACL
      < HCI Command: Accept Connection Request (0x01|0x0009) plen 7
      bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Command Status (0x0f) plen 4
      Accept Connection Request (0x01|0x0009) status 0x00 ncmd 1
      > HCI Event: Role Change (0x12) plen 8
      status 0x00 bdaddr 5C:F3:70:66:XX:XX role 0x00
      Role: Master
      > HCI Event: Connect Complete (0x03) plen 11
      status 0x00 handle 12 bdaddr 5C:F3:70:66:XX:XX type ACL encrypt 0x00
      < HCI Command: Read Remote Supported Features (0x01|0x001b) plen 2
      handle 12
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Supported Features (0x01|0x001b) status 0x00 ncmd 1
      > HCI Event: Max Slots Change (0x1b) plen 3
      handle 12 slots 5
      > HCI Event: Read Remote Supported Features (0x0b) plen 11
      status 0x00 handle 12
      Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
      < HCI Command: Read Remote Extended Features (0x01|0x001c) plen 3
      handle 12 page 1
      > HCI Event: Command Status (0x0f) plen 4
      Read Remote Extended Features (0x01|0x001c) status 0x00 ncmd 1
      > HCI Event: Read Remote Extended Features (0x23) plen 13
      status 0x00 handle 12 page 1 max 1
      Features: 0x03 0x00 0x00 0x00 0x00 0x00 0x00 0x00
      < HCI Command: Remote Name Request (0x01|0x0019) plen 10
      bdaddr 5C:F3:70:66:XX:XX mode 2 clkoffset 0x0000
      < ACL data: handle 12 flags 0x00 dlen 10
      L2CAP(s): Info req: type 2
      > HCI Event: Command Status (0x0f) plen 4
      Remote Name Request (0x01|0x0019) status 0x00 ncmd 1
      > HCI Event: Remote Name Req Complete (0x07) plen 255
      status 0x00 bdaddr 5C:F3:70:66:XX:XX name 'raspberrypi'
      > HCI Event: Link Key Request (0x17) plen 6
      bdaddr 5C:F3:70:66:XX:XX
      < HCI Command: Link Key Request Reply (0x01|0x000b) plen 22
      bdaddr 5C:F3:70:66:XX:XX key 839802CBF65CA6D1D864F91831A288B0
      > HCI Event: Command Complete (0x0e) plen 10
      Link Key Request Reply (0x01|0x000b) ncmd 1
      status 0x00 bdaddr 5C:F3:70:66:XX:XX
      > HCI Event: Encrypt Change (0x08) plen 4
      status 0x00 handle 12 encrypt 0x01
      > ACL data: handle 12 flags 0x02 dlen 10
      L2CAP(s): Info req: type 2
      < ACL data: handle 12 flags 0x00 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      > ACL data: handle 12 flags 0x02 dlen 16
      L2CAP(s): Info rsp: type 2 result 0
      Extended feature mask 0x02b8
      Enhanced Retransmission mode
      Streaming mode
      FCS Option
      Fixed Channels
      Unicast Connectless Data Reception
      < ACL data: handle 12 flags 0x00 dlen 10
      L2CAP(s): Info req: type 3
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 12 packets 2
      > ACL data: handle 12 flags 0x02 dlen 10
      L2CAP(s): Info req: type 3
      < ACL data: handle 12 flags 0x00 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > ACL data: handle 12 flags 0x02 dlen 20
      L2CAP(s): Info rsp: type 3 result 0
      Fixed channel list 0x00000006
      L2CAP Signalling Channel
      L2CAP Connless
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 12 packets 2
      > ACL data: handle 12 flags 0x02 dlen 12
      L2CAP(s): Connect req: psm 15 scid 0x0040
      < ACL data: handle 12 flags 0x00 dlen 16
      L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 1 status 2
      Connection pending - Authorization pending
      < ACL data: handle 12 flags 0x00 dlen 16
      L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 3 status 0
      Connection refused - security block
      > HCI Event: Number of Completed Packets (0x13) plen 5
      handle 12 packets 2
      > HCI Event: Disconn Complete (0x05) plen 4
      status 0x00 handle 12 reason 0x13
      Reason: Remote User Terminated Connection


      At the end of this dump I am getting the error: “Connection refused - security block”. I believe this is the issue but I have the devices trusted at both ends. I get this same error whether I try to use a gn or panu as the server type and with either connecting from the Linux or Window devices.



      I do see lots of examples for the network access point (NAP) however I am having a hard time finding examples for the group or panu network. Has anyone had any success getting a group or panu network working using bt-network (bluez 5.23)? Am I simply missing something? Any help would be appreciated.



      Thanks



      Jon







      linux networking wireless-networking bluetooth pan






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Jan 21 '16 at 14:35









      Jon HJon H

      10628




      10628






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Right-tap on the symbol in the warning territory of the Bluetooth gadget and select Join an individual region arrange. The rundown of Bluetooth gadgets shows up. ...



          Tap on the name of the PC to which you need to associate. At the point when the property page of this gadget is shown, click OK to close this page.



          Snap Connect use.






          share|improve this answer























            Your Answer








            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "3"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1029484%2fsetting-up-a-bluetooth-pan%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Right-tap on the symbol in the warning territory of the Bluetooth gadget and select Join an individual region arrange. The rundown of Bluetooth gadgets shows up. ...



            Tap on the name of the PC to which you need to associate. At the point when the property page of this gadget is shown, click OK to close this page.



            Snap Connect use.






            share|improve this answer




























              0














              Right-tap on the symbol in the warning territory of the Bluetooth gadget and select Join an individual region arrange. The rundown of Bluetooth gadgets shows up. ...



              Tap on the name of the PC to which you need to associate. At the point when the property page of this gadget is shown, click OK to close this page.



              Snap Connect use.






              share|improve this answer


























                0












                0








                0







                Right-tap on the symbol in the warning territory of the Bluetooth gadget and select Join an individual region arrange. The rundown of Bluetooth gadgets shows up. ...



                Tap on the name of the PC to which you need to associate. At the point when the property page of this gadget is shown, click OK to close this page.



                Snap Connect use.






                share|improve this answer













                Right-tap on the symbol in the warning territory of the Bluetooth gadget and select Join an individual region arrange. The rundown of Bluetooth gadgets shows up. ...



                Tap on the name of the PC to which you need to associate. At the point when the property page of this gadget is shown, click OK to close this page.



                Snap Connect use.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Jan 17 at 14:28









                muj kazmuj kaz

                111




                111






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Super User!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1029484%2fsetting-up-a-bluetooth-pan%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Probability when a professor distributes a quiz and homework assignment to a class of n students.

                    Aardman Animations

                    Are they similar matrix