Hello Sir,
I hope you are doing well. I am working with two DA14531 Bluetooth modules (Central and Multi-Com Peripheral) to send data via the GATT write function using UART. The communication works fine when the Mobile Bluetooth LightBlue app is used as the central device, but when using the DA14531 as the central device, the write operation fails after approximately 40-50 seconds. It returns the following error codes:
I am working on resolving these issues and have attached the code file for further reference.
2275.central.zip
Hi Amar,Thank you for posting your question online.Glad that you created a separate ticket regarding this issue.Could you please share the SDK version that you are working with?Could you please share the Peripheral device source code as well? Or at least the files with the Services and Characteristics so we can try to recreate the issue on our side?Best Regards,OV_Renesas
Hello sir,
thank you for your support. I have created ticket about this issue . I am using the latest SDK 6.0.22.1401.multi_con_periph.zip
Hi Amar,Apologies for the delay.We have provided the solution on your private ticket(#396471)In order to solve this problem, please add the following case under user_catch_rest_hndlr on the Central side:
case GATTC_EVENT_REQ_IND: { dbg_printf("GATTC_EVENT_REQ_IND!\r\n",NULL); // Confirm unhandled indication to avoid GATT timeout struct gattc_event_cfm * cfm = KE_MSG_ALLOC(GATTC_EVENT_CFM, src_id, dest_id, gattc_event_cfm); cfm->handle = ((struct gattc_event_ind const *)param)->handle; ke_msg_send(cfm); } break;
Thank you so much for your help in solving the issue. I now understand that the problem was caused by the Central subscribing to all characteristics with Notify and Indicate permissions. The lack of an ACK from the Central side was causing the error.
I really appreciate your support!