diff --git a/CMakeLists.txt b/CMakeLists.txt index ba7cdd51..e322dcb4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -119,7 +119,7 @@ option(BUILD_SHARED_LIBS "Build shared library. Set to OFF for static library." ON) option(UNITTEST "Build unittest binaries." OFF) -# LPCNet needs to be bootstraped because codec2 and freedvlpcnet are +# LPCNet needs to be bootstrapped because codec2 and freedvlpcnet are # cross dependent. option(LPCNET "Build codec2 with LPCNet support." OFF) set(LPCNET_BUILD_DIR FALSE CACHE PATH "Location of lpcnet build tree.") diff --git a/README_data.md b/README_data.md index 54339883..17481f39 100644 --- a/README_data.md +++ b/README_data.md @@ -157,7 +157,7 @@ From the callers point of view, the frame format of each burst is: | Preamble | payload data | CRC | payload data | CRC | ........... | Postamble | | frame 1 -----------| frame 2 -----------| ... frame N | ``` -In the next layer down, each frame is comprised of several OFDM "modem frames", that contain pilot, unique word, and FEC symbols to handle syncronisation and error correction over the challenging HF channel. The preamble and postamble are used to locate the burst and estimate it's frequency offset. Having both a pre and postamble increases the probability of successful detection of the burst in a fading channel. Here are some single frame bursts on a MPP channel at 5dB SNR: +In the next layer down, each frame is comprised of several OFDM "modem frames", that contain pilot, unique word, and FEC symbols to handle synchronisation and error correction over the challenging HF channel. The preamble and postamble are used to locate the burst and estimate it's frequency offset. Having both a pre and postamble increases the probability of successful detection of the burst in a fading channel. Here are some single frame bursts on a MPP channel at 5dB SNR: ![](doc/pre_post_amble_mpp.png) diff --git a/octave/esno_est.m b/octave/esno_est.m index f482fb11..590208c5 100644 --- a/octave/esno_est.m +++ b/octave/esno_est.m @@ -1,7 +1,7 @@ % esno_est.m % David Rowe Mar 2017 % -% Functions for esimating Es/No from QPSK symbols, and supporting tests +% Functions for estimating Es/No from QPSK symbols, and supporting tests 1; diff --git a/octave/fdmdv.m b/octave/fdmdv.m index 49b9f61f..f13aa261 100644 --- a/octave/fdmdv.m +++ b/octave/fdmdv.m @@ -629,7 +629,7 @@ function snr_dB = calc_snr(f, sig_est, noise_est) endfunction -% sets up test bits system. make sure rand('state', 1) has just beed called +% sets up test bits system. make sure rand('state', 1) has just been called % so we generate the right test_bits pattern! function f = init_test_bits(f) diff --git a/octave/ldpc.m b/octave/ldpc.m index 0938b8dc..e9d6ede2 100644 --- a/octave/ldpc.m +++ b/octave/ldpc.m @@ -132,7 +132,7 @@ function [detected_data paritychecks] = ldpc_dec(code_param, max_iterations, ... input_decoder_c = bit_likelihood(1:(code_param.ldpc_coded_bits_per_frame-Nunused)); - % insert "very likely" LLRs for unsed data bits (in 1's stuffing case) + % insert "very likely" LLRs for unused data bits (in 1's stuffing case) input_decoder_c = [input_decoder_c(1:code_param.data_bits_per_frame) ... 100*ones(1,Nunused) ... input_decoder_c(code_param.data_bits_per_frame+1:end)]; diff --git a/octave/ofdm_rx.m b/octave/ofdm_rx.m index 55e93cbf..fea4b339 100644 --- a/octave/ofdm_rx.m +++ b/octave/ofdm_rx.m @@ -13,7 +13,7 @@ ofdm_rx("test_datac0.raw","datac0","packetsperburst",1) - 3. Burst mode, enable only postamble detecion: + 3. Burst mode, enable only postamble detection: ofdm_rx("test_datac0.raw","datac0","packetsperburst",1, "postambletest") #} diff --git a/src/codec2_fifo.c b/src/codec2_fifo.c index a2d3c309..5ac667e8 100644 --- a/src/codec2_fifo.c +++ b/src/codec2_fifo.c @@ -6,7 +6,7 @@ A FIFO design useful in gluing the FDMDV modem and codec together in integrated applications. The unittest/tfifo indicates these - routines are thread safe without the need for syncronisation + routines are thread safe without the need for synchronisation object, e.g. a different thread can read and write to a fifo at the same time. diff --git a/src/freedv_700.c b/src/freedv_700.c index 235284ea..4dffcf37 100644 --- a/src/freedv_700.c +++ b/src/freedv_700.c @@ -272,7 +272,7 @@ int freedv_comprx_700c(struct freedv *f, COMP demod_in_8kHz[]) { int rx_status = 0; // quisk_cfInterpDecim() modifies input data so lets make a copy just in case there - // is no sync and we need to echo inpout to output + // is no sync and we need to echo input to output // freedv_nin(f): input samples at Fs=8000 Hz // f->nin: input samples at Fs=7500 Hz diff --git a/src/freedv_data_channel.c b/src/freedv_data_channel.c index 7d361a1f..dc1ad83c 100644 --- a/src/freedv_data_channel.c +++ b/src/freedv_data_channel.c @@ -36,7 +36,7 @@ static unsigned char fdc_header_bcast[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; -/* CCIT CRC table (0x1201 polynomal) */ +/* CCIT CRC table (0x1201 polynomail) */ static unsigned short fdc_crc_table[256] = { 0x0000, 0x1189, 0x2312, 0x329b, 0x4624, 0x57ad, 0x6536, 0x74bf, 0x8c48, 0x9dc1, 0xaf5a, 0xbed3, 0xca6c, 0xdbe5, 0xe97e, 0xf8f7, @@ -84,7 +84,7 @@ static unsigned short fdc_crc(unsigned char *buffer, size_t len) return crc ^ 0xffff; } -/* CRC4 0x03 polynomal */ +/* CRC4 0x03 polynomial */ static unsigned char fdc_crc4(unsigned char *buffer, size_t len) { unsigned char crc = 0x0f; diff --git a/src/freedv_fsk.c b/src/freedv_fsk.c index 68d203db..31d30d3e 100644 --- a/src/freedv_fsk.c +++ b/src/freedv_fsk.c @@ -543,7 +543,7 @@ int freedv_rx_fsk_ldpc_data(struct freedv *f, COMP demod_in[]) { } - /* extract packet sequnce numbers optionally placed in byte[0] */ + /* extract packet sequence numbers optionally placed in byte[0] */ seq = 0; for(int i=0; i<8; i++) seq |= f->rx_payload_bits[8+i] << (7-i); diff --git a/src/fsk.c b/src/fsk.c index 7bb009ee..9cd0013b 100644 --- a/src/fsk.c +++ b/src/fsk.c @@ -281,7 +281,7 @@ void fsk_mod(struct FSK *fsk,float fsk_out[], uint8_t tx_bits[], int nbits) { COMP dph; /* phase shift of current bit */ size_t i,j,m,bit_i,sym; - /* trap these parametrs being set to FSK_UNUSED, then calling mod */ + /* trap these parameters being set to FSK_UNUSED, then calling mod */ assert(f1_tx > 0); assert(tone_spacing > 0); @@ -341,7 +341,7 @@ void fsk_mod_c(struct FSK *fsk,COMP fsk_out[], uint8_t tx_bits[], int nbits) { size_t i,j,bit_i,sym; int m; - /* trap these parametrs being set to FSK_UNUSED, then calling mod */ + /* trap these parameters being set to FSK_UNUSED, then calling mod */ assert(f1_tx > 0); assert(tone_spacing > 0); @@ -397,7 +397,7 @@ void fsk_mod_ext_vco(struct FSK *fsk, float vco_out[], uint8_t tx_bits[], int nb int M = fsk->mode; int i, j, m, sym, bit_i; - /* trap these parametrs being set to FSK_UNUSED, then calling mod */ + /* trap these parameters being set to FSK_UNUSED, then calling mod */ assert(f1_tx > 0); assert(tone_spacing > 0); diff --git a/src/lpc.c b/src/lpc.c index 491925fc..f2d5c007 100644 --- a/src/lpc.c +++ b/src/lpc.c @@ -42,7 +42,7 @@ Pre-emphasise (high pass filter with zero close to 0 Hz) a frame of speech samples. Helps reduce dynamic range of LPC spectrum, giving - greater weight and hense a better match to low energy formants. + greater weight and hence a better match to low energy formants. Should be balanced by de-emphasis of the output speech. diff --git a/src/mbest.c b/src/mbest.c index 8651e70f..aec4d295 100644 --- a/src/mbest.c +++ b/src/mbest.c @@ -131,7 +131,7 @@ void mbest_search( { int j; - /* note weighting can be applied externally by modifiying cb[] and vec: + /* note weighting can be applied externally by modifying cb[] and vec: float e = 0.0; for(i=0; i c_sub_node elements -// This structure reduces the indexing caluclations in SumProduct() +// This structure reduces the indexing calclations in SumProduct() struct c_sub_node { // Order is important here to keep total size small. uint16_t index; // Values from H_rows (except last 2 entries) diff --git a/stm32/src/stm32f4_dac.c b/stm32/src/stm32f4_dac.c index ec61bf40..8efb0048 100644 --- a/stm32/src/stm32f4_dac.c +++ b/stm32/src/stm32f4_dac.c @@ -188,7 +188,7 @@ static void dac1_config(void) /* This line fixed a bug that cost me 5 days, bad wave amplitude value, and some STM32F4 periph library bugs caused triangle wave - geneartion to be enable resulting in a low level tone on the + generation to be enable resulting in a low level tone on the SM1000, that we thought was caused by analog issues like layour or power supply biasing */ diff --git a/stm32/usb_lib/otg/usb_dcd.c b/stm32/usb_lib/otg/usb_dcd.c index 43dafc67..f4080841 100644 --- a/stm32/usb_lib/otg/usb_dcd.c +++ b/stm32/usb_lib/otg/usb_dcd.c @@ -103,7 +103,7 @@ void DCD_Init(USB_OTG_CORE_HANDLE *pdev , ep->is_in = 1; ep->num = i; ep->tx_fifo_num = i; - /* Control until ep is actvated */ + /* Control until ep is activated */ ep->type = EP_TYPE_CTRL; ep->maxpacket = USB_OTG_MAX_EP0_SIZE; ep->xfer_buff = 0;