4 Replies Latest reply on Dec 10, 2015 7:35 AM by Intel_Peter

    Can not Connect two Edisons Using Connman


      Hey there,



      Edison Arduino bb and Mini bb with updated Yocto images


      I am going through the instructions provided at 6.6.2 in the Intel Edison bluetooth guide , page 44. The "PAN test between two Intel Edison devices" section.

      I've gotten as far as item 9 on page 47, "from the first (PANU) device, connect to the second (PAN-NAP) device using the connmanctl utility:"

      The commands I am using are the same as listed, except after I use:

      connmanctl> services


      only my wifi is listed, not the bluetooth service.

      I've paired and connected the devices using bluetoothctl utility and made the 1st device trusted. I have also enabled bluetooth in connman, with it telling me that it is already enabled. I've followed all the directions up till the point where I can't see my bluetooth service. I don't understand what I am missing.


      Another note is that I tried to connect anyway:



      which gives me this error:

      Method "Connect" with signature "" on interface "net.connman.Service" doesn't exist


      I'm guessing this has something to do with the bluetooth service not showing up, but thought it may be of importance.

        • 1. Re: Can not Connect two Edisons Using Connman

          Hello postITnote,


          That's strange, could you show me what exactly you have tried so far? I would like to see if I can replicate it with my Edison. Please make sure to separate what you did on the fisrt Edison from what you did on the second Edison.



          • 2. Re: Can not Connect two Edisons Using Connman

            Sure! I just went through the process again. I may have found the problem, but it still does not make sense to me. Here are my steps and relevant log prints. Was going to make a gist, but perhaps the formatting here will actually make it more readable, so here it goes.


            Chapter 4 – scanning and connecting

            Have already scanned and opbatined MAC addresses of device 1 and device 2


            Device 1 and 2

            Rfkill unblock bluetooth


            Agent KeyboardDisplay



            Device 1 log - all successful

            root@tesla:~# rfkill unblock bluetooth

            root@tesla:~# bluetoothctl

            [NEW] Controller 11:22:33:44:55:77 tesla [default]

            [NEW] Device 11:22:33:44:55:66 turing2

            [bluetooth]# agent KeyboardDisplay

            Agent registered

            [bluetooth]# default-agent

            Default agent request successful


            Device 2 gave some success read out




            Device 1 when trying to pair and connect, I get an error, but then connect and get the info from each peer, which seems to tell me it's paired and connected

            [bluetooth]# pair 11:22:33:44:55:66

            Attempting to pair with 11:22:33:44:55:66

            Failed to pair: org.bluez.Error.AlreadyExists

            [bluetooth]# connect

            [bluetooth]# connect 11:22:33:44:55:66

            Attempting to connect to 11:22:33:44:55:66

            Failed to connect: org.bluez.Error.Failed

            [CHG] Device 11:22:33:44:55:66 Connected: yes

            [CHG] Device 11:22:33:44:55:66 Name: BlueZ 5.24

            [CHG] Device 11:22:33:44:55:66 Alias: BlueZ 5.24


            Device 2

            After connecting from device 1


            [CHG] Device 11:22:33:44:55:77 Connected: yes


            Device 2 and 1 (with each other's MAC addresses)

            Info 11:22:33:44:55:66

            Says that they are paired and connected




            Chapter 6.6 personal area networking

            • - Edison to another edison


            Downloaded test file and from bluez package and copied it to home/root on both devices


            Did the enabling and connecting, shown above.


            1. 6.6.2 PAN test between two edison devices


            Device 1 and 2

            root@tesla:~# systemctl start connman

            root@tesla:~# connmanctl enable bluetooth

            Error bluetooth: Already enabled

            root@tesla:~# hciconfig

            hci0:   Type: BR/EDR  Bus: UART

                    BD Address: 11:22:33:44:55:66 ACL MTU: 1021:8  SCO MTU: 64:1

                    UP RUNNING PSCAN

                    RX bytes:3746 acl:47 sco:0 events:254 errors:0

                    TX bytes:217873 acl:392 sco:0 commands:47 errors:0


            Device 2

            ./test/test-nap br0

            Server for nap registered to br0

            Press CTRL-C to disconnect




            Brctl addbr br0

            Ifconfig br0



            Discoverable on

            Agent DisplayOnly



            Device 1


            Agent DisplayOnly



            Scan on

            Pair 11:22:33:44:55:66
            Failed to pair: org.bluez.Error.AlreadyExists

            Connect 11:22:33:44:55:66
            Attempting to connect to 11:22:33:44:55:66

            Connection successful




            Device 2

            Trust 11:22:33:44:55:77

            Trust succeeded


            Device 1



            Network name Wifi_numbers_managed_psk


            Is it because there was an error when trying to initially pair? I searched for a remedy to it, but haven't succeeded eliminating after it told me it paired successfully the first time I ever enabled bluetooth. These steps are how to create a bluetooth network


            Also, when I do connect and it says to ping the IP, is it the IP of the bridge? These steps are how to create a bluetooth network and not WiFi, so I'm confused as to why I would be pinging the boards IP address, I already know how to connect one board to another's network when one is in AP mode.


            • 3. Re: Can not Connect two Edisons Using Connman



              I've been trying to create my own PAN; nevertheless I am facing the same issue as you. Please let me take a deeper look at this and I will try to get back to you as soon as possible.



              • 4. Re: Can not Connect two Edisons Using Connman

                After some testing we were able to create a PAN on Edison, my Edison2 was missing the bluez-test packages so I downloaded them to the board. These are the steps we took:


                On Edison2:

                Downloaded http://www.bluez.org/release-of-bluez-5-18/ to home directory

                Untar file

                    # tar -xvf bluez-5.18.tar.xz


                On both Edison boards, enable Bluetooth and start connman:

                    # rfkill unblock bluetooth

                    # systemctl start connman

                    # connmanctl enable bluetooth

                    # hciconfig


                On Edison2:

                    Go to bluez directory (untared file)

                        # cd bluez-5.18

                    Start NAP service:

                        # ./test/test-nap br0 &

                    Add bridge:

                        # brctl addbr br0

                    Set static IP:

                        # ifconfig br0


                    Launch Bluetooth* controller utility, set discoverable on and register agent:

                        # bluetoothctl

                        # discoverable on

                        # agent DisplayOnly

                        # default-agent


                On Edison1:

                    Launch Bluetooth* controller utility, register agent, scan and pair with Edison2:

                    # bluetoothctl

                    # agent DisplayOnly

                    # default-agent

                    # scan on

                    # pair <Edison2>

                    # scan off

                    # exit


                On Edison2:

                    # trust <Edison1>


                On Edison1:

                    # connmanctl

                    # services

                            * Edison2      bluetooth_XXXX_XXXX

                    # connect bluetooth_XXXX_XXXX

                    # exit


                Both Edison boards should have bnep interface: