Hello,
we have got a use case where we are deregister and register a service from time to time. If the system runs over years the following case could happen in reality when the system is in customer hands:
After my last question relating to register and deregister a service, my additional question relating to the stack: "what whill happen if the handle id reaches the uint16_t 0xFFFF" was not answered. Thus I tried it by myself. I continuously register and deregister the same service and output the handle ID of the service to the UART. My service has got 6 items so the stack increments the handle ID by 6 after registering my service.
After deregistering the service handle ID 3358, no new service can be registered. Furthermore the M3 CPU hangs up after initiating the registering process. The M0 CPU is still running until a new BLE event happens. Then the complete system is dead. The only solution is to reset the whole device. I read about it in an older forum post from 2014. So I assume, Ti did not fix that BLE stack bug in the meantime of 4 years?
Do you have a smoother solution except resetting the whole device?
Thanks you.
Regards
Andre