5 Replies Latest reply on May 12, 2020 2:39 PM by DheerajP_41

    BLE MESH support on CYW43455 using Bluez v5.52 on Linux

    maku_2263101

      Hi,

       

      Need help in bringing up BLE Mesh on CYW43455 module.

      Below is the required mesh setup scenario:

      1. Create one CYW43455 (Device1) module as unprovisioned node. So that it will send beacons with Mesh supported data.
      2. Using meshctl on other CYW43455 (Device2) module will perform scan and provision the scanned device (Device1) to form a Mesh network.

      Currently able to scan unprovisioned nodes of nordic (nRF52833-DK) devices on CYW43455 using meshctl.

      But not able to create CYW43455 module as unprovisioned node.

       

      VinayakS_26, @vinayak, GauravS_31 DheerajP_41, VictorZ_46

      Please share us the steps to create Mesh network among CYW43455 devices using Bluez on Linux platform.

       

      vinayak,

        • 1. Re: BLE MESH support on CYW43455 using Bluez v5.52 on Linux
          DheerajP_41

          Hi Manoj,

           

          CYW43455 does not support SIG mesh.

           

          "Currently able to scan unprovisioned nodes of nordic (nRF52833-DK) devices on CYW43455 using meshctl." -> Which SDK version and applications are you using?

           

          Thanks,

          -Dheeraj

          1 of 1 people found this helpful
          • 2. Re: BLE MESH support on CYW43455 using Bluez v5.52 on Linux
            VictorZ_46

            Hi Manoj,

             

            Just want to confirm if I understand it correctly. Your use case really require a bunch of BT/WiFi combo modules with MCU running Linux/BlueZ to build BT mesh between them. Right? Normally a provisioner will be BT/WiFi combo, but all other devices are BT only. Cypress indeed provide a bunch of different modules like that.

             

            Thanks,

            Victor

            • 3. Re: BLE MESH support on CYW43455 using Bluez v5.52 on Linux
              maku_2263101

              Hello DheerajP_41,

               

              Thank you for the response.

               

              We are using bluez5.52 package on Linux V4.9.87 platform.

              bluez package has an inbuilt tool meshctl used for provisioning the unprovisioned nodes.

               

              So we need any sample application on Linux platform to create Unprovisioned Nodes that will broadcast Mesh Information and will be used by the Provisioned to add the device to Mesh Network.

               

              Below is the log output of discovering unprovisioned nodes on CYW43455 using meshctl tool:

              ~# meshctl

              Waiting to connect to bluetoothd...Reading prov_db.json and local_node.json from /home/root/.config/meshctl directory

              [meshctl]# discover-unprovisioned on

              SetDiscoveryFilter success

              Discovery started

              Adapter property changed

              [CHG] Controller B8:D7:AF:5D:37:45 Discovering: yes

                              Mesh Provisioning Service (00001827-0000-1000-8000-00805f9b34fb)

                                      Device UUID: 5ff011eae3517548b9cf15f63d02aee4

                                      OOB: 0000

              [meshctl]# provision 5ff011eae3517548b9cf15f63d02aee4

              Trying to connect Device C2:3D:F6:15:CF:F9 nRF5x Mesh Switch

              Adapter property changed

              [CHG] Controller B8:D7:AF:5D:37:45 Discovering: no

              Connection successful

              Service added /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000a

              Service added /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e

              Char added /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e/char000f:

              Char added /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e/char0011:

              Services resolved yes

              Found matching char: path /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e/char000f, uuid 00002adb-0000-1000-8000-00805f9b34fb

              Found matching char: path /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e/char0011, uuid 00002adc-0000-1000-8000-00805f9b34fb

              Start notification on /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e/char0011

              Characteristic property changed /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e/char0011

              AcquireNotify success: fd 7 MTU 69

              Notify for Mesh Provisioning Out Data started

              Open-Node: 0x6b4b8

              Open-Prov: 0x70640

              Open-Prov: proxy 0x66628

              Initiated provisioning

              Characteristic property changed /org/bluez/hci0/dev_C2_3D_F6_15_CF_F9/service000e/char000f

              AcquireWrite success: fd 8 MTU 69

              GATT-TX:         03 00 10

              GATT-RX:         03 01 03 00 01 00 01 00 00 00 00 00 00

              Got provisioning data (12 bytes)

                       01 03 00 01 00 01 00 00 00 00 00 00

              GATT-TX:         03 02 00 00 01 00 00

              GATT-TX:         03 03 d4 aa 8b 06 09 a2 f6 62 66 45 83 44 5b 30

              GATT-TX:         e2 5f 93 31 40 f6 5e e3 8d ff fb 92 44 f7 1d 50

              GATT-TX:         21 0e a4 17 4e 82 76 f9 a6 45 09 72 32 d0 59 e7

              GATT-TX:         97 2e 9d 13 b2 bf 20 41 7d 71 1a 38 bf 59 3c c0

              GATT-TX:         a9 4b

              GATT-RX:         03 03 06 7d 87 4c 9b 38 19 8d 23 5a 7f f6 2f c6

              GATT-RX:         2d f7 98 92 13 ab 0b 43 14 c0 09 2a 06 86 10 87

              GATT-RX:         53 dc 6f 66 70 ef 21 e9 05 0e 39 fe 73 7c eb 3e

              GATT-RX:         65 8f 58 ad 3b ce 25 78 0a 6c 22 e0 6d df 7a ea

              GATT-RX:         70 96

              Got provisioning data (65 bytes)

                       03 06 7d 87 4c 9b 38 19 8d 23 5a 7f f6 2f c6 2d

                       f7 98 92 13 ab 0b 43 14 c0 09 2a 06 86 10 87 53

                       dc 6f 66 70 ef 21 e9 05 0e 39 fe 73 7c eb 3e 65

                       8f 58 ad 3b ce 25 78 0a 6c 22 e0 6d df 7a ea 70

                       96

              Request hexadecimal key (hex 16 octets)

              [mesh] Enter key (hex number):

              • 4. Re: BLE MESH support on CYW43455 using Bluez v5.52 on Linux
                maku_2263101

                Hello VictorZ_46,

                 

                Thank you for the reply.

                 

                You are right we require to establish a mesh network between multiple devices (CYW43455).

                Please share us any applications available on Linux Platform.

                • 5. Re: BLE MESH support on CYW43455 using Bluez v5.52 on Linux
                  DheerajP_41

                  Hi,

                   

                  Thank you for providing the details.

                  Currently, we do not have a ready solution available. But, we have a plan to support it, hopefully towards the end of the year.

                   

                  Thanks,

                  -Dheeraj