BLE Isochronous Packet Flush Algorithm Using Anchor Point Data Structures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Bluetooth Low Energy (BLE) connected isochronous streams, existing packet flushing mechanisms are inefficient, leading to potential packet loss and increased latency due to lack of effective timing and acknowledgment protocols for managing packet transmission and reception in short-range wireless communications.

Innovation Solution

A method and system for flushing packets in BLE connected isochronous streams involve linking transmit and receive packet lists, generating data structures for anchor points, and determining packet flush points based on acknowledgments and flush timeouts, ensuring reliable packet delivery and efficient resource management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If existing packet flushing mechanisms are used in BLE connected isochronous streams, then the system is simpler to implement, but packet reliability deteriorates and latency increases

Engineering Contradiction:
Improvepacket delivery reliabilityVSAvoidpacket management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The packet management system is segmented into distinct data structures: transmit packet lists, receive packet lists, and flush timeout lists. Each structure serves a specific function in tracking packet states, allowing the system to manage complex packet flows through modular, organized components rather than monolithic management logic.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by establishing anchor points with pre-configured data structures before packet transmission begins. Flush timeout values are predetermined and associated with each packet list entry, enabling the system to proactively manage packet lifecycles and trigger flush operations at appropriate intervals without ad-hoc decision-making.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If existing packet flushing mechanisms are used in BLE connected isochronous streams, then the implementation is simpler, but latency increases due to ineffective timing management

Engineering Contradiction:
Improvepacket transmission latencyVSAvoidtiming mechanism complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system employs periodic action through anchor points that occur at regular intervals in the BLE connection. Each anchor point triggers evaluation of packet flush conditions based on predetermined timeout values. This periodic structure ensures consistent timing management and prevents packet accumulation while maintaining predictable latency characteristics.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring packet transmission states and comparing current time against predetermined flush timeout values stored in the data structures. When timeout conditions are met, the system provides feedback by triggering flush operations to clear pending packets, thereby controlling latency through closed-loop timing management.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10959128B2Bluetooth low energy connected isochronous stream acknowledgement and flush algorithm and implementation
Publication Date: 2021.03.23 ARM LTD
  • US10959128B2 patent drawing
  • US10959128B2 patent drawing
  • US10959128B2 patent drawing

AI summary

A method, system and computer program product for flushing packets between a master wireless communications device and a slave wireless communication device. The method includes linking a transmit (Tx) packet list and a receive (Rx) packet list at the master and slave wireless communications devices. A Tx data structure is generated for each of a plurality of anchor points and a Rx data structure is generated for each of the plurality of anchor points. Each Tx data structure is added to the Tx packet list, and each Rx data structure is added to the Rx packet list. A packet may then be flushed based on contents of the data structures.