Fix for "Configured" event not working.
This commit is contained in:
parent
45df6f952a
commit
866f484b00
6 changed files with 28 additions and 6 deletions
|
|
@ -54,9 +54,6 @@ bool BLE_IsPacketNew(const uint8_t *sender_BD_ADDR,
|
|||
BLE_PacketType_T packet_type,
|
||||
uint8_t event_number)
|
||||
{
|
||||
//esp_log_level_set("BLE", ESP_LOG_DEBUG);
|
||||
//KLOG_DEBUG("BLE", "Packet from %s", BLE_ADDR_To_Str(sender_BD_ADDR));
|
||||
|
||||
// Check if the packet already exists in the tracker.
|
||||
for (int i = 0; i < Tracker.count; i++)
|
||||
{
|
||||
|
|
@ -66,11 +63,18 @@ bool BLE_IsPacketNew(const uint8_t *sender_BD_ADDR,
|
|||
(Tracker.packets[index].event_number == event_number))
|
||||
{
|
||||
// We've already seen this packet.
|
||||
KLOG_TRACE("BLE", "Packet from %s is not new.", BLE_ADDR_To_Str(sender_BD_ADDR));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// The packet is new--find the location to store it.
|
||||
KLOG_DEBUG("BLE", "Packet from %s is new.", BLE_ADDR_To_Str(sender_BD_ADDR));
|
||||
return true;
|
||||
}
|
||||
|
||||
void BLE_RememberPacket(const uint8_t* sender_BD_ADDR, BLE_PacketType_T packet_type, uint8_t event_number)
|
||||
{
|
||||
// Find the location to store the packet.
|
||||
int new_index;
|
||||
if (Tracker.count < MAX_REMEMBERED_PACKETS)
|
||||
{
|
||||
|
|
@ -89,8 +93,6 @@ bool BLE_IsPacketNew(const uint8_t *sender_BD_ADDR,
|
|||
memcpy(Tracker.packets[new_index].sender_BD_ADDR, sender_BD_ADDR, BD_ADDR_SIZE);
|
||||
Tracker.packets[new_index].packet_type = packet_type;
|
||||
Tracker.packets[new_index].event_number = event_number;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Initialize the MessageTracker
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
bool BLE_IsPacketNew(const uint8_t* sender_BD_ADDR, BLE_PacketType_T packet_type, uint8_t event_number);
|
||||
void BLE_RememberPacket(const uint8_t* sender_BD_ADDR, BLE_PacketType_T packet_type, uint8_t event_number);
|
||||
void BLE_ClearPacketTracker(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
|||
|
|
@ -118,6 +118,11 @@ SystemKResult_T BLE_HandleCommonEvents(KEvent_T *event)
|
|||
result = SYSTEMK_RESULT_OVERFLOW;
|
||||
}
|
||||
}
|
||||
|
||||
if (result != SYSTEMK_RESULT_EVENT_NOT_HANDLED)
|
||||
{
|
||||
BLE_RememberPacket(event_packet->BD_ADDR, BLE_PACKET_TYPE_EVENT, event_packet->event_number);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue