CYBT-333047-02

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
KaGo_4359196
Level 3
Level 3
First like given Welcome!

Hello,

I am working on bluetooth project, I bought CYBT-333047-Eval board and I am really new to this bluetooth field, So could you guys please help me with my questions?

1. First what I should need to know about the bluetooth ?

2. I understood how to use the wiced studio, how to download the program into the evaluation board, But I didn't understand exactly what is happening between HCI-UART and PUART when programming?

3. I am working with examples programming, I tried to download Hello_sensor example program, it got successfully downloaded and I am able to discover it on Android device but not on IOS device. Can anyone please explain me what is happening in the Helo_senor example? 

4. I need to program this bluetooth module for application like, it should be discoverable by all the devices and also for the data transcation between the devices.

Could anyone please help me what process (knowing about stack or firmware or what else) I should follow in order to understand this module as a beginner and also how can I program this module?

Thanks in advance.

Regards,

Kalpana

0 Likes
1 Solution
SheetalJ
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 500 likes received

Hello Kalpana,

We have enough documentation to help you understand the process. Here are my answers to your doubts:

1. As a beginner, you need not go to BT stack implementation. Just go through some basics on Bluetooth (BT) connection process and BT protocol stack and their basic functioning. I think this should be enough to get started with Bluetooth. Here is some quick search I found for you: Bluetooth Basics - learn.sparkfun.com​,  Bluetooth 101 - Bluetooth Architecture | Wayne Staab, PhD | HearingHealthMatters.org

2. HCI UART is mainly used for downloading the program to board. It is used to send HCI commands from host to controller. PUART is used for debug logs. You can check the logs on Teraterm, Putty using PUART.

3. Can you please refer to the comments given in code c files. Also, we have different APIs for different functions; Functioning of them is specified in library files. Select the API in WICED SDK, right click and click on Open Declaration. It should open the definition of APIS/function.

Our WICED documentation section should be useful- /20706-A2_Bluetooth/doc

You should be able to scan the device uisng Androis/iOS both. Can you reprogram the board and check with any other iOS device?

4. Using Hello_sensor demo app, your device will advertise itself acting as peripheral and other devices acting as central (Hello_client demo app) will be able to scan it.

Following document is for CYW20819 but its should give an idea about programming procedure- https://www.cypress.com/documentation/application-notes/an226546-cyw20819-feature-and-peripheral-gui...

Also, following are some reference docs for you-

https://www.cypress.com/documentation/development-kitsboards/cybt-333047-eval-ez-bt-module-arduino-e...

Let me know if you have more doubts.

View solution in original post

4 Replies
SheetalJ
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 500 likes received

Hello Kalpana,

We have enough documentation to help you understand the process. Here are my answers to your doubts:

1. As a beginner, you need not go to BT stack implementation. Just go through some basics on Bluetooth (BT) connection process and BT protocol stack and their basic functioning. I think this should be enough to get started with Bluetooth. Here is some quick search I found for you: Bluetooth Basics - learn.sparkfun.com​,  Bluetooth 101 - Bluetooth Architecture | Wayne Staab, PhD | HearingHealthMatters.org

2. HCI UART is mainly used for downloading the program to board. It is used to send HCI commands from host to controller. PUART is used for debug logs. You can check the logs on Teraterm, Putty using PUART.

3. Can you please refer to the comments given in code c files. Also, we have different APIs for different functions; Functioning of them is specified in library files. Select the API in WICED SDK, right click and click on Open Declaration. It should open the definition of APIS/function.

Our WICED documentation section should be useful- /20706-A2_Bluetooth/doc

You should be able to scan the device uisng Androis/iOS both. Can you reprogram the board and check with any other iOS device?

4. Using Hello_sensor demo app, your device will advertise itself acting as peripheral and other devices acting as central (Hello_client demo app) will be able to scan it.

Following document is for CYW20819 but its should give an idea about programming procedure- https://www.cypress.com/documentation/application-notes/an226546-cyw20819-feature-and-peripheral-gui...

Also, following are some reference docs for you-

https://www.cypress.com/documentation/development-kitsboards/cybt-333047-eval-ez-bt-module-arduino-e...

Let me know if you have more doubts.

Hello Sheetal,

Thank you so much for your reply.

I went through with the basics and understood how exactly the bluetooth works and what are the different bluetooth profiles.

But I have some questions regarding the bluetooth profiles

For my project, I just have to establish the connection between the two devices for the data transfer, so for this application, I understood I must use SPP profile.

But Is SPP profile is only responsible for data transfer ? or is it also responsible for the discovery and establishing a connection between the devices? if not, should I use SDAP or GAP profiles ?

Is the GATT profile is used only for BLE devices and it's application is to discover and establish the connection or is it also helps for the data transfer?

I am little confused after reading so much, which profiles I should use for my apllication, could you please help me with this?

Should I also use DIP profile for creating ID for the device?

I will try again with the hello_sensor program and I will let you know about the progress.

Thank you.

0 Likes

SPP is the Bluetooth profile while GAP, GATT are BLE profiles. If you want to transfer data using Bluetooth (BR-EDR), then you can go for SPP.

If you are looking for BLE connection, then you wil have to use GATT profile. search for BLE protocol stack and you will get detailed info on this.

Thank you for the explanation.

I need to use dual mode, so I need both BLE and BR-EDR.

For BR-EDR, I can use only SPP or should I use also SDAP profile?

For BLE, I can use only GATT or Should I use also GAP profiles?

I programmed my Evaluation board again with Hello_sensor program, I can discover this on IOS devices only using CYsmart app. Once I connected with cysmart app, then I can see it connected on bluetooth application of my mobile. If I don't connect it with the cysmart app, then I am unable to find it when I scan for the available bluetooth devices. Could you please explain me, why I am not able to discover it without using cysmart app?

Thank you.

0 Likes