Tool/software:
Hello, I am an engineer at Zivix working on the Jamstik product which uses an Infineon bluetooth module. I am in communication with an engineer working on the Widi bud product using a TI CC2642R. Both products use the same BLE MIDI Service (UUID: 03B80E5A-EDE8-4B33-A751-6CE34EC4C700)
The Jamstik is a BLE peripheral, and the Widi Bud a BLE central.
I attempted to attach a wireshark capture to this thread, but I don't think it was successful. It shows an issue with Find By Type Value request. I have created a support ticket with Infineon and they believe their library is behaving correctly, and that this is an issue in the TI library. I would like to hear from you if you agree with that assessment.
From the wireshark capture
if(connList[connIndex].centralBLEState == BLE_STATE_DISCOVER_SERVICES)
{
// Service found, store handles
if ((pMsg->method == ATT_FIND_BY_TYPE_VALUE_RSP) && (pMsg->msg.findByTypeValueRsp.numInfo > 0))
{
connList[connIndex].svcStartHdl = ATT_ATTR_HANDLE(pMsg->msg.findByTypeValueRsp.pHandlesInfo, 0);
connList[connIndex].svcEndHdl = ATT_GRP_END_HANDLE(pMsg->msg.findByTypeValueRsp.pHandlesInfo, 0);
}
// If procedure complete
if (((pMsg->method == ATT_FIND_BY_TYPE_VALUE_RSP) && (pMsg->hdr.status == bleProcedureComplete)) || (pMsg->method == ATT_ERROR_RSP))
{
// services are discovered, discover now the characteristics
startDiscoveringServicesAndChars(connIndex, BLE_DISC_STATE_CHAR_BY_UUID);
}
}