1 Reply Latest reply on Jan 13, 2019 10:52 PM by DheerajK_81

    Stuck on BLE App tutorial

    nabc_3911511

      I was following the Android BLE App tutorial recently and now am stuck in this particular video.

      How to Create a PSoC Android BLE App: Lesson 4 Write the Firmware - YouTube

       

      A few more details:

      - The tutorial is based on PSoC 4. The kit is PSoC 6, but there is no tutorial for 6.

      So, I had to improvise some changes - some settings in PSoC Creator, different pins, etc.

      - When I run the sample code, I get undeclared/implicit declaration errors like this.

      gatt-error.PNG

      - I looked into the entire project code from cypress github to see where in the specific files those declarations are made.

      I found that related declarations with errors are just scattered everywhere - ble gatt related files, ble_stack.h, ble_custom.h, etc which are missing from the project when I generated.

       

      Now, the PSoC Creator UI is slightly changed from the video (assuming there has been upgrades since the tutorial video is 2.5 years old).

      I did pretty much same as the video as in Lesson 3: Configure the BLE Component.

      Is there anything I have to do extra for PSoC 6 BLE before generating the project to include those files?

       

       

        • 1. Re: Stuck on BLE App tutorial
          DheerajK_81

          The macros and functions have undergone a lot of changes. PSoC 6 is completely PDL based and hence please refer to the BLE Middleware guide of the PDL to understand the changes.

           

          The logic however remains the same, hence you can implement the same in PSoC 6 but you need to just make use of the right APIs. For example, the function CyBle_GattsWriteAttributeValue() is now Cy_BLE_GATTS_WriteAttributeValueLocal() but both perform the same operation.

           

          The PDL documentation can be found in this path: C:\Program Files (x86)\Cypress\PDL\3.1.0\doc

           

          I recommend starting the project from scratch and writing the APIs manually and not directly using the files from Github. This might be slightly tedious and if you face any errors we are happy to help! Feel free to create new threads for help.

           

          Regards,

          Dheeraj