I am trying to understand how I can change the frame type of an Eddystone slot at runtime directly from the application, so not connecting from the bluetooth mobile app. I am developing my application on top of the Eddystone example and I have seen how one can do this by default by changing the DEFAULT_FRAME_TYPE definition in the file "es_app_config.h". However I would like to be able to perform this operation at runtime.
I think I understand how to change tx power and even the frame data from the nrf_ble_es library, but not how to change the frame type. Can that be done at all?
Thank you very much.
Everything the mobile app can do, should be possible to do directly from code as well. Take a look at the function es_gatts_write_handle_unlocked_write() in es_gatts_write.c, and the different functions in es_slot.c
Hi, thank you for your answer, the function es_slot_on_write() from es_slot.c does the trick. However I changed the SDK code a little so that I am able to feed an es_url_frame_t or es_uid_frame_t directly, without the need to remove the ranging data field.