Part Number: CC2650STK
Other Parts Discussed in Thread: BLE-STACK
Tool/software: TI-RTOS
Hi,
i have a problem when adding observer-functionality to a peripheral. here is my scenario:
i have an application that works as a ble-peripheral on my cc2650stk. (lets call this device A)
when connected to a central ( device B) they wait together for a trigger event and as long as the trigger event is present, the devices A and B exchange information in intervals continuosly.
I wanted to add a beacon to this setup, which when present provides the trigger event.
basically:
1) start: device A -> connect to device B -> connected
2) while connected: device A -> scan for beacon
3) while scan finds beacon: device A -> send notifications to device B
4) if scan stop event -> restart scan immediatly in task-context
the application worked fine before i added the scanning functionality.
my problem is this:
if i scan continuosly and unsuccseful for a while i get a imprecise bus access fault, caused by the ble-stack task (something that does not happen when i run without observer functionality, or the observer as sole)
if i scan succesful for a while (beacon is present, so A talks with B) i get a hal_assert abort from the stack. (something that didn't happen without the scanning)
if i switch the beacon on/off in 20 to 30second intervals everything seems to work fine...
i am really out of ideas how to approach this.
how i added observer to peripheral:
i basicall merged the role-tasks for peripheral and observer into one new role-task (and added the handling functionality of these events into the application task that is akin to simple_peripheral/simple_observer etc.).
i recompiled the stack with the peripheral+observer role option.
disabled filtering of already seen advertisements (so i can see a continuous stream from the same beacon).
Please help.
Regards
