This article explains how to set up the channel plan for auto frequency hopping in WDS and also elaborates on an important concept regarding image reception.
The frequency table will start at a base frequency defined on the “Frequency and Power” tab. The channel separation between adjacent channels is also set on this tab at entry “Channel spacing”. Below example configures a system with a base frequency of 916 MHz and a channel separation value of 250 kHz.
You can build up the frequency table itself on the “Frequency hop” tab. If you wish you can leave out channels from the table as indicated at the end of this example configuration.
Once started the receiver will duly scan the channels starting from 0 in an ascending order. You could ask the question: Can I start at any of the channels? My answer would be there is no point in doing that as you will not have any prior knowledge where the Tx is. If you do, you don’t need the auto frequency hopping feature.
After a packet has been received hopping continuous from the reception channel.
Now, let’s turn to the more interesting part! There is one phenomenon that may place a restriction on channel separation selection in a given system implementation. The phenomenon is reception (albeit much attenuated) on the image frequency. Whenever the Rx is tuned to a particular wanted frequency there will still be reception on its image frequency that is the mirrored wanted frequency on the Intermediate Frequency (IF). More on this phenomenon you can read in AN790:
It may happen so, that at high receiver input power level a signal on the image frequency does get demodulated (even though we would only like to demodulate the signal in the wanted channel). Now, on the image frequency bits will get demodulated inverted, but this does not stop a preamble signal from looking exactly the same from the demodulator’s perspective. (I.e., a 101010 sequence will look exactly the same as a 0101010 sequence shifted by one bit).
Therefore the receiver will detect a valid signal (with preamble detection / DSA detection / RSSI measurement) on the image frequency and it will only realize that the signal is not a desired one when it cannot detect a valid sync word. (As the inverted sync word is most likely not the same as the original.)
Now, imagine we have an auto hopping channel plan where the image of a wanted channel also falls onto a valid channel entry in the hopping table. Suppose that the input power to the receiver is high enough for image reception and the image channel does get checked first. The receiver will detect the signal on the image and will stay there until it concludes that the sync word was not valid. Dependent on the sate machine configuration the receiver may start hopping again, but the packet will already be lost.
To sum it up don’t use channel configurations where one channel falls onto the image reception region of another channel.
The image frequency is two times the IF frequency. You can check the IF of your configuration by reading this article: http://community.silabs.com/t5/Wireless-Knowledge-Base/EZRadio-EZRadioPro-IF-frequencies/ta-p/160892
XO = 30 MHz
Channel spacing = 1 MHz
Rx BW = 300 kHz
IF = -468.75 kHz
Image Frequency = -937.5 kHz
The negative sign indicates that the IF and Image frequencies are below the wanted channel. The image reception band will be an Rx BW wide region centered on the image frequency: from -1087.5 kHz to -787.5 kHz. This band straddles the center frequency of the channel that is 1 MHz below the wanted channel. With this overlap we run the risk of bumping into the phenomenon described above.
If you encounter such a situation you can either change your channel spacing in the hop table or alternatively select an XO with a different frequency.
This article is part of a series that discusses various aspects of auto frequency hopping. Find the links to the other articles below.
It is disappointing that I can not configure the RFIC to autonomously return to sleep on "Hop Wrap".
Consider LDC RX without hopping for a moment. The LDC period, i.e. the period in which the RFIC is awake and in RX mode, has to be long enough for a 'Preamble Detect', with DSA that is 16Tb or more. However, if the DSA returns a 'No Signal Detect' after 4Tb, the RFIC can return to sleep. The RFIC is not awake for the entire LCD period, reducing the duty cycle by a factor of four which saves a lot of current.
My application uses LDC RX and auto hops through five channels during the LDC period. Worst case scenario is that channel number 5 is active and the receiver has to dwell on four channels for a 'No Signal Detect' of 4Tb, and on the fifth channel for a 'Preamble Detect" of 16Tb. The LDC period has to be at least 32Tb.
If no signal is present on any of the channels, ideally the receiver would hop through the five channels, dwelling on each for 4Tb (No Signal Detect) and then return to sleep after the hop table wraps. This way the RFIC would only be awake for 20Tb per LDC period. But instead the hop table wraps and the receiver continues to hop through channels it has already checked until the full LDC period expires. This is a missed opportunity for a near 40% saving in current.