Tag Freezes on Connection in App Mode

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

I'm working on an app that acts as a central, client device for Sense Kit tags, connecting to up to four Sense Kits and relaying notifications over the Peripheral UART.

My image works fine in download mode, but it doesn't work properly in app mode. Here's what I'm seeing:

My advertising report callback calls    blecen_Conn(LOW_CONN, evt->wd_addr, evt->addressType);    when it sees a Sense Kit. My connection up handler eventually returns without a problem, as does my advertising report callback.

Once this has happened though, my app timer stops. After four seconds, the watchdog resets the tag, and the process begins again.

Can I get any documentation on blecen_Conn? I need to understand what side effects might be occurring here.

I don't see this problem in download mode; the tag connects to the Sense Kit, the app timer keeps ticking, and everything carries on as I would expect.

I've attached my source.

0 Likes
1 Solution
Anonymous
Not applicable

Well, I'm surprised I was able to, but I traced it to a missing Write Response Callback. Apparently, if a write response comes in without a callback handled, the whole SDK just locks up until the watchdog knocks it over. That seems like the sort of thing you could really produce a useful error for.

View solution in original post

4 Replies
Anonymous
Not applicable

Can I please get a response on this? Trying to figure out what's going on inside the stack without documentation is costing me an unacceptable amount of time.

Here's what I'm seeing in the tracelog as the connection comes up, which appears to confirm that something is killing my timers.

10:38:42   LEDBlink(50, 50)

10:38:42   LEDBlink Num = 0

10:38:42   Connection is UP.

10:38:42   connUp

10:38:42   noAdv

10:38:42   blecen_connUp[5:2]: 20 73 77 65

10:38:42   blecen_connUp[1:0]: 43 21, handle: 0040

10:38:42   ConnTimer stopped: 1

10:38:42   NoConn

10:38:42   LEDBlink(50, 100)

10:38:42   LEDBlink Num = 0

10:38:42   ConnParamUpdateReq

10:38:42   ConnParamUpdate:Min Interval: 64, Max Interval: 96

10:38:42   ConnParamUpdate: Slave LAtency: 0, timeout: 0

10:38:42 - b5b048806900b18047002010bd10b5ad

10:38:42 - 49021dcb692bb10088b2f80110c01ed2

10:38:42 - 1c9847002010bd10b5a649021d0b6a2b

0 Likes
Anonymous
Not applicable

Hello Tom,

We will take a look at your Trace Log.

Apologize for the delay

JT

0 Likes
Anonymous
Not applicable

Well, I'm surprised I was able to, but I traced it to a missing Write Response Callback. Apparently, if a write response comes in without a callback handled, the whole SDK just locks up until the watchdog knocks it over. That seems like the sort of thing you could really produce a useful error for.

Anonymous
Not applicable

Hello Tom,

Thanks for the input.  I will alert the development team.

Thanks for your patience.

JT

0 Likes