From 9626dbb40eb0dd4988b3bc3bab4753cc47458e75 Mon Sep 17 00:00:00 2001 From: OneOfEleven Date: Sat, 23 Sep 2023 17:23:21 +0100 Subject: [PATCH] M fix revert - for now --- Makefile | 4 + am_fix.c | 368 ++++++++++++++++++++++++++++---------------- am_fix.h | 22 --- app/menu.c | 33 +++- firmware | Bin 166988 -> 166988 bytes firmware.bin | Bin 52272 -> 52312 bytes firmware.packed.bin | Bin 52290 -> 52330 bytes misc.c | 3 + misc.h | 3 + ui/main.c | 8 +- ui/menu.c | 19 +++ ui/menu.h | 6 + 12 files changed, 300 insertions(+), 166 deletions(-) diff --git a/Makefile b/Makefile index 8bc139a..6ac4ba9 100644 --- a/Makefile +++ b/Makefile @@ -23,6 +23,7 @@ ENABLE_SHOW_CHARGE_LEVEL := 0 ENABLE_REVERSE_BAT_SYMBOL := 1 ENABLE_AM_FIX := 1 ENABLE_AM_FIX_SHOW_DATA := 1 +ENABLE_AM_FIX_TEST1 := 0 ENABLE_SQUELCH1_LOWER := 0 ENABLE_AUDIO_BAR := 0 #ENABLE_SINGLE_VFO_CHAN := 1 @@ -208,6 +209,9 @@ endif ifeq ($(ENABLE_AM_FIX_SHOW_DATA),1) CFLAGS += -DENABLE_AM_FIX_SHOW_DATA endif +ifeq ($(ENABLE_AM_FIX_TEST1),1) + CFLAGS += -DENABLE_AM_FIX_TEST1 +endif ifeq ($(ENABLE_SQUELCH1_LOWER),1) CFLAGS += -DENABLE_SQUELCH1_LOWER endif diff --git a/am_fix.c b/am_fix.c index 3deb041..0ac7a1d 100644 --- a/am_fix.c +++ b/am_fix.c @@ -27,15 +27,32 @@ const uint8_t orig_pga = 6; // -3dB // // that is until someone works out how to properly configure the BK chip !! + typedef struct + { + #if 1 + // bitfields take less flash bytes + uint8_t lna_short:2; // 0 ~ 3 + uint8_t lna:3; // 0 ~ 7 + uint8_t mixer:2; // 0 ~ 3 + uint8_t pga:3; // 0 ~ 7 + #else + uint8_t lna_short; // 0 ~ 3 + uint8_t lna; // 0 ~ 7 + uint8_t mixer; // 0 ~ 3 + uint8_t pga; // 0 ~ 7 + #endif + } t_am_fix_gain_table; + //} __attribute__((packed)) t_am_fix_gain_table; + // REG_10 AGC gain table // // <15:10> ??? // // <9:8> = LNA Gain Short // 3 = 0dB < original value - // 2 = -11dB - // 1 = -16dB - // 0 = -19dB + // 2 = -24dB // was -11 + // 1 = -30dB // was -16 + // 0 = -33dB // was -19 // // <7:5> = LNA Gain // 7 = 0dB @@ -64,99 +81,199 @@ const uint8_t orig_pga = 6; // -3dB // 0 = -33dB // front end register dB values - const int8_t lna_short_dB[4] = {-19, -16, -11, 0}; - const int8_t lna_dB[8] = {-24, -19, -14, -9, -6, -4, -2, 0}; - const int8_t mixer_dB[4] = { -8, -6, -3, 0}; - const int8_t pga_dB[8] = {-33, -27, -21, -15, -9, -6, -3, 0}; +// static const int16_t lna_short_dB[] = {-19, -16, -11, 0}; // was + static const int16_t lna_short_dB[] = {-33, -30 -24, 0}; // now + static const int16_t lna_dB[] = {-24, -19, -14, -9, -6, -4, -2, 0}; + static const int16_t mixer_dB[] = { -8, -6, -3, 0}; + static const int16_t pga_dB[] = {-33, -27, -21, -15, -9, -6, -3, 0}; // lookup table is by far easier than writing code to do the same static const t_am_fix_gain_table am_fix_gain_table[] = { {.lna_short = 3, .lna = 2, .mixer = 3, .pga = 6}, // 0 0dB -14dB 0dB -3dB .. -17dB original +#if 1 - {0, 0, 0, 0}, // 1 -19dB -24dB -8dB -33dB .. -84dB - {0, 0, 1, 0}, // 2 -19dB -24dB -6dB -33dB .. -82dB - {1, 0, 0, 0}, // 3 -16dB -24dB -8dB -33dB .. -81dB - {0, 1, 0, 0}, // 4 -19dB -19dB -8dB -33dB .. -79dB - {0, 0, 0, 1}, // 5 -19dB -24dB -8dB -27dB .. -78dB - {0, 1, 1, 0}, // 6 -19dB -19dB -6dB -33dB .. -77dB - {0, 0, 1, 1}, // 7 -19dB -24dB -6dB -27dB .. -76dB - {1, 0, 0, 1}, // 8 -16dB -24dB -8dB -27dB .. -75dB - {0, 1, 2, 0}, // 9 -19dB -19dB -3dB -33dB .. -74dB - {0, 1, 0, 1}, // 10 -19dB -19dB -8dB -27dB .. -73dB - {0, 0, 0, 2}, // 11 -19dB -24dB -8dB -21dB .. -72dB - {1, 1, 2, 0}, // 12 -16dB -19dB -3dB -33dB .. -71dB - {1, 1, 0, 1}, // 13 -16dB -19dB -8dB -27dB .. -70dB - {1, 0, 0, 2}, // 14 -16dB -24dB -8dB -21dB .. -69dB - {0, 2, 0, 1}, // 15 -19dB -14dB -8dB -27dB .. -68dB - {0, 3, 1, 0}, // 16 -19dB -9dB -6dB -33dB .. -67dB - {0, 2, 3, 0}, // 17 -19dB -14dB 0dB -33dB .. -66dB - {1, 1, 2, 1}, // 18 -16dB -19dB -3dB -27dB .. -65dB - {0, 0, 1, 3}, // 19 -19dB -24dB -6dB -15dB .. -64dB - {1, 0, 0, 3}, // 20 -16dB -24dB -8dB -15dB .. -63dB - {1, 1, 3, 1}, // 21 -16dB -19dB 0dB -27dB .. -62dB - {0, 3, 1, 1}, // 22 -19dB -9dB -6dB -27dB .. -61dB - {1, 2, 2, 1}, // 23 -16dB -14dB -3dB -27dB .. -60dB - {1, 5, 1, 0}, // 24 -16dB -4dB -6dB -33dB .. -59dB - {0, 3, 2, 1}, // 25 -19dB -9dB -3dB -27dB .. -58dB - {0, 2, 2, 2}, // 26 -19dB -14dB -3dB -21dB .. -57dB - {2, 3, 2, 0}, // 27 -11dB -9dB -3dB -33dB .. -56dB - {2, 3, 0, 1}, // 28 -11dB -9dB -8dB -27dB .. -55dB - {2, 1, 2, 2}, // 29 -11dB -19dB -3dB -21dB .. -54dB - {0, 1, 1, 4}, // 30 -19dB -19dB -6dB -9dB .. -53dB - {0, 4, 1, 2}, // 31 -19dB -6dB -6dB -21dB .. -52dB - {1, 2, 1, 3}, // 32 -16dB -14dB -6dB -15dB .. -51dB - {0, 5, 1, 2}, // 33 -19dB -4dB -6dB -21dB .. -50dB - {2, 3, 0, 2}, // 34 -11dB -9dB -8dB -21dB .. -49dB - {0, 2, 1, 4}, // 35 -19dB -14dB -6dB -9dB .. -48dB - {2, 4, 2, 1}, // 36 -11dB -6dB -3dB -27dB .. -47dB - {2, 2, 3, 2}, // 37 -11dB -14dB 0dB -21dB .. -46dB - {2, 1, 3, 3}, // 38 -11dB -19dB 0dB -15dB .. -45dB - {2, 3, 2, 2}, // 39 -11dB -9dB -3dB -21dB .. -44dB - {1, 0, 3, 6}, // 40 -16dB -24dB 0dB -3dB .. -43dB - {2, 5, 3, 1}, // 41 -11dB -4dB 0dB -27dB .. -42dB - {2, 1, 0, 6}, // 42 -11dB -19dB -8dB -3dB .. -41dB - {1, 3, 1, 4}, // 43 -16dB -9dB -6dB -9dB .. -40dB - {0, 3, 0, 6}, // 44 -19dB -9dB -8dB -3dB .. -39dB - {0, 5, 3, 3}, // 45 -19dB -4dB 0dB -15dB .. -38dB - {2, 2, 1, 5}, // 46 -11dB -14dB -6dB -6dB .. -37dB - {2, 5, 3, 2}, // 47 -11dB -4dB 0dB -21dB .. -36dB - {3, 2, 3, 2}, // 48 0dB -14dB 0dB -21dB .. -35dB - {0, 4, 2, 5}, // 49 -19dB -6dB -3dB -6dB .. -34dB - {3, 0, 1, 6}, // 50 0dB -24dB -6dB -3dB .. -33dB - {3, 0, 0, 7}, // 51 0dB -24dB -8dB 0dB .. -32dB - {3, 2, 0, 4}, // 52 0dB -14dB -8dB -9dB .. -31dB - {1, 2, 3, 7}, // 53 -16dB -14dB 0dB 0dB .. -30dB - {2, 4, 2, 4}, // 54 -11dB -6dB -3dB -9dB .. -29dB - {3, 1, 1, 6}, // 55 0dB -19dB -6dB -3dB .. -28dB - {3, 5, 0, 3}, // 56 0dB -4dB -8dB -15dB .. -27dB - {2, 4, 3, 4}, // 57 -11dB -6dB 0dB -9dB .. -26dB - {1, 4, 3, 6}, // 58 -16dB -6dB 0dB -3dB .. -25dB - {3, 3, 1, 4}, // 59 0dB -9dB -6dB -9dB .. -24dB - {2, 3, 3, 6}, // 60 -11dB -9dB 0dB -3dB .. -23dB - {3, 2, 0, 7}, // 61 0dB -14dB -8dB 0dB .. -22dB - {3, 3, 2, 4}, // 62 0dB -9dB -3dB -9dB .. -21dB - {2, 4, 3, 6}, // 63 -11dB -6dB 0dB -3dB .. -20dB - {3, 5, 1, 4}, // 64 0dB -4dB -6dB -9dB .. -19dB - {3, 3, 1, 6}, // 65 0dB -9dB -6dB -3dB .. -18dB - {3, 2, 3, 6}, // 66 0dB -14dB 0dB -3dB .. -17dB original - {3, 5, 1, 5}, // 67 0dB -4dB -6dB -6dB .. -16dB - {3, 5, 0, 6}, // 68 0dB -4dB -8dB -3dB .. -15dB - {3, 2, 3, 7}, // 69 0dB -14dB 0dB 0dB .. -14dB - {3, 5, 1, 6}, // 70 0dB -4dB -6dB -3dB .. -13dB - {3, 4, 2, 6}, // 71 0dB -6dB -3dB -3dB .. -12dB - {3, 5, 2, 6}, // 72 0dB -4dB -3dB -3dB .. -10dB - {3, 4, 3, 6}, // 73 0dB -6dB 0dB -3dB .. -9dB - {3, 5, 2, 7}, // 74 0dB -4dB -3dB 0dB .. -7dB - {3, 4, 3, 7}, // 75 0dB -6dB 0dB 0dB .. -6dB - {3, 5, 3, 7}, // 76 0dB -4dB 0dB 0dB .. -4dB + {3, 0, 0, 0}, // 1 0dB -24dB -8dB -33dB .. -65dB + {3, 0, 1, 0}, // 2 0dB -24dB -6dB -33dB .. -63dB + {3, 0, 2, 0}, // 3 0dB -24dB -3dB -33dB .. -60dB + {3, 0, 0, 1}, // 4 0dB -24dB -8dB -27dB .. -59dB + {3, 1, 1, 0}, // 5 0dB -19dB -6dB -33dB .. -58dB + {3, 0, 1, 1}, // 6 0dB -24dB -6dB -27dB .. -57dB + {3, 1, 2, 0}, // 7 0dB -19dB -3dB -33dB .. -55dB + {3, 1, 0, 1}, // 8 0dB -19dB -8dB -27dB .. -54dB + {3, 0, 0, 2}, // 9 0dB -24dB -8dB -21dB .. -53dB + {3, 1, 1, 1}, // 10 0dB -19dB -6dB -27dB .. -52dB + {3, 0, 1, 2}, // 11 0dB -24dB -6dB -21dB .. -51dB + {3, 2, 2, 0}, // 12 0dB -14dB -3dB -33dB .. -50dB + {3, 2, 0, 1}, // 13 0dB -14dB -8dB -27dB .. -49dB + {3, 0, 2, 2}, // 14 0dB -24dB -3dB -21dB .. -48dB + {3, 2, 3, 0}, // 15 0dB -14dB 0dB -33dB .. -47dB + {3, 1, 3, 1}, // 16 0dB -19dB 0dB -27dB .. -46dB + {3, 0, 3, 2}, // 17 0dB -24dB 0dB -21dB .. -45dB + {3, 3, 0, 1}, // 18 0dB -9dB -8dB -27dB .. -44dB + {3, 1, 2, 2}, // 19 0dB -19dB -3dB -21dB .. -43dB + {3, 0, 2, 3}, // 20 0dB -24dB -3dB -15dB .. -42dB + {3, 0, 0, 4}, // 21 0dB -24dB -8dB -9dB .. -41dB + {3, 1, 1, 3}, // 22 0dB -19dB -6dB -15dB .. -40dB + {3, 0, 1, 4}, // 23 0dB -24dB -6dB -9dB .. -39dB + {3, 0, 0, 5}, // 24 0dB -24dB -8dB -6dB .. -38dB + {3, 1, 2, 3}, // 25 0dB -19dB -3dB -15dB .. -37dB + {3, 0, 2, 4}, // 26 0dB -24dB -3dB -9dB .. -36dB + {3, 4, 0, 2}, // 27 0dB -6dB -8dB -21dB .. -35dB + {3, 1, 1, 4}, // 28 0dB -19dB -6dB -9dB .. -34dB + {3, 1, 0, 5}, // 29 0dB -19dB -8dB -6dB .. -33dB + {3, 3, 0, 3}, // 30 0dB -9dB -8dB -15dB .. -32dB + {3, 5, 1, 2}, // 31 0dB -4dB -6dB -21dB .. -31dB + {3, 1, 0, 6}, // 32 0dB -19dB -8dB -3dB .. -30dB + {3, 2, 3, 3}, // 33 0dB -14dB 0dB -15dB .. -29dB + {3, 1, 1, 6}, // 34 0dB -19dB -6dB -3dB .. -28dB + {3, 4, 1, 3}, // 35 0dB -6dB -6dB -15dB .. -27dB + {3, 2, 2, 4}, // 36 0dB -14dB -3dB -9dB .. -26dB + {3, 1, 2, 6}, // 37 0dB -19dB -3dB -3dB .. -25dB + {3, 3, 1, 4}, // 38 0dB -9dB -6dB -9dB .. -24dB + {3, 2, 1, 6}, // 39 0dB -14dB -6dB -3dB .. -23dB + {3, 5, 2, 3}, // 40 0dB -4dB -3dB -15dB .. -22dB + {3, 4, 1, 4}, // 41 0dB -6dB -6dB -9dB .. -21dB + {3, 4, 0, 5}, // 42 0dB -6dB -8dB -6dB .. -20dB + {3, 5, 1, 4}, // 43 0dB -4dB -6dB -9dB .. -19dB + {3, 3, 3, 4}, // 44 0dB -9dB 0dB -9dB .. -18dB + {3, 2, 3, 6}, // 45 0dB -14dB 0dB -3dB .. -17dB original + {3, 5, 1, 5}, // 46 0dB -4dB -6dB -6dB .. -16dB + {3, 3, 1, 7}, // 47 0dB -9dB -6dB 0dB .. -15dB + {3, 2, 3, 7}, // 48 0dB -14dB 0dB 0dB .. -14dB + {3, 5, 1, 6}, // 49 0dB -4dB -6dB -3dB .. -13dB + {3, 4, 2, 6}, // 50 0dB -6dB -3dB -3dB .. -12dB + {3, 5, 2, 6}, // 51 0dB -4dB -3dB -3dB .. -10dB + {3, 4, 3, 6}, // 52 0dB -6dB 0dB -3dB .. -9dB + {3, 5, 2, 7}, // 53 0dB -4dB -3dB 0dB .. -7dB + {3, 4, 3, 7}, // 54 0dB -6dB 0dB 0dB .. -6dB + {3, 5, 3, 7} // 55 0dB -4dB 0dB 0dB .. -4dB }; - // table index that holds the original QS front end setting - const unsigned int original_index = 66; + const unsigned int original_index = 45; + +#else + + {1, 0, 0, 0}, // 1 -54dB -24dB -8dB -33dB .. -119dB + {1, 0, 1, 0}, // 2 -54dB -24dB -6dB -33dB .. -117dB + {1, 0, 2, 0}, // 3 -54dB -24dB -3dB -33dB .. -114dB + {1, 0, 0, 1}, // 4 -54dB -24dB -8dB -27dB .. -113dB + {1, 1, 1, 0}, // 5 -54dB -19dB -6dB -33dB .. -112dB + {1, 0, 1, 1}, // 6 -54dB -24dB -6dB -27dB .. -111dB + {1, 1, 2, 0}, // 7 -54dB -19dB -3dB -33dB .. -109dB + {1, 1, 0, 1}, // 8 -54dB -19dB -8dB -27dB .. -108dB + {1, 0, 0, 2}, // 9 -54dB -24dB -8dB -21dB .. -107dB + {1, 1, 1, 1}, // 10 -54dB -19dB -6dB -27dB .. -106dB + {1, 0, 1, 2}, // 11 -54dB -24dB -6dB -21dB .. -105dB + {1, 2, 2, 0}, // 12 -54dB -14dB -3dB -33dB .. -104dB + {1, 2, 0, 1}, // 13 -54dB -14dB -8dB -27dB .. -103dB + {1, 0, 2, 2}, // 14 -54dB -24dB -3dB -21dB .. -102dB + {1, 2, 3, 0}, // 15 -54dB -14dB 0dB -33dB .. -101dB + {1, 1, 3, 1}, // 16 -54dB -19dB 0dB -27dB .. -100dB + {1, 0, 3, 2}, // 17 -54dB -24dB 0dB -21dB .. -99dB + {1, 3, 0, 1}, // 18 -54dB -9dB -8dB -27dB .. -98dB + {1, 1, 2, 2}, // 19 -54dB -19dB -3dB -21dB .. -97dB + {1, 3, 3, 0}, // 20 -54dB -9dB 0dB -33dB .. -96dB + {1, 0, 0, 4}, // 21 -54dB -24dB -8dB -9dB .. -95dB + {1, 1, 1, 3}, // 22 -54dB -19dB -6dB -15dB .. -94dB + {0, 0, 2, 0}, // 23 -33dB -24dB -3dB -33dB .. -93dB + {1, 3, 0, 2}, // 24 -54dB -9dB -8dB -21dB .. -92dB + {1, 2, 0, 3}, // 25 -54dB -14dB -8dB -15dB .. -91dB + {1, 4, 2, 1}, // 26 -54dB -6dB -3dB -27dB .. -90dB + {1, 4, 0, 2}, // 27 -54dB -6dB -8dB -21dB .. -89dB + {0, 2, 0, 0}, // 28 -33dB -14dB -8dB -33dB .. -88dB + {0, 0, 2, 1}, // 29 -33dB -24dB -3dB -27dB .. -87dB + {1, 2, 2, 3}, // 30 -54dB -14dB -3dB -15dB .. -86dB + {1, 1, 1, 5}, // 31 -54dB -19dB -6dB -6dB .. -85dB + {1, 0, 3, 5}, // 32 -54dB -24dB 0dB -6dB .. -84dB + {0, 3, 0, 0}, // 33 -33dB -9dB -8dB -33dB .. -83dB + {0, 2, 0, 1}, // 34 -33dB -14dB -8dB -27dB .. -82dB + {1, 4, 1, 3}, // 35 -54dB -6dB -6dB -15dB .. -81dB + {0, 4, 0, 0}, // 36 -33dB -6dB -8dB -33dB .. -80dB + {1, 1, 3, 5}, // 37 -54dB -19dB 0dB -6dB .. -79dB + {1, 4, 2, 3}, // 38 -54dB -6dB -3dB -15dB .. -78dB + {1, 2, 2, 5}, // 39 -54dB -14dB -3dB -6dB .. -77dB + {0, 5, 1, 0}, // 40 -33dB -4dB -6dB -33dB .. -76dB + {0, 3, 1, 1}, // 41 -33dB -9dB -6dB -27dB .. -75dB + {0, 2, 1, 2}, // 42 -33dB -14dB -6dB -21dB .. -74dB + {0, 1, 3, 2}, // 43 -33dB -19dB 0dB -21dB .. -73dB + {1, 4, 2, 4}, // 44 -54dB -6dB -3dB -9dB .. -72dB + {1, 4, 0, 6}, // 45 -54dB -6dB -8dB -3dB .. -71dB + {0, 5, 1, 1}, // 46 -33dB -4dB -6dB -27dB .. -70dB + {0, 1, 0, 4}, // 47 -33dB -19dB -8dB -9dB .. -69dB + {0, 2, 3, 2}, // 48 -33dB -14dB 0dB -21dB .. -68dB + {1, 5, 2, 5}, // 49 -54dB -4dB -3dB -6dB .. -67dB + {1, 4, 1, 7}, // 50 -54dB -6dB -6dB 0dB .. -66dB + {0, 2, 2, 3}, // 51 -33dB -14dB -3dB -15dB .. -65dB + {0, 2, 0, 4}, // 52 -33dB -14dB -8dB -9dB .. -64dB + {0, 1, 0, 6}, // 53 -33dB -19dB -8dB -3dB .. -63dB + {0, 2, 3, 3}, // 54 -33dB -14dB 0dB -15dB .. -62dB + {0, 1, 2, 5}, // 55 -33dB -19dB -3dB -6dB .. -61dB + {0, 4, 3, 2}, // 56 -33dB -6dB 0dB -21dB .. -60dB + {2, 0, 0, 1}, // 57 0dB -24dB -8dB -27dB .. -59dB + {0, 1, 3, 5}, // 58 -33dB -19dB 0dB -6dB .. -58dB + {0, 4, 2, 3}, // 59 -33dB -6dB -3dB -15dB .. -57dB + {0, 2, 3, 4}, // 60 -33dB -14dB 0dB -9dB .. -56dB + {0, 2, 0, 7}, // 61 -33dB -14dB -8dB 0dB .. -55dB + {2, 1, 0, 1}, // 62 0dB -19dB -8dB -27dB .. -54dB + {0, 2, 2, 6}, // 63 -33dB -14dB -3dB -3dB .. -53dB + {0, 1, 3, 7}, // 64 -33dB -19dB 0dB 0dB .. -52dB + {2, 0, 3, 1}, // 65 0dB -24dB 0dB -27dB .. -51dB + {0, 2, 3, 6}, // 66 -33dB -14dB 0dB -3dB .. -50dB + {0, 5, 1, 5}, // 67 -33dB -4dB -6dB -6dB .. -49dB + {0, 3, 1, 7}, // 68 -33dB -9dB -6dB 0dB .. -48dB + {0, 4, 0, 7}, // 69 -33dB -6dB -8dB 0dB .. -47dB + {3, 1, 1, 2}, // 70 0dB -19dB -6dB -21dB .. -46dB + {3, 0, 1, 3}, // 71 0dB -24dB -6dB -15dB .. -45dB + {2, 2, 2, 1}, // 72 0dB -14dB -3dB -27dB .. -44dB + {2, 5, 1, 0}, // 73 0dB -4dB -6dB -33dB .. -43dB + {2, 0, 2, 3}, // 74 0dB -24dB -3dB -15dB .. -42dB + {3, 0, 0, 4}, // 75 0dB -24dB -8dB -9dB .. -41dB + {0, 5, 3, 6}, // 76 -33dB -4dB 0dB -3dB .. -40dB + {2, 4, 3, 0}, // 77 0dB -6dB 0dB -33dB .. -39dB + {2, 0, 0, 5}, // 78 0dB -24dB -8dB -6dB .. -38dB + {3, 1, 2, 3}, // 79 0dB -19dB -3dB -15dB .. -37dB + {2, 1, 0, 4}, // 80 0dB -19dB -8dB -9dB .. -36dB + {2, 2, 1, 3}, // 81 0dB -14dB -6dB -15dB .. -35dB + {2, 1, 1, 4}, // 82 0dB -19dB -6dB -9dB .. -34dB + {2, 0, 1, 6}, // 83 0dB -24dB -6dB -3dB .. -33dB + {3, 0, 0, 7}, // 84 0dB -24dB -8dB 0dB .. -32dB + {2, 1, 1, 5}, // 85 0dB -19dB -6dB -6dB .. -31dB + {2, 3, 3, 2}, // 86 0dB -9dB 0dB -21dB .. -30dB + {2, 2, 1, 4}, // 87 0dB -14dB -6dB -9dB .. -29dB + {2, 1, 2, 5}, // 88 0dB -19dB -3dB -6dB .. -28dB + {3, 0, 3, 6}, // 89 0dB -24dB 0dB -3dB .. -27dB + {3, 2, 2, 4}, // 90 0dB -14dB -3dB -9dB .. -26dB + {2, 5, 1, 3}, // 91 0dB -4dB -6dB -15dB .. -25dB + {2, 3, 3, 3}, // 92 0dB -9dB 0dB -15dB .. -24dB + {2, 2, 3, 4}, // 93 0dB -14dB 0dB -9dB .. -23dB + {3, 1, 3, 6}, // 94 0dB -19dB 0dB -3dB .. -22dB + {2, 3, 2, 4}, // 95 0dB -9dB -3dB -9dB .. -21dB + {3, 4, 0, 5}, // 96 0dB -6dB -8dB -6dB .. -20dB + {2, 1, 3, 7}, // 97 0dB -19dB 0dB 0dB .. -19dB + {3, 4, 2, 4}, // 98 0dB -6dB -3dB -9dB .. -18dB + {3, 2, 3, 6}, // 99 0dB -14dB 0dB -3dB .. -17dB original + {2, 5, 1, 5}, // 100 0dB -4dB -6dB -6dB .. -16dB + {3, 4, 2, 5}, // 101 0dB -6dB -3dB -6dB .. -15dB + {2, 4, 0, 7}, // 102 0dB -6dB -8dB 0dB .. -14dB + {3, 5, 2, 5}, // 103 0dB -4dB -3dB -6dB .. -13dB + {2, 4, 1, 7}, // 104 0dB -6dB -6dB 0dB .. -12dB + {2, 5, 3, 5}, // 105 0dB -4dB 0dB -6dB .. -10dB + {3, 4, 3, 6}, // 106 0dB -6dB 0dB -3dB .. -9dB + {2, 5, 3, 6}, // 107 0dB -4dB 0dB -3dB .. -7dB + {3, 4, 3, 7}, // 108 0dB -6dB 0dB 0dB .. -6dB + {2, 5, 3, 7} // 109 0dB -4dB 0dB 0dB .. -4dB + }; + + const unsigned int original_index = 99; +#endif // current table index we're using - unsigned int am_fix_gain_table_index = original_index; // start with original QS setting + #ifdef ENABLE_AM_FIX_TEST1 + unsigned int am_fix_gain_table_index = 1; + #else + unsigned int am_fix_gain_table_index = original_index; // start with original QS setting + #endif unsigned int am_fix_gain_table_index_prev = 0; // moving average RSSI buffer @@ -181,9 +298,13 @@ const uint8_t orig_pga = 6; // -3dB am_gain_hold_counter = 0; - rssi_db_gain_diff = 0; - - am_fix_gain_table_index = original_index; // re-start with original QS setting + rssi_db_gain_diff = 0; + + #ifdef ENABLE_AM_FIX_TEST1 + am_fix_gain_table_index = 1 + gSetting_AM_fix_test1; + #else + am_fix_gain_table_index = original_index; // re-start with original QS setting + #endif am_fix_gain_table_index_prev = 0; } @@ -200,43 +321,24 @@ const uint8_t orig_pga = 6; // -3dB case FUNCTION_TRANSMIT: case FUNCTION_BAND_SCOPE: case FUNCTION_POWER_SAVE: + case FUNCTION_FOREGROUND: return; // only adjust the front end if in one of these modes - case FUNCTION_FOREGROUND: case FUNCTION_RECEIVE: case FUNCTION_MONITOR: case FUNCTION_INCOMING: break; } +#ifndef ENABLE_AM_FIX_TEST1 // -87dBm, any higher and the AM demodulator starts to saturate/clip (distort) const uint16_t desired_rssi = (-87 + 160) * 2; // dBm to ADC sample -/* - // current RX frequency - const uint32_t rx_frequency = gRxVfo->pRX->Frequency; - - // max gains to use -// uint8_t max_lna_short = orig_lna_short; // we're not altering this one - uint8_t max_lna = orig_lna; - uint8_t max_mixer = orig_mixer; - uint8_t max_pga = orig_pga; - - if (rx_frequency <= 22640000) // the RX sensitivity abrutly drops above this frequency - { - max_pga = 7; - } - else - { // allow a bit more adjustment gain -// max_lna = 4; - max_lna = 7; - max_pga = 7; - } -*/ +#endif // sample the current RSSI level uint16_t rssi = BK4819_GetRSSI(); // 9-bit value (0 .. 511) //gCurrentRSSI = rssi - (rssi_db_gain_diff * 2); - +#if 1 // compute the moving average RSSI if (moving_avg_rssi.count < ARRAY_SIZE(moving_avg_rssi.samples)) moving_avg_rssi.count++; @@ -246,7 +348,18 @@ const uint8_t orig_pga = 6; // -3dB if (++moving_avg_rssi.index >= ARRAY_SIZE(moving_avg_rssi.samples)) // moving_avg_rssi.index = 0; // rssi = moving_avg_rssi.sum / moving_avg_rssi.count; // compute the average of the past 'n' samples +#endif +#ifdef ENABLE_AM_FIX_TEST1 + am_fix_gain_table_index = 1 + gSetting_AM_fix_test1; + + if (am_gain_hold_counter > 0) + if (--am_gain_hold_counter > 0) + return; + + am_gain_hold_counter = 250; // 250ms + +#else if (rssi > desired_rssi) { // decrease gain @@ -272,6 +385,7 @@ const uint8_t orig_pga = 6; // -3dB if (am_fix_gain_table_index == am_fix_gain_table_index_prev) return; // no gain changes +#endif // apply the new gain settings to the front end @@ -284,8 +398,8 @@ const uint8_t orig_pga = 6; // -3dB BK4819_WriteRegister(BK4819_REG_13, (lna_short << 8) | (lna << 5) | (mixer << 3) | (pga << 0)); { // offset the RSSI reading to the rest of the firmware to cancel out the gain adjustments we've made here - static const int16_t orig_dB_gain = lna_short_dB[orig_lna_short & 3u] + lna_dB[orig_lna & 7u] + mixer_dB[orig_mixer & 3u] + pga_dB[orig_pga & 7u]; - const int16_t am_dB_gain = lna_short_dB[lna_short & 3u] + lna_dB[lna & 7u] + mixer_dB[mixer & 3u] + pga_dB[pga & 7u]; + const int16_t orig_dB_gain = lna_short_dB[orig_lna_short & 3u] + lna_dB[orig_lna & 7u] + mixer_dB[orig_mixer & 3u] + pga_dB[orig_pga & 7u]; + const int16_t am_dB_gain = lna_short_dB[lna_short & 3u] + lna_dB[lna & 7u] + mixer_dB[mixer & 3u] + pga_dB[pga & 7u]; rssi_db_gain_diff = am_dB_gain - orig_dB_gain; } @@ -302,26 +416,16 @@ const uint8_t orig_pga = 6; // -3dB { if (s == NULL) return; - - const uint16_t lna_short = am_fix_gain_table[am_fix_gain_table_index].lna_short; - const uint16_t lna = am_fix_gain_table[am_fix_gain_table_index].lna; - const uint16_t mixer = am_fix_gain_table[am_fix_gain_table_index].mixer; - const uint16_t pga = am_fix_gain_table[am_fix_gain_table_index].pga; - const int16_t am_dB_gain = lna_short_dB[lna_short & 3u] + lna_dB[lna & 7u] + mixer_dB[mixer & 3u] + pga_dB[pga & 7u]; + const uint16_t lna_short = am_fix_gain_table[am_fix_gain_table_index].lna_short; + const uint16_t lna = am_fix_gain_table[am_fix_gain_table_index].lna; + const uint16_t mixer = am_fix_gain_table[am_fix_gain_table_index].mixer; + const uint16_t pga = am_fix_gain_table[am_fix_gain_table_index].pga; - #if 0 - sprintf(s, "%2d %3d %2d %3d %3d", - //am_fix_gain_table_index, - lna_short_dB[lna_short & 3u], - lna_dB[lna & 7u], - mixer_dB[mixer & 3u], - pga_dB[pga & 7u], - am_dB_gain); - #else - sprintf(s, "idx %2d gain %3ddB", am_fix_gain_table_index, am_dB_gain); - #endif + const int16_t am_dB_gain = lna_short_dB[lna_short & 3u] + lna_dB[lna & 7u] + mixer_dB[mixer & 3u] + pga_dB[pga & 7u]; + + sprintf(s, "idx %2d %4ddB %3u", am_fix_gain_table_index, am_dB_gain, BK4819_GetRSSI()); } #endif - + #endif diff --git a/am_fix.h b/am_fix.h index fb82631..cf0f849 100644 --- a/am_fix.h +++ b/am_fix.h @@ -10,28 +10,6 @@ extern const uint8_t orig_mixer; extern const uint8_t orig_pga; #ifdef ENABLE_AM_FIX - extern const int8_t lna_short_dB[4]; - extern const int8_t lna_dB[8]; - extern const int8_t mixer_dB[4]; - extern const int8_t pga_dB[8]; - - typedef struct - { - #if 1 - // bitfields take less flash bytes - uint8_t lna_short:2; // 0 ~ 3 - uint8_t lna:3; // 0 ~ 7 - uint8_t mixer:2; // 0 ~ 3 - uint8_t pga:3; // 0 ~ 7 - #else - uint8_t lna_short; // 0 ~ 3 - uint8_t lna; // 0 ~ 7 - uint8_t mixer; // 0 ~ 3 - uint8_t pga; // 0 ~ 7 - #endif - } t_am_fix_gain_table; -// } __attribute__((packed)) t_am_fix_gain_table; - extern int16_t rssi_db_gain_diff; void AM_fix_reset(void); diff --git a/app/menu.c b/app/menu.c index 612c42b..ef54966 100644 --- a/app/menu.c +++ b/app/menu.c @@ -168,11 +168,21 @@ int MENU_GetLimits(uint8_t Cursor, int32_t *pMin, int32_t *pMax) #ifdef ENABLE_COMPANDER case MENU_COMPAND: - *pMin = 0; - *pMax = ARRAY_SIZE(gSubMenu_Compand) - 1; - break; + *pMin = 0; + *pMax = ARRAY_SIZE(gSubMenu_Compand) - 1; + break; #endif + #ifdef ENABLE_AM_FIX_TEST1 + case MENU_AM_FIX_TEST1: + *pMin = 0; + *pMax = ARRAY_SIZE(gSubMenu_AM_fix_test1) - 1; + break; + #endif + + #ifdef ENABLE_AM_FIX + case MENU_AM_FIX: + #endif #ifdef ENABLE_AUDIO_BAR case MENU_MIC_BAR: #endif @@ -186,9 +196,6 @@ int MENU_GetLimits(uint8_t Cursor, int32_t *pMin, int32_t *pMax) case MENU_D_DCD: case MENU_D_LIVE_DEC: case MENU_AM: - #ifdef ENABLE_AM_FIX - case MENU_AM_FIX: - #endif #ifdef ENABLE_NOAA case MENU_NOAA_S: #endif @@ -617,6 +624,14 @@ void MENU_AcceptSetting(void) break; #endif + #ifdef ENABLE_AM_FIX_TEST1 + case MENU_AM_FIX_TEST1: + gSetting_AM_fix_test1 = gSubMenuSelection; + gVfoConfigureMode = VFO_CONFIGURE_RELOAD; + gFlagResetVfos = true; + break; + #endif + #ifdef ENABLE_NOAA case MENU_NOAA_S: gEeprom.NOAA_AUTO_SCAN = gSubMenuSelection; @@ -993,6 +1008,12 @@ void MENU_ShowCurrentSetting(void) break; #endif + #ifdef ENABLE_AM_FIX_TEST1 + case MENU_AM_FIX_TEST1: + gSubMenuSelection = gSetting_AM_fix_test1; + break; + #endif + #ifdef ENABLE_NOAA case MENU_NOAA_S: gSubMenuSelection = gEeprom.NOAA_AUTO_SCAN; diff --git a/firmware b/firmware index 77eb9cfdc431b0a1dbdb0bd26f1da598141984b1..84a7668f7a0ff545466ac261dc0954078878e03a 100644 GIT binary patch delta 19523 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 delta 19428 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 diff --git a/firmware.bin b/firmware.bin index 2737ccde64ee4fa2079222a3dd2a2ffa49c688d1..c61b55aa01428ba74c8377b11efdabb317667ea6 100644 GIT binary patch delta 6193 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

#wR72c|f7|pOKN_1@nIf0FmD(8~^|S diff --git a/firmware.packed.bin b/firmware.packed.bin index d915d878bfd1879fec2828abe32db34a4bba7cac..fda1aeced3bcf6fdd9c6f0dadd48f2ff8cfba3b2 100644 GIT binary patch delta 27706 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 HCZ!4hM*q^@ delta 27666 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

{Us%GlY25r4MxN?)K$4*p!<( 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 b