To declare a method as declared externally in the OTAMandatory.h file, you would use the following syntax in the OTAMandatory.h file:
extern void myFunction(integer myVariable);
If the function is properly declared/implemented in your other .c,.h files correctly, then the above syntax should be the only thing to change/add to implement what you stated in your question.
Thanks a lot for your help. As you said I used the syntax in the OTAMandatory.h file. See below:
CYBLE_API_RESULT_T CyBle_GattsWriteRsp (CYBLE_CONN_HANDLE_T connHandle);
However I still receive failure message undefined reference to "CyBle_GattsWriteRsp". I did no other aditional declaration/implementation in my .c,h files; I supposed they were no declaration missing there as the project worked correctly before the implementation of the OTA function...
Then again thanks if you have any other clue, i am happy to hear from you.
I think i will try another direction (with an upgradable Stack OTA Bootloader) as it seems easier, due to the fact that the BLE component can stay in the original existing project.
Have a good day.
Hmmm, I'm pretty sure the CyBle_GattsWriteRsp() is a function generated by the Cypress Library based on the hardware configuration of your BLE component.
You forgot to place the syntax word EXTERN in front of the line. (Assuming you didn't copy paste it wrong).
Extern CYBLE_API_RESULT_T CyBle_GattsWriteRsp (CYBLE_CONN_HANDLE_T connHandle);
Marlene, did you solve this? I'm having the same issue.
I did not solve the problem but I was successful implementing the upgradable Stack OTA Bootloader.