Sometimes the service discovery procedure in Android will discover all services but not the characteristics included in them. So all services will be empty. If I then open the nrf Master Control Panel and connect to the peripheral it will also show all the services but no characteristics. However, if I then choose Refresh Services in the menu all the charcteristics will be discovered ok.
I know this is a problem with the ble stack in Android and my question is exactly what does the Refresh Services procedure in nrf Control Panel do?
Update: Sorry but I can't get refresh to work properly. It works fine in the MCP but in my app it does not. I can see in the log that is getting called but it does not refresh the services. I have been careful to call it from the main thread only (via a handler).
When should refresh be called; when connected or disconnected. Do I have to call discoverServices() afterwards or is that done automatically? It there any other thing I need to know?
Regards /Erik