Hello Dialog_Support,
I want to configure my DA14583 device in dual mode[Central and Peripheral].
My scenario is i have two DA14583 device Device_A and Device_B.
1.Device_A always be in peripheral mode so that i can communicate with it using App as well as Device_B.
2.Device_B also should communicate with App and Device_A. Means my device_B should work in dual mode config. Device_B should in Central mode whenever it is talking with Device_A. Same way Device_B should also work in peripheral mode whenever App wants to talk with it.
My question is :
1.is it possible to configure DA15483 work in dual mode central as well as peripheral as per my requirement
2. if yes, then in which all files and functions are responsible for dual mode configuration?
3. which steps do i follow to make my Device_B work in central as well as in peripheral mode?
As i have a short deadline for my project so can you please reply me in details if this kind of dual mode configuration is possible?
Thanks and Regards
Rohit
Hi Rajapurerohit,
1,2,3. Its not possible to configure the 580/581/583 in dual mode, you can only have a role switch, switching between central and peripheral by issuing a GAPM_RESET_CMD (no connections are maintained between the switching), please check the following post for more info:
https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl...
The 585 is capable of operating in dual mode.
Thanks MT_dialog
Hi MT_dialog,
Thank you for the response .
Yes, i want to switch the Device_B role between central and peripheral.
My device_B should work in central mode and do communication with device_A . same way it should switch (device_B) it's role from central to peripheral role and App should able to communicate with device_B.
It would be very helpful if you explain the steps in detail.
Thanks and Regards
Rohit
Hi Rajapurerohit,
Whenever you would like to the switch to occur (counting via a timer or via an extenral event or anything that can trigger the role switching) you will just have to issue a GAPM_RESET_CMD there is a ready function that does that which is the app_gapm_reset_msg_create(). After doing that the device will get a GAPM_CMP_EVT (the gapm_cmp_evt_handler() function), with the operation parameter set to the GAPM_RESET. So as soon as you get this the stack is reset and you should invoke a GAPM_SET_DEV_CONFIG_CMD which will configure the device as a central or as a peripheral. The app_easy_gap_dev_configure() function uses the default parameters from the user_config.h file, so you will have to make a custom implementation in order to select which configuration your device would apply to the stack.
Thanks MT_dialog