IP Library Granted Patent US 8,780,917
Granted Patent B2
US 8,780,917 · App. 12/075,742 · Granted Jul 15, 2014

System, method and computer readable medium for communication on a Zigbee network

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,780,917
App. No.
12/075,742
Granted
Jul 15, 2014
Kind
B2
Abstract

In a Zigbee network, reliable communications are provided by maintaining messages transmitted from a device in a message queue in the device. If no successful acknowledgement is received for a transmitted message, the message is re-transmitted when the message queue executes. Messages are deleted from the queue when the message is successfully transmitted or when a maximum number of re-tries has been exhausted.

Claims (47)

1. A method for communicating on a Zigbee network, comprising:

transmitting a message from a first queue of a device;

determining whether the message has a message order requirement;

when the message has a message order requirement, transmitting the message from the first queue;

determining whether the message was successfully transmitted;

when the message was not successfully transmitted, determining when the message can be re-transmitted;

when the message can be re-transmitted determining whether there are any subsequent messages to be transmitted after the message;

when there are any subsequent messages to be transmitted after the message, storing the message and all subsequent messages as a batch of messages in a particular order in a second queue that is different from the first queue;

re-transmitting the message and transmitting all subsequent messages in the batch until the batch of messages is successfully transmitted or a maximum number of re-tries is reached;

wherein storing the transmitted message in the second queue comprises storing the message in a re-try queue and wherein the step of re-transmitting the message comprises executing the re-try queue; and

when the maximum number of re-tries requirement for the message has been met, deleting the message from the re-try queue.

2. The method according to claim 1 wherein determining whether the message can be re-transmitted comprises determining when a maximum number of re-tries requirement has been met.

3. The method according to claim 2 wherein the step of re-transmitting the message further comprises incrementing a re-try counter.

4. The method according to claim 1 wherein the re-try queue is executed periodically.

5. The method according to claim 1 wherein each of a plurality of messages in the re-try queue are transmitted from the device sequentially.

6. The method according to claim 1 further comprising storing a message with a message order requirement in a batch re-try queue; and executing the batch re-try queue.

7. A device for use on a Zigbee network, the device comprising:

at least one transmitter;

at least one processor; and

at least one memory;

wherein the transmitter is configured to transmit at least one message from a first queue;

wherein the processor is configured to determine whether the message has a message order requirement;

when the message has a message order requirement, the processor is configured to transmit the message from the first queue;

wherein the memory stores said transmitted message;

wherein the processor determines whether the message was transmitted successfully;

wherein when the message was not transmitted successfully, the processor determines when the message can be re-transmitted; and

wherein when the message can be re-transmitted the processor determines whether there are any subsequent messages to be transmitted after the message;

when there are any subsequent messages to be transmitted after the message, the memory stores the message and all subsequent messages as a batch of messages in a particular order in a second queue that is different from the first queue;

wherein the transmitter re-transmits the message and all subsequent messages in the batch until the batch of messages is successfully transmitted or a maximum number of re-tries is reached;

wherein the second queue is a re-try queue;

wherein the processor is configured to delete a message from the re-try queue when the processor determines that a maximum number of re-tries requirement has been met;

wherein the processor is configured to execute the re-try queue.

8. The device according to claim 7 further comprising a counter, wherein the processor determines whether a message can be re-transmitted using said counter.

9. The device according to claim 8 wherein the processor increments the counter when a message is re-transmitted.

10. The device according to claim 7 wherein the processor is configured to delete a message from the re-try queue when the processor determines that a message has been transmitted successfully.

11. The device according to claim 7 wherein the processor is configured to execute the re-try queue by causing messages in the re-try queue to be re-transmitted sequentially.

12. A non-transitory computer-readable storage device comprising computer-executable instructions for execution by at least one processor of a device of a Zigbee network, that, when executed, causes the at least one processor to perform:

transmitting a message from a first queue of a device;

determining whether the message has a message order requirement;

when the message has a message order requirement, transmitting the message from the first queue;

determining whether the message was successfully transmitted;

when the message was not successfully transmitted, determining when the message can be re-transmitted;

when the message can be re-transmitted determining whether there are any subsequent messages to be transmitted after the message;

when there are any subsequent messages to be transmitted after the message, storing the message and all subsequent messages as a batch of messages in a particular order in a second queue that is different from the first queue;

re-transmitting the message and transmitting all subsequent messages in the batch until the batch of messages is successfully transmitted or a maximum number of re-tries is reached;

wherein storing the transmitted message in the second queue comprises storing the message in a re-try queue and wherein the step of re-transmitting the message comprises executing the re-try queue; and

when the maximum number of re-tries requirement for the message has been met, deleting the message from the re-try queue.

Assignments (4)
MERGER AND CHANGE OF NAME Recorded Aug 6, 2019
From: AMX LLC; HARMAN PROFESSIONAL, INC.
To: HARMAN PROFESSIONAL, INC.
Reel/Frame 049976/0124 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2016
From: HARGRAVE, JAMES ROGER; XU, KELVIN HUI; ESCAMILLA, DAVID ALAN
To: AMX LLC
Reel/Frame 039417/0800 →
RELEASE OF SECURITY AGREEMENT RECORDED AT REEL/FRAME 020941/0884 Recorded Dec 11, 2012
From: JPMORGAN CHASE BANK, N.A.
To: AMX LLC
Reel/Frame 029442/0483 →
SECURITY AGREEMENT Recorded May 15, 2008
From: AMX LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 020941/0884 →