CY8C4248LQI-BL583 BLE API Not Properly Generating

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

cross mob
ErPi_4599236
Level 1
Level 1
First solution authored First reply posted First question asked

I have a large project which I am trying to add a new characteristic to an existing service. I am using the CY8C4248LQI-BL583 chip and I can't seem to get the BLE APIs to properly generate. I keep getting an error when referencing the characteristic's handle. Note that this project is configured for OTA updates so I have a bootloader and a bootloadable projects. 

Steps taken so far:

1. Go to the bootloader project, open the BLE 4.2 component, navigate to profiles, and add my new "custom glows" characteristic under the LED service. I set the read / write properties and the UUID of the characteristic. 

2. I delete the automatically generated custom descriptor and add a CCCD, as instructed by the documentation. 

3. Click OK, then clean / build the bootloader project. 

4. I clean / build the bootloadable project. 

5. I navigate to my bleCallback.c file in the bootloadable project and try to reference the newly added characteristic handle (as such: CYBLE_LEDS_GLOWS_CONTROL_CHAR_HANDLE) and it throws an error that I'm using an undeclared identifier. 

The strange thing is if I navigate to the CyBle_custom.h file in the bootloader project, I see my CYBLE_LEDS_CUSTOM_GLOWS_CHAR_HANDLE value defined. I just can't reference it in my bootloadable project. 

Also, my newly defined characteristic handle does not show up in the cyapicallbacks.h file of my bootloadable project. But, this file does contain all of the handles for my previously defined custom characteristics. 

Does anyone have any thoughts as to what I'm doing wrong here? 

I should note that I have recently migrated from a CY8C4148LQI-BL453 to the CY8C4248LQI-BL583 I'm using currently. This is my first time manipulating the BLE stack on this new MCU. 

0 Likes
1 Solution

Hi Genesh,

I am using the Fixed Stack Upgradable OTA. Can you recommend any references to help in migrating over to the Upgradable OTA? 

I ended up fixing this problem by updating the cypaicallbacks.h file (in the bootloadable) to match the CyBle_custom.h file (in the bootloader). It seems the header declarations were not carrying over to the bootloadable project. 

View solution in original post

0 Likes
3 Replies