HF Messaging with OFDM_a

Introduction

Communications for blue water sailors is extremely important. Reliable satellite communications for voice, email and GRIB weather files has become common place. This service is expensive, however, depending on usage. HF communications for voice & email is another alternative. This has the conventional drawbacks of propagation reliability, connectivity and bandwidth. There are several commercial HF networks available (Ref.1), and there is the alternative of using amateur radio networks (Ref.2). Voice communications is typically via SSB and data by using Pactor modems. Another recent alternative is using OFDM for email and messaging (Ref.3). In an earlier blogpost I reviewed OFDM and its possible use for HF SSB (Ref.4). In this post I review the OFDM concepts and how they apply to data messaging on the HF bands.

Channel Capacity

Fig.1 Standard SSB Transceiver Bandwidth = 2400Hz
Channel Capacity Shannon’s Law
C=BW*log2(1+SNR)
bits/sec
Signal to Noise Ratio
mwSignal/mwNoise
3.0Kbps2 = 3dB
8.3Kbps10 = 10dB
16.0Kbps100 = 20dB
Fig.2 Theoretical Maximum Data Rate for SSB_USB vs SNR
Fig.2 Laptop to SSB Transceiver Interconnection

Shannon’s law gives us a quick idea of what kind of capacity we can achieve over an HF data link. This is based on additive white noise (excludes fading, interference etc). So for a channel where the total signal power is 10x the total noise power, then we can achieve at best about 8Kbps. Figure 2 shows the typical interconnection of an OFDM modem with an HF transceiver. The modem software runs on a laptop/pc and interfaces with the pc sound card which in turn connects to the transceiver mic_in/spkr_out.

Scicos Simulation

Fig.3 OFDM 8 Channel 16QAM Transmitter
Fig.4 16QAM Ch2 Superblock
Fig.5 OFDM 8 Channel 16QAM Receiver Ch2
Fig.6 Ch2 Tx Data (I,Q,_), Ch2 Rx Data (I,_,Q,_)
Fig.8 OFDM 16QAM Ch8 WAV File

Consider a simple model of OFDM to illustrate how it is constructed.
BW = 2400Hz (300,2700)Hz
Channels = 8
Channel Baud Rate = 300Bd (3.3msec)
Channel Modulation = 16(2^4)QAM
Channel Bit Rate = 1200bps
Composite Bit Rate = 8 x 1200bps = 9600bps
Ch_x = 450/750/1050/1350/1650/1950/2250/2550Hz

Figure 3 shows the OFDM 16QAM transmitter, and Figure 4 shows the 16QAM superblock. PRBS generators with different seeds feed each channel so all data is random within each channel and channel to channel. Figure 5 shows the receiver for Ch2. I & Q carriers are inserted at 750Hz and the results integrated over the baud time. Figure 6 shows the I,Q and PRBS data sent on Ch2, and I,IntI,Q,IntQ received. Note that the I,Q sent match exactly the I,Q received. Contributions from all the other 7 channels are zero because of orthogonality. This is a result of the channels being spaced by the Baud rate (1/Tb)Hz. Figure 7 also shows the OFDM ouput time waveform. Note the large difference in signal levels. This is one of the drawbacks of OFDM and requires a linear RF amplifier. Figure 8 is a short time clip of the sound of the OFDM transmission which sounds very noise like.

HF Propagation

In order to obtain the benefits of OFDM to combat multipath and selective fading over long HF ionospheric paths, the baud rate has to be somewhere in the range of 18.75/53.3msec to 150/6.7msec (Ref.4). This requires the use of many more channels to allow for a reasonable channel modulation format. Consider a 64 channel OFDM system with baud rate of 37.5Bd that sends 9600bps:

BW = 2400Hz (300,2700)Hz
Composite Bit Rate = 9600bps
Channels = 64
Channel Data Rate = 150bps
Channel Baud Rate = 37.5Bd (26.7msec)
Channel Modulation = 16(2^4)QAM
This would be very difficult to build in a discrete way, but can be successfully implemented using the IFFT/FFT DSP algorithms.

IFFT & FFT Simulation

Fig.9 OFDM IFFT/FFT Modem Block Diagram

In practice, OFDM is generated and received using the IFFT and FFT DSP algorithms (Ref.5) as in Figure 9. It can be shown that the sum of N orthogonal OFDM narrowband channels can be modelled by the IDFT Inverse Discrete Fourier Transform and further simplified by using the IFFT or Inverse Fourier Transform (Ref.6):

x(t)=Sum[Xk*exp(j*2*pi*fk*t)] from k=0 to N-1, Xk=cmplx (I,Q) data
fk=k/T, T is the symbol width window giving a sync function

Now we sample the OFDM waveform at del_t=T/N, tn=n*del_t
xn=Sum[Xk*exp(j*2pi*k*n/N)] from k=0 to N-1, n=0 to N-1

Now the IDFT or Inverse Discrete Fourier Transform & DFT or Discrete Fourier Transform are defined as:

IDFT:
xn=1/N[Sum[Xk*exp(j*2pi*k*n/N)]] from k=0 to N-1, n=0 to N-1
DFT:
Xk=[Sum[xn*exp(-j*2pi*k*n/N)]] from n=0 to N-1, k=0 to N-1

So essentially our OFDM transmitter is an IDFT to take N constellation points Xk and map them to N time samples. The OFDM receiver is a DFT to take the received xn and map them back to the Xk. The DFT requires N^2 complex multiplications whereas the FFT requires N*log2(N) operations which is a considerable simplification (Ref.6).

Scicos IDFT/DFT Simulation

Fig.10 8CH OFDM IDFT Modulator
Fig.12 Calculation of IDFT over 8 Channels for 1 symbol of I,Q data
Fig.13 Xk(I,Q) data for 8 Channels, xn, DFT to recover Xk=Xk1
Fig.14 Real[x(n)], Imag[x(n)] vs. n
Fig.15 Scicos OFDM 8 Channel 16QAM IDFT Transmitter
Fig.16 OFDM 8Ch IDFT Output Scope Over 1 Symbol+
Fig.17 OFDM 8Ch IDFT Opt Spectrum

Let’s simulate our previous discrete Scicos OFDM 8Ch 16QAM system using the IDFT & DFT. Figure 10 shows the block diagram. Data comes into an S/P converter at 9600bps and is converted into 8 streams of 1200bps. This data then feeds 8x16QAM modulators producing an 8×2 matrix of I,Q samples Xk at 300baud. Figure 11 shows the 16QAM constellation for the 16 possible 4bit combinations. In this case the constellation is arbitrary, not Gray coded. Xk is now converted to xn by the IDFT. Figure 12 shows the Scicos code and Figure 13 shows Xk for the 8 channels (2nd baud taken from the 8 PRBS generators), xn, and the reconverted Xk1. Figure 14 shows Real(xn) vs. n and Imag(xn) vs. n. So for example, Channel 2 during the second baud of transmission was (-1,-1) which corresponds to data of [0 1 0 1].

Now the 8 x xn samples are separated into two streams of 8 real samples and 8 imaginary samples. These samples feed two D/A converters that shift them out at fs=2400sps. Thus in one baud time of 3.3msec, there are 8 samples separated by 1/2400=417usec. The real and imaginary streams then multiply I & Q carriers at the carrier mid band frequency of 1500Hz and added. Figure 16 shows the modulator output, the I & Q branches and the Real D/A & Imag D/A ouputs over 1 symbol+. Figure 17 shows the spectrum.

Fig.18 YouTube Video HF Messaging with OFDM_a

Please send your comments, questions and suggestions to:
contact:

YouTube Channel
YouTube Channel

References

#1. – “Sail Mail”
https://sailmail.com

#2. – “Winlink Global Radio Email”, Homepage
https://winlink.org

#3. – “EA5HVK Weak Signals Software”
https://rosmodem.wordpress.com/

#4. – “OFDM for SSB_USB”
https://jeremyclark.ca/wp/telecom/ofdm-for-ssb_usb/

#5. – “Implementing Orthogonal Frequency Division Multiplexing Using IFFT/FFT”, Nsikan Nkordeh etal,
http://www.iaeng.org/publication/WCE2016/WCE2016_pp602-606.pdf

#6. – “OFDM Tutorial Series: OFDM Fundamentals”,
https://www.youtube.com/watch?v=zOziioXnn-k&list=PLqL72R3p_ZYLOtQuAMUEziTbMKU4vdeHF&index=3

By Jeremy Clark

Jeremy Clark is a Senior Telecommunications Engineer and Advanced Amateur Radio Operator VE3PKC. He is the author of E-Books on Telecommunications, Navigation & Electronics.