aboutsummaryrefslogtreecommitdiff
path: root/src/ofdm_mode.c
diff options
context:
space:
mode:
authordrowe67 <[email protected]>2024-05-06 06:11:39 +0930
committerGitHub <[email protected]>2024-05-06 06:11:39 +0930
commitd21ff74c5f830a275d291a00043b2526a1bf9e62 (patch)
tree17b1f1003a76d2db0e26a6113a9c631dd3549bdd /src/ofdm_mode.c
parent609ece431cf7ee5fd6ba6acc32c4ff6ffce30f52 (diff)
parent7f6188ccce691d8d93a1dd98ab86a9f0b23ffe36 (diff)
Merge pull request #44 from drowe67/dr-datac14
datac14 - FreeDATA Feature Request 002 for a < 1s, 5 byte signalling mode
Diffstat (limited to 'src/ofdm_mode.c')
-rw-r--r--src/ofdm_mode.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/ofdm_mode.c b/src/ofdm_mode.c
index 1aabb1a..df0b4f5 100644
--- a/src/ofdm_mode.c
+++ b/src/ofdm_mode.c
@@ -226,6 +226,31 @@ void ofdm_init_mode(char mode[], struct OFDM_CONFIG *config) {
config->clip_gain1 = 1.2;
config->clip_gain2 = 1.0;
config->rx_bpf_en = true;
+ } else if (strcmp(mode, "datac14") == 0) {
+ config->ns = 5;
+ config->np = 4;
+ config->tcp = 0.005;
+ config->ts = 0.018;
+ config->nc = 4;
+ config->edge_pilots = 0;
+ config->txtbits = 0;
+ config->state_machine = "data";
+ config->ftwindowwidth = 80;
+ config->timing_mx_thresh = 0.45;
+ config->codename = "HRA_56_56";
+ config->amp_est_mode = 1;
+ config->nuwbits = 32;
+ config->bad_uw_errors = 12;
+ uint8_t uw[] = {1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1,
+ 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0};
+ assert(sizeof(uw) <= MAX_UW_BITS);
+ memcpy(config->tx_uw, uw, sizeof(uw));
+ memcpy(&config->tx_uw[config->nuwbits - sizeof(uw)], uw, sizeof(uw));
+ config->data_mode = "streaming";
+ config->amp_scale = 2.0 * 300E3;
+ config->clip_gain1 = 2.0;
+ config->clip_gain2 = 1.0;
+ config->rx_bpf_en = true;
} else {
assert(0);
}