This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

[title:arduino] No ACKs after initial send

Hi All,

BLE Nordic Stack: 0.9.7 Tiny Circuits: Ardunio + Nordic nRF8001 Board

 First time post, and hoping someone has run into the same issue that I am.   I am in the process of writing a custom sensing ble device.  I have created a custom UUID service in nRFGo.  The service itself is a notify endpoint.  I have an iOS app connecting to the device and registering for the notify characteristic.   

The following Sequence Occurs
Pipe Status -> Enable Notify
Connection Interval Updated to 1000ms
(2 Credits Available)
Send Data 1 (Credit -1)
(async wait 1250ms)
Send Data 2 (Credit -1)
Evt Credit: Peer Radio acked (Credit +1)
Send Data 3
Evt Credit: Peer Radio acked (Credit +1)
Send Data 4
(skip send, no credit)
(skip send, no credit)
(skip send, no credit)
(skip send, no credit)
(disconnect)

Has anyone else run into this type of issue?   Am I missing something from the example functions in terms of credit management which is causing the send not to work? 

Serial Debug With Verbose Logging:

E17 :11, 88, BF, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
Evt Pipe Status
191
C1 :1, 13,
Notify Enabled
E3 :3, 84, 13, 0,
ACI Command 13
E7 :7, 89, 1E, 3, 0, 0, 58, 2,
Timing changed. New connection interval: 998 ms
Credit available: 2
Credit total: 2
Send Data
C20 :14, 15, 8, 2A, 3E, 37, 0, 4B, 8, 14, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
Credit available: 1
Credit total: 2
Send Data
C20 :14, 15, 8, 2A, 3E, 37, 0, 4B, 8, 14, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
Credit available: 0
Credit total: 2
Skipping Send
Credit available: 0
Credit total: 2
Skipping Send
Credit available: 0
Credit total: 2
Skipping Send
Credit available: 0
Credit total: 2
Skipping Send
E3 :3, 86, 3, 8,
Evt Disconnected -> Link lost. Bluetooth Error code = 0x8

If this isn't enough or the correct level of insight into the code, let me know and I can post what is needed.

Parents
  • Hi run_ar, I apologize for the poorly formatted log file above. I am seeing two (ACI_EVT_DATA_CREDIT) events and then I never get anymore sent from the host. This occurs both on the Mac, and the LightBlue Application. Basic question; since this is a notification pipe and not an indicate pipe should there even be Credits / ACKs? I thought notifications were just send and forget?

Reply
  • Hi run_ar, I apologize for the poorly formatted log file above. I am seeing two (ACI_EVT_DATA_CREDIT) events and then I never get anymore sent from the host. This occurs both on the Mac, and the LightBlue Application. Basic question; since this is a notification pipe and not an indicate pipe should there even be Credits / ACKs? I thought notifications were just send and forget?

Children
No Data
Related