You cannot disable advertisement timeout, but you can do following things:
1) Keep the timeout period huge. For start, this can be set to 65000 in BLE Component GUI ->Gap Settings Tab -> Advertisement Setting.
2) When Advertisement timeout happens, you get an event. In that event, restart advertisement:
/* Restart Advertisement if the state is disconnected */
if(CyBle_GetState() == CYBLE_STATE_DISCONNECTED )
Thank you Rohit, that works great.
I disabled the slow advertising and set the fast advertising to every 5 seconds.
It took me a while to find where to change the advertising packet in code so that I can modify the manufacturer specific data, but I found it in cyBle_discoveryData
For some reason the Verify Answer button is missing...
FYI - I saw this project that shows how to update manufacturer specific data in an advertisement packet. https://github.com/cypresssemiconductorco/PSoC-4-BLE/tree/master/100_Projects_in_100_Days/Day009_Dynamic_Broadcaster
Is this a new feature? Before I asked this question back then I tried using 0 as the timeout value but was given an error mesage that the minimum value was 1, if I recall correctly.
I had the same question and later found out that the internal API "CyBle_GappEnterDiscoveryMode" supports unlimited timeout when the timeout parmeter is set to zero, but the component API "CyBle_GappStartAdvertisement" doesn't support it today.
Cypress team, can you add this to your component?