Enhanced channel hopping sequence
A system and method for enhanced channel hopping sequence is described. A pseudo random channel hopping sequence is redistributed using certain system specific parameters for separating adjacent transmission channels within a predetermined number of consecutive transmission channel numbers in the random channel hopping sequence to improve inter-channel interference between adjacent transmission channels.
1. A method comprising:
determining, by a first network device, a sequence of channels for transmission of data between the first network device and a second network device such that:
the sequence of channels comprises a subset of channels having a number of channels; and
each channel in the subset of channels is at least a channel threshold distance away from an adjacent channel in the subset of channels; and
transmitting the data between the first network device and the second network device using channel hopping according to the sequence of channels, wherein the number of channels or the channel threshold distance is based on a limit on retransmission attempts associated with the transmission of data between the first network device and the second network device.
2. The method of claim 1 , further comprising, receiving, by the first network device, the number of channels and the channel threshold distance from the second network device.
3. The method of claim 2 , wherein the receiving of the number of channels and the channel threshold distance is performed during a session initiation.
4. The method of claim 1 , wherein the number of channels is based on the limit on retransmission attempts associated with the transmission of data between the first network device and the second network device.
5. The method of claim 1 , wherein the channel threshold distance is based on the limit on retransmission attempts associated with the transmission of data between the first network device and the second network device.
6. The method of claim 1 , wherein the channel threshold distance is based on at least one of: a history of packet loss, a maximum expected adjacent channel leakage, or a physical environment of the first network device.
7. The method of claim 1 , wherein the transmitting of the data between the first network device and the second network device uses at least one of: Bluetooth, IEEE 802.15, or Wi-Fi wireless communication protocol.
8. The method of claim 1 , wherein:
the sequence of channels is a first sequence of channels; and
the determining of the first sequence of channels includes:
determining a second sequence of channels; and
for each channel in the second sequence of channels:
determining whether the respective channel is at least the channel threshold distance from a previous channel; and
determining whether to add the respective channel to the first sequence of channels or a skip list based on whether the respective channel is at least the channel threshold distance from the previous channel.
9. The method of claim 8 , wherein the second sequence of channels is a pseudo random sequence of frequencies.
10. The method of claim 8 , wherein the second sequence of channels is a linear feedback shift register sequence of frequencies.
11. The method of claim 8 , wherein the determining of the first sequence of channels includes, for each channel in the skip list:
determining whether the respective channel is at least the channel threshold distance from a previous channel; and
determining whether to add the respective channel to the first sequence of channels based on whether the respective channel is at least the channel threshold distance from the previous channel.
12. A device comprising:
a transceiver; and
a processing unit coupled to the transceiver, wherein the processing unit is configured to:
receive a number of channels and a channel threshold distance;
determine a sequence of channels for an exchange of data by the transceiver such that:
the sequence of channels comprises a subset of channels having the number of channels; and
each channel in the subset of channels is at least the channel threshold distance away from an adjacent channel in the subset; and
cause the transceiver to perform the exchange of data using channel hopping according to the sequence of channels, wherein the number of channels or the channel threshold distance is based on a limit on retransmission attempts associated with the exchange of data.
13. The device of claim 12 , wherein the processing unit is configured to receive the number of channels and the channel threshold distance during a session initiation.
14. The device of claim 12 , wherein the number of channels is based on the limit on retransmission attempts associated with the exchange of data.
15. The device of claim 12 , wherein the channel threshold distance is based on the limit on retransmission attempts associated with the exchange of data.
16. The device of claim 12 , wherein the channel threshold distance is based on at least one of: a history of packet loss, a maximum expected adjacent channel leakage, or a physical environment of the device.
17. The device of claim 12 , wherein the processing unit is configured to cause the transceiver to perform the exchange of data using at least one of: Bluetooth, IEEE 802.15, or Wi-Fi wireless communication protocol.
18. The device of claim 12 , wherein the processing unit is configured to receive the number of channels and the channel threshold distance via the transceiver.
19. The device of claim 18 , wherein:
the device is a first device;
the processing unit is configured to cause the transceiver to perform the exchange of data with a second device; and
the processing unit is configured to receive the number of channels and the channel threshold distance from the second device.
20. The device of claim 12 , wherein:
the sequence of channels is a first sequence of channels; and
the processing unit is configured to determine the first sequence of channels by:
determining a second sequence of channels; and
for each channel in the second sequence of channels:
determining whether the respective channel is at least the channel threshold distance from a previous channel; and
determining whether to add the respective channel to the first sequence of channels or a skip list based on whether the respective channel is at least the channel threshold distance from the previous channel.
21. The device of claim 20 , wherein the second sequence of channels is a linear feedback shift register sequence of frequencies.