If you’re not interested in the maths, skip to the last paragraph for the conclusion!
S-FHSS is a trade mark of Futaba. 

S-FHSS

Introduction

The Futaba S-FHSS protocol uses 2-FSK, with an over the air bit rate of 128 kbps, a packet size of 168 bits and a Cyclic Redundancy Check (CRC) but no forward error correction (FEC). There are typically two packets (336 bits) per frame, where a frame contains control information for all channels. The frame period is 6,800 μs, so the frame rate is 147 frames/second.

I thought it would be interesting to use this information to predict the maximum theoretical range of a 100 mW system such as my Futaba 6K. For the sake of simplicity I have assumed that RF noise is Gaussian.

S-FHSS Range Calculation

While the high frame rate may have a benefit in terms of reducing the control latency, it clearly is more than is required to maintain control of an aircraft. The old analog RC systems had a frame rate of 50 frames/s, which was considered perfectly adequate. In order to calculate a maximum range, we must specify the number of data errors that we consider acceptable. Since the protocol’s Cyclic Redundancy Check (CRC) will reject packets with even a single bit error, the effect of errors will not be random control movements, but rather a reduction in the rate at which control positions are updated. For the sake of this rough calculation, I shall assume that an average 10 error-free frames per second is the limit of what is acceptable to give adequate control of a model. At this rate I the control latency would be noticeable and the controls would probably feel distinctly glitchy, but I expect that one could still fly the model.

To calculate the Bit Error Rate BER, we note that the chance of a 336-bit frame having no errors is (1-BER)336. Since we require at least 10/147 frames to have no errors,

(1-BER)336 ≤ 10/147
∴ BER ≤ 0.008

I shall assume coherent demodulation – the CC2500 datasheet does not specify this but the block diagram in Fig. 2 shows In-phase and Quadrature signals being fed into the demodulator, so it is a reasonable assumption to make. Achieving a BER of 0.008 (8 x 10-3) requires a normalised signal to noise ratio Eb/N0 of about 7.7 dB (see graph “Probability of Bit Error: Binary Modulations” in www.atlantarf.com/FSK_Modulation.php). Allowing 1dB implementation margin increases the required Eb/N0 for a practical receiver to 8.7dB.

According to Measurements of Man-Made Spectrum Noise Floor the average received power spectral density in the 2.4 GHz ISM band measured at a number of locations ranged from -101.7 dBm/MHz and -78.7 dB (see Table 21, Average Received Power, 2.4 GHz vertically polarized). We can assume for simplicity that the de-spreading of the signal would result in a homogeneous noise floor equal to this average received power spectral density, and will use these figures to represent RF quiet and RF noisy locations respectively.

First we should determine the extent to which the receiver noise floor will affect the result. From my analyses of the R3008SB and SF800 S-FHSS receivers I expect the receiver noise figure to be around 4 dB (0.5 dB for each of two switches, 2 dB for the LNA, 1 dB for circuit losses). Since the thermal noise floor (kTB) in 1 MHz bandwidth is -114 dBm, this means the receiver sensitivity is about -110 dBm in 1 MHz bandwidth. This is 8.3 dB below the predicted environmental noise floor for a quiet RF environment, so the receiver noise floor contributes 0.6 dB to the total noise floor in a quiet environment.

Converting to 1 Hz bandwidth and adding the 8.7 dB Eb/N0 gives a minimum energy per bit of between -152.4 dB mJ/bit (quiet environment) and -130.0 dB mJ/bit (noisy environment). The bit rate of 128 kbps gives a symbol period of 7.8 μs, or -51 dB s. Subtracting this from the energy per bit gives a required receiver signal power of between -101.3 dBm (quiet environment) and -78.9 dBm (noisy environment). Assuming a transmitter power output of 20 dBm (100 mW) and assuming 0 dBi antennas on both sides of the link and 3 dB loss from polarisation mismatch (consistent with the receiver antenna oriented 45° off vertical), we calculate the maximum acceptable path loss to between be 118.3 dB (quiet environment) and 95.9 dB (noisy environment).

Applying the Friis free-space path loss equation at the band centre frequency of 2.45 GHz predicts a maximum range of 8.0 km (5 miles) in a quiet RF environment and 600m (2000′) in a noisy RF environment. It is interesting to note that if there was absolutely no RF noise, so system performance was limited only by the assumed 4 dB noise figure of the receiver, then the maximum range would be about 22 km (14 miles). This shows the importance of environmental RF noise levels in determining the transmitter range.

Effect of Protocol Improvements

In my analysis of the S-FHSS protocol, I suggested two areas or improvement that would affect the range. The first was to eliminate redundancy and hence reduce the user data rate, and the second was to incorporate forward error correction. I showed that by eliminating redundancy the user data rate could be halved, allowing the use of a rate 1/2 FEC code without increasing the over the air data rate. This would give a 3 dB performance improvement from the reduced user data rate. A further 2-3 dB coding gain should be achievable from the CC2500 implementation of rate 1,2 FEC coding (see TI Design Note DN504). Hence a total reduction of 5-6 dB in the required SNR should be achievable, which would increase the operating range by a factor of 1.8 to 2.0. Since the FEC implementation is built into the CC2500 IC used by Futaba transmitters and receivers, this improvement could be made with no hardware changes.

It is also interesting to analyse the effect of reducing the frame rate. Since 50 frames per second used to be just fine, let’s assume this figure. Since we shall still require 10 uncorrupted frames per second at maximum range, this actually decreases the required BER to 0.005 and increases the required Eb/N0 by 0.6 dB to 8.3 dB, or 9.3 dB including implementation margin (we are sending fewer frames, so we can accept fewer errors to get the required 10 frames per second, so we need a “better” signal). However the payback comes in a 4.7 dB improvement in energy per bit, since the user data rate is now reduced to 43.5 kbps (so we are transmitting a “better” signal). Following through the same calculations as above, we determine a maximum range of 1.0 km (0.6 miles) for a noisy RF environment and 12.9 km (8.0 miles) for a quiet environment. So what you gain in terms of reduced latency does come at a cost in terms of range.

Since the improvement due to reduced frame rate and the improvement due to reduced redundancy and the incorporation of FEC are independent of  each other, we can calculate the effect if both improvements are combined by multiplying these ranges calculated for the lower frame rate by the factor of 1.8 to 2.0 calculated for reducing the redundancy and including FEC. Doing this gives a calculated range of between 1.8 km (1.1 miles) in a noisy environment and 24 km (15 miles) in a quiet environment.

A further improvement could possibly be obtained by changing from 2-FSK modulation to MSK (minimum-shift keying), which is also supported by the CC2500. The Eb/Nrequired for a BER of 0.005 with MSK is about 5 dB, a 3.3 dB improvement over the 2-FSK modulation used by S-FHSS for the same BER. With this change (and including FEC and reduced frame rate) the range could be further extended to between 2.7 km (1.7 miles) and 35 km (22 miles) depending on the environment. I should note that MSK may not be implementable with the current Futaba hardware design as it’s a more complex modulation and places greater demands on hardware performance than 2-FSK .

Table 1 shows a summary of the possible improvements discussed above. For each of the possible changes to the protocol it identifies the number of decibels by which the signal at the receiver can be reduced while achieving the required frame loss rate, and the factor by which the line of sight range would be increased as a result. For example, by reducing redundancy in the protocol one could reduce the required signal strength at the receiver by 3 dB, which would multiply the effective range by 1.4 times.

Protocol Change Signal reduction dB Range Multiplier
 Reduce Redundancy 3.0  1.4
 Forward Error Correction 2.5  1.3
 Reduce Frame Rate 4.1  1.6
 Minimum Shift Keying 3.3  1.5
 Total 12.9   4.4

Table 1 – Summary of Possible Improvements

Since these improvements are all independent of one another, if multiple changes are made then the resulting improvement can be calculated by adding together the signal reductions in dB and multiplying together the range multipliers of the various changes. The combined effect of all changes is shown in the Total row. Note that these figures disregard the effect of the receiver noise floor, but we have seen that it does not make much difference to the final results.

Conclusion

The maximum range of the S-FHSS protocol with a 100 mW transmitter is expected to be about 600m (2000′) in a noisy RF environment and up to 8 km (5 miles) in in a quiet RF environment. The range could be improved by reducing redundancy, adding forward error correction, reducing the frame rate, and/or changing the modulation method.