From 8fb9825ad842006c23188ca7cb13d0a5213d8c9a Mon Sep 17 00:00:00 2001 From: OneOfEleven Date: Tue, 3 Oct 2023 20:03:04 +0100 Subject: [PATCH] More efficient AM fix table and code --- am_fix.c | 246 +++++++++++++++++++++++--------------------- firmware.bin | Bin 55004 -> 54748 bytes firmware.packed.bin | Bin 55022 -> 54766 bytes utils/main.cpp | 111 ++++++++++++++------ utils/misc.exe | Bin 18944 -> 18944 bytes 5 files changed, 211 insertions(+), 146 deletions(-) diff --git a/am_fix.c b/am_fix.c index 74fe946..7ea9e14 100644 --- a/am_fix.c +++ b/am_fix.c @@ -31,7 +31,7 @@ #include "misc.h" #ifdef ENABLE_AM_FIX - +/* typedef struct { #if 1 @@ -48,6 +48,12 @@ #endif } t_gain_table; //} __attribute__((packed)) t_gain_table; +*/ + typedef struct + { + uint16_t reg_val; + int8_t gain_dB; + } __attribute__((packed)) t_gain_table; // REG_10 AGC gain table // @@ -97,129 +103,129 @@ // if I don't add the brackets, reading the table returns unexpected/different values !!! // // -// static const int16_t lna_short_dB[] = { -19, -16, -11, 0}; // was (but wrong) - static const int16_t lna_short_dB[] = { (-33), (-30), (-24), 0}; // corrected'ish - 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}; +//// static const int16_t lna_short_dB[] = { -19, -16, -11, 0}; // was (but wrong) +// static const int16_t lna_short_dB[] = { (-33), (-30), (-24), 0}; // corrected'ish +// 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 hugely easier than writing code to do the same // static const t_gain_table gain_table[] = { - {.lna_short = 3, .lna = 2, .mixer = 3, .pga = 6}, // 0 0dB -14dB 0dB -3dB .. -17dB original + {0x035E, -17}, // 0 .. 0dB -14dB 0dB -3dB .. -17dB original #ifdef ENABLE_AM_FIX_TEST1 // test table that lets me manually set the lna-short register // to measure it's actual dB change using an RF signal generator - {0, 2, 3, 6}, // 1 .. -33dB -14dB 0dB -3dB .. -50dB - {1, 2, 3, 6}, // 2 .. -30dB -14dB 0dB -3dB .. -47dB - {2, 2, 3, 6}, // 3 .. -24dB -14dB 0dB -3dB .. -41dB - {3, 2, 3, 6} // 4 .. 0dB -14dB 0dB -3dB .. -17dB + {0x005E, -50}, // 1 .. -33dB -14dB 0dB -3dB .. -50dB + {0x015E, -47}, // 2 .. -30dB -14dB 0dB -3dB .. -47dB + {0x025E, -41}, // 3 .. -24dB -14dB 0dB -3dB .. -41dB + {0x035E, -17}, // 4 .. 0dB -14dB 0dB -3dB .. -17dB original }; const unsigned int original_index = 1; #else - {0, 0, 0, 0}, // 1 .. -33dB -24dB -8dB -33dB .. -98dB - {0, 0, 1, 0}, // 2 .. -33dB -24dB -6dB -33dB .. -96dB - {1, 0, 0, 0}, // 3 .. -30dB -24dB -8dB -33dB .. -95dB - {0, 1, 0, 0}, // 4 .. -33dB -19dB -8dB -33dB .. -93dB - {0, 0, 0, 1}, // 5 .. -33dB -24dB -8dB -27dB .. -92dB - {0, 1, 1, 0}, // 6 .. -33dB -19dB -6dB -33dB .. -91dB - {0, 0, 1, 1}, // 7 .. -33dB -24dB -6dB -27dB .. -90dB - {1, 0, 0, 1}, // 8 .. -30dB -24dB -8dB -27dB .. -89dB - {0, 1, 2, 0}, // 9 .. -33dB -19dB -3dB -33dB .. -88dB - {1, 0, 3, 0}, // 10 .. -30dB -24dB 0dB -33dB .. -87dB - {0, 0, 0, 2}, // 11 .. -33dB -24dB -8dB -21dB .. -86dB - {1, 1, 2, 0}, // 12 .. -30dB -19dB -3dB -33dB .. -85dB - {0, 0, 3, 1}, // 13 .. -33dB -24dB 0dB -27dB .. -84dB - {0, 3, 0, 0}, // 14 .. -33dB -9dB -8dB -33dB .. -83dB - {1, 1, 3, 0}, // 15 .. -30dB -19dB 0dB -33dB .. -82dB - {1, 0, 3, 1}, // 16 .. -30dB -24dB 0dB -27dB .. -81dB - {0, 2, 3, 0}, // 17 .. -33dB -14dB 0dB -33dB .. -80dB - {1, 2, 0, 1}, // 18 .. -30dB -14dB -8dB -27dB .. -79dB - {0, 3, 2, 0}, // 19 .. -33dB -9dB -3dB -33dB .. -78dB - {1, 4, 0, 0}, // 20 .. -30dB -6dB -8dB -33dB .. -77dB - {1, 1, 3, 1}, // 21 .. -30dB -19dB 0dB -27dB .. -76dB - {0, 0, 2, 3}, // 22 .. -33dB -24dB -3dB -15dB .. -75dB - {1, 3, 0, 1}, // 23 .. -30dB -9dB -8dB -27dB .. -74dB - {1, 6, 0, 0}, // 24 .. -30dB -2dB -8dB -33dB .. -73dB - {0, 7, 1, 0}, // 25 .. -33dB 0dB -6dB -33dB .. -72dB - {0, 6, 2, 0}, // 26 .. -33dB -2dB -3dB -33dB .. -71dB - {2, 1, 3, 1}, // 27 .. -24dB -19dB 0dB -27dB .. -70dB - {0, 3, 1, 2}, // 28 .. -33dB -9dB -6dB -21dB .. -69dB - {0, 0, 0, 6}, // 29 .. -33dB -24dB -8dB -3dB .. -68dB - {0, 5, 2, 1}, // 30 .. -33dB -4dB -3dB -27dB .. -67dB - {0, 0, 1, 6}, // 31 .. -33dB -24dB -6dB -3dB .. -66dB - {1, 2, 3, 2}, // 32 .. -30dB -14dB 0dB -21dB .. -65dB - {2, 1, 1, 3}, // 33 .. -24dB -19dB -6dB -15dB .. -64dB - {1, 7, 3, 0}, // 34 .. -30dB 0dB 0dB -33dB .. -63dB - {1, 3, 0, 3}, // 35 .. -30dB -9dB -8dB -15dB .. -62dB - {0, 1, 2, 5}, // 36 .. -33dB -19dB -3dB -6dB .. -61dB - {2, 0, 2, 4}, // 37 .. -24dB -24dB -3dB -9dB .. -60dB - {1, 6, 3, 1}, // 38 .. -30dB -2dB 0dB -27dB .. -59dB - {1, 2, 0, 5}, // 39 .. -30dB -14dB -8dB -6dB .. -58dB - {2, 5, 0, 2}, // 40 .. -24dB -4dB -8dB -21dB .. -57dB - {2, 6, 2, 1}, // 41 .. -24dB -2dB -3dB -27dB .. -56dB - {0, 5, 2, 3}, // 42 .. -33dB -4dB -3dB -15dB .. -55dB - {2, 0, 2, 6}, // 43 .. -24dB -24dB -3dB -3dB .. -54dB - {0, 3, 0, 6}, // 44 .. -33dB -9dB -8dB -3dB .. -53dB - {0, 6, 0, 4}, // 45 .. -33dB -2dB -8dB -9dB .. -52dB - {0, 3, 1, 6}, // 46 .. -33dB -9dB -6dB -3dB .. -51dB - {1, 2, 3, 5}, // 47 .. -30dB -14dB 0dB -6dB .. -50dB - {0, 5, 1, 5}, // 48 .. -33dB -4dB -6dB -6dB .. -49dB - {0, 3, 3, 5}, // 49 .. -33dB -9dB 0dB -6dB .. -48dB - {0, 6, 2, 4}, // 50 .. -33dB -2dB -3dB -9dB .. -47dB - {1, 5, 2, 4}, // 51 .. -30dB -4dB -3dB -9dB .. -46dB - {3, 0, 1, 3}, // 52 .. 0dB -24dB -6dB -15dB .. -45dB - {0, 6, 1, 6}, // 53 .. -33dB -2dB -6dB -3dB .. -44dB - {1, 5, 2, 5}, // 54 .. -30dB -4dB -3dB -6dB .. -43dB - {0, 4, 2, 7}, // 55 .. -33dB -6dB -3dB 0dB .. -42dB - {2, 2, 2, 7}, // 56 .. -24dB -14dB -3dB 0dB .. -41dB - {2, 5, 2, 4}, // 57 .. -24dB -4dB -3dB -9dB .. -40dB - {2, 3, 3, 5}, // 58 .. -24dB -9dB 0dB -6dB .. -39dB - {1, 6, 3, 5}, // 59 .. -30dB -2dB 0dB -6dB .. -38dB - {2, 5, 1, 6}, // 60 .. -24dB -4dB -6dB -3dB .. -37dB - {3, 3, 3, 1}, // 61 .. 0dB -9dB 0dB -27dB .. -36dB - {3, 2, 3, 2}, // 62 .. 0dB -14dB 0dB -21dB .. -35dB - {2, 5, 2, 6}, // 63 .. -24dB -4dB -3dB -3dB .. -34dB - {3, 0, 1, 6}, // 64 .. 0dB -24dB -6dB -3dB .. -33dB - {3, 0, 0, 7}, // 65 .. 0dB -24dB -8dB 0dB .. -32dB - {2, 5, 3, 6}, // 66 .. -24dB -4dB 0dB -3dB .. -31dB - {3, 3, 3, 2}, // 67 .. 0dB -9dB 0dB -21dB .. -30dB - {2, 6, 3, 6}, // 68 .. -24dB -2dB 0dB -3dB .. -29dB - {3, 2, 0, 5}, // 69 .. 0dB -14dB -8dB -6dB .. -28dB - {3, 5, 0, 3}, // 70 .. 0dB -4dB -8dB -15dB .. -27dB - {3, 3, 0, 4}, // 71 .. 0dB -9dB -8dB -9dB .. -26dB - {3, 1, 1, 7}, // 72 .. 0dB -19dB -6dB 0dB .. -25dB - {3, 4, 2, 3}, // 73 .. 0dB -6dB -3dB -15dB .. -24dB - {3, 4, 0, 4}, // 74 .. 0dB -6dB -8dB -9dB .. -23dB - {3, 2, 0, 7}, // 75 .. 0dB -14dB -8dB 0dB .. -22dB - {3, 7, 1, 3}, // 76 .. 0dB 0dB -6dB -15dB .. -21dB - {3, 6, 2, 3}, // 77 .. 0dB -2dB -3dB -15dB .. -20dB - {3, 5, 3, 3}, // 78 .. 0dB -4dB 0dB -15dB .. -19dB - {3, 3, 3, 4}, // 79 .. 0dB -9dB 0dB -9dB .. -18dB - {3, 2, 3, 6}, // 80 .. 0dB -14dB 0dB -3dB .. -17dB original - {3, 6, 0, 5}, // 81 .. 0dB -2dB -8dB -6dB .. -16dB - {3, 7, 1, 4}, // 82 .. 0dB 0dB -6dB -9dB .. -15dB - {3, 2, 3, 7}, // 83 .. 0dB -14dB 0dB 0dB .. -14dB - {3, 6, 0, 6}, // 84 .. 0dB -2dB -8dB -3dB .. -13dB - {3, 3, 2, 7}, // 85 .. 0dB -9dB -3dB 0dB .. -12dB - {3, 7, 0, 6}, // 86 .. 0dB 0dB -8dB -3dB .. -11dB - {3, 5, 3, 5}, // 87 .. 0dB -4dB 0dB -6dB .. -10dB - {3, 7, 2, 5}, // 88 .. 0dB 0dB -3dB -6dB .. -9dB - {3, 6, 3, 5}, // 89 .. 0dB -2dB 0dB -6dB .. -8dB - {3, 5, 2, 7}, // 90 .. 0dB -4dB -3dB 0dB .. -7dB - {3, 7, 2, 6}, // 91 .. 0dB 0dB -3dB -3dB .. -6dB - {3, 6, 2, 7}, // 92 .. 0dB -2dB -3dB 0dB .. -5dB - {3, 5, 3, 7}, // 93 .. 0dB -4dB 0dB 0dB .. -4dB - {3, 7, 2, 7}, // 94 .. 0dB 0dB -3dB 0dB .. -3dB - {3, 6, 3, 7}, // 95 .. 0dB -2dB 0dB 0dB .. -2dB - {3, 7, 3, 7} // 96 .. 0dB 0dB 0dB 0dB .. 0dB + {0x0000, -98}, // 1 .. -33dB -24dB -8dB -33dB .. -98dB + {0x0008, -96}, // 2 .. -33dB -24dB -6dB -33dB .. -96dB + {0x0100, -95}, // 3 .. -30dB -24dB -8dB -33dB .. -95dB + {0x0020, -93}, // 4 .. -33dB -19dB -8dB -33dB .. -93dB + {0x0001, -92}, // 5 .. -33dB -24dB -8dB -27dB .. -92dB + {0x0028, -91}, // 6 .. -33dB -19dB -6dB -33dB .. -91dB + {0x0009, -90}, // 7 .. -33dB -24dB -6dB -27dB .. -90dB + {0x0101, -89}, // 8 .. -30dB -24dB -8dB -27dB .. -89dB + {0x0030, -88}, // 9 .. -33dB -19dB -3dB -33dB .. -88dB + {0x0118, -87}, // 10 .. -30dB -24dB 0dB -33dB .. -87dB + {0x0002, -86}, // 11 .. -33dB -24dB -8dB -21dB .. -86dB + {0x0130, -85}, // 12 .. -30dB -19dB -3dB -33dB .. -85dB + {0x0019, -84}, // 13 .. -33dB -24dB 0dB -27dB .. -84dB + {0x0060, -83}, // 14 .. -33dB -9dB -8dB -33dB .. -83dB + {0x0138, -82}, // 15 .. -30dB -19dB 0dB -33dB .. -82dB + {0x0119, -81}, // 16 .. -30dB -24dB 0dB -27dB .. -81dB + {0x0058, -80}, // 17 .. -33dB -14dB 0dB -33dB .. -80dB + {0x0141, -79}, // 18 .. -30dB -14dB -8dB -27dB .. -79dB + {0x0070, -78}, // 19 .. -33dB -9dB -3dB -33dB .. -78dB + {0x0180, -77}, // 20 .. -30dB -6dB -8dB -33dB .. -77dB + {0x0139, -76}, // 21 .. -30dB -19dB 0dB -27dB .. -76dB + {0x0013, -75}, // 22 .. -33dB -24dB -3dB -15dB .. -75dB + {0x0161, -74}, // 23 .. -30dB -9dB -8dB -27dB .. -74dB + {0x01C0, -73}, // 24 .. -30dB -2dB -8dB -33dB .. -73dB + {0x00E8, -72}, // 25 .. -33dB 0dB -6dB -33dB .. -72dB + {0x00D0, -71}, // 26 .. -33dB -2dB -3dB -33dB .. -71dB + {0x0239, -70}, // 27 .. -24dB -19dB 0dB -27dB .. -70dB + {0x006A, -69}, // 28 .. -33dB -9dB -6dB -21dB .. -69dB + {0x0006, -68}, // 29 .. -33dB -24dB -8dB -3dB .. -68dB + {0x00B1, -67}, // 30 .. -33dB -4dB -3dB -27dB .. -67dB + {0x000E, -66}, // 31 .. -33dB -24dB -6dB -3dB .. -66dB + {0x015A, -65}, // 32 .. -30dB -14dB 0dB -21dB .. -65dB + {0x022B, -64}, // 33 .. -24dB -19dB -6dB -15dB .. -64dB + {0x01F8, -63}, // 34 .. -30dB 0dB 0dB -33dB .. -63dB + {0x0163, -62}, // 35 .. -30dB -9dB -8dB -15dB .. -62dB + {0x0035, -61}, // 36 .. -33dB -19dB -3dB -6dB .. -61dB + {0x0214, -60}, // 37 .. -24dB -24dB -3dB -9dB .. -60dB + {0x01D9, -59}, // 38 .. -30dB -2dB 0dB -27dB .. -59dB + {0x0145, -58}, // 39 .. -30dB -14dB -8dB -6dB .. -58dB + {0x02A2, -57}, // 40 .. -24dB -4dB -8dB -21dB .. -57dB + {0x02D1, -56}, // 41 .. -24dB -2dB -3dB -27dB .. -56dB + {0x00B3, -55}, // 42 .. -33dB -4dB -3dB -15dB .. -55dB + {0x0216, -54}, // 43 .. -24dB -24dB -3dB -3dB .. -54dB + {0x0066, -53}, // 44 .. -33dB -9dB -8dB -3dB .. -53dB + {0x00C4, -52}, // 45 .. -33dB -2dB -8dB -9dB .. -52dB + {0x006E, -51}, // 46 .. -33dB -9dB -6dB -3dB .. -51dB + {0x015D, -50}, // 47 .. -30dB -14dB 0dB -6dB .. -50dB + {0x00AD, -49}, // 48 .. -33dB -4dB -6dB -6dB .. -49dB + {0x007D, -48}, // 49 .. -33dB -9dB 0dB -6dB .. -48dB + {0x00D4, -47}, // 50 .. -33dB -2dB -3dB -9dB .. -47dB + {0x01B4, -46}, // 51 .. -30dB -4dB -3dB -9dB .. -46dB + {0x030B, -45}, // 52 .. 0dB -24dB -6dB -15dB .. -45dB + {0x00CE, -44}, // 53 .. -33dB -2dB -6dB -3dB .. -44dB + {0x01B5, -43}, // 54 .. -30dB -4dB -3dB -6dB .. -43dB + {0x0097, -42}, // 55 .. -33dB -6dB -3dB 0dB .. -42dB + {0x0257, -41}, // 56 .. -24dB -14dB -3dB 0dB .. -41dB + {0x02B4, -40}, // 57 .. -24dB -4dB -3dB -9dB .. -40dB + {0x027D, -39}, // 58 .. -24dB -9dB 0dB -6dB .. -39dB + {0x01DD, -38}, // 59 .. -30dB -2dB 0dB -6dB .. -38dB + {0x02AE, -37}, // 60 .. -24dB -4dB -6dB -3dB .. -37dB + {0x0379, -36}, // 61 .. 0dB -9dB 0dB -27dB .. -36dB + {0x035A, -35}, // 62 .. 0dB -14dB 0dB -21dB .. -35dB + {0x02B6, -34}, // 63 .. -24dB -4dB -3dB -3dB .. -34dB + {0x030E, -33}, // 64 .. 0dB -24dB -6dB -3dB .. -33dB + {0x0307, -32}, // 65 .. 0dB -24dB -8dB 0dB .. -32dB + {0x02BE, -31}, // 66 .. -24dB -4dB 0dB -3dB .. -31dB + {0x037A, -30}, // 67 .. 0dB -9dB 0dB -21dB .. -30dB + {0x02DE, -29}, // 68 .. -24dB -2dB 0dB -3dB .. -29dB + {0x0345, -28}, // 69 .. 0dB -14dB -8dB -6dB .. -28dB + {0x03A3, -27}, // 70 .. 0dB -4dB -8dB -15dB .. -27dB + {0x0364, -26}, // 71 .. 0dB -9dB -8dB -9dB .. -26dB + {0x032F, -25}, // 72 .. 0dB -19dB -6dB 0dB .. -25dB + {0x0393, -24}, // 73 .. 0dB -6dB -3dB -15dB .. -24dB + {0x0384, -23}, // 74 .. 0dB -6dB -8dB -9dB .. -23dB + {0x0347, -22}, // 75 .. 0dB -14dB -8dB 0dB .. -22dB + {0x03EB, -21}, // 76 .. 0dB 0dB -6dB -15dB .. -21dB + {0x03D3, -20}, // 77 .. 0dB -2dB -3dB -15dB .. -20dB + {0x03BB, -19}, // 78 .. 0dB -4dB 0dB -15dB .. -19dB + {0x037C, -18}, // 79 .. 0dB -9dB 0dB -9dB .. -18dB + {0x035E, -17}, // 80 .. 0dB -14dB 0dB -3dB .. -17dB original + {0x03C5, -16}, // 81 .. 0dB -2dB -8dB -6dB .. -16dB + {0x03EC, -15}, // 82 .. 0dB 0dB -6dB -9dB .. -15dB + {0x035F, -14}, // 83 .. 0dB -14dB 0dB 0dB .. -14dB + {0x03C6, -13}, // 84 .. 0dB -2dB -8dB -3dB .. -13dB + {0x0377, -12}, // 85 .. 0dB -9dB -3dB 0dB .. -12dB + {0x03E6, -11}, // 86 .. 0dB 0dB -8dB -3dB .. -11dB + {0x03BD, -10}, // 87 .. 0dB -4dB 0dB -6dB .. -10dB + {0x03F5, -9}, // 88 .. 0dB 0dB -3dB -6dB .. -9dB + {0x03DD, -8}, // 89 .. 0dB -2dB 0dB -6dB .. -8dB + {0x03B7, -7}, // 90 .. 0dB -4dB -3dB 0dB .. -7dB + {0x03F6, -6}, // 91 .. 0dB 0dB -3dB -3dB .. -6dB + {0x03D7, -5}, // 92 .. 0dB -2dB -3dB 0dB .. -5dB + {0x03BF, -4}, // 93 .. 0dB -4dB 0dB 0dB .. -4dB + {0x03F7, -3}, // 94 .. 0dB 0dB -3dB 0dB .. -3dB + {0x03DF, -2}, // 95 .. 0dB -2dB 0dB 0dB .. -2dB + {0x03FF, 0} // 96 .. 0dB 0dB 0dB 0dB .. 0dB }; const unsigned int original_index = 80; @@ -227,7 +233,7 @@ #endif // total RF gain for each table index - int8_t gain_dB[ARRAY_SIZE(gain_table)] = {0}; +// int8_t gain_dB[ARRAY_SIZE(gain_table)] = {0}; // display update rate const unsigned int display_update_rate = 250 / 10; // max 250ms display update rate @@ -273,14 +279,14 @@ gain_table_index[i] = original_index; // re-start with original QS setting #endif } - +/* // pre-compute the total gain for each table index .. saves doing it in real time for (i = 0; i < ARRAY_SIZE(gain_table); i++) { const t_gain_table gains = gain_table[i]; gain_dB[i] = lna_short_dB[gains.lna_short] + lna_dB[gains.lna] + mixer_dB[gains.mixer] + pga_dB[gains.pga]; } - +*/ #if 0 { // set a maximum gain to use // const int16_t max_gain_dB = gain_dB[original_index]; @@ -288,7 +294,8 @@ max_index = ARRAY_SIZE(gain_table); while (--max_index > 1) - if (gain_dB[max_index] <= max_gain_dB) +// if (gain_dB[max_index] <= max_gain_dB) + if (gain_table[max_index].gain_dB <= max_gain_dB) break; } #else @@ -405,10 +412,12 @@ if (diff_dB >= 10) { // jump immediately to a new gain setting // this greatly speeds up initial gain reduction (but reduces noise/spike immunity) - const int16_t desired_gain_dB = (int16_t)gain_dB[index] - diff_dB + 8; // get no closer than 8dB (bit of noise/spike immunity) +// const int16_t desired_gain_dB = (int16_t)gain_dB[index] - diff_dB + 8; // get no closer than 8dB (bit of noise/spike immunity) + const int16_t desired_gain_dB = (int16_t)gain_table[index].gain_dB - diff_dB + 8; // get no closer than 8dB (bit of noise/spike immunity) // scan the table to see what index to jump straight too while (index > 1) - if (gain_dB[--index] <= desired_gain_dB) +// if (gain_dB[--index] <= desired_gain_dB) + if (gain_table[--index].gain_dB <= desired_gain_dB) break; //index = (gain_table_index[vfo] + index) / 2; // easy does it @@ -455,13 +464,15 @@ // remember the new table index gain_table_index_prev[vfo] = index; - const t_gain_table gains = gain_table[index]; - BK4819_WriteRegister(BK4819_REG_13, ((uint16_t)gains.lna_short << 8) | ((uint16_t)gains.lna << 5) | ((uint16_t)gains.mixer << 3) | ((uint16_t)gains.pga << 0)); +// const t_gain_table gains = gain_table[index]; +// BK4819_WriteRegister(BK4819_REG_13, ((uint16_t)gains.lna_short << 8) | ((uint16_t)gains.lna << 5) | ((uint16_t)gains.mixer << 3) | ((uint16_t)gains.pga << 0)); + BK4819_WriteRegister(BK4819_REG_13, gain_table[index].reg_val); // offset the RSSI reading to the rest of the firmware to cancel out the gain adjustments we make // RF gain difference from original QS setting - rssi_gain_diff[vfo] = ((int16_t)gain_dB[index] - gain_dB[original_index]) * 2; +// rssi_gain_diff[vfo] = ((int16_t)gain_dB[index] - gain_dB[original_index]) * 2; + rssi_gain_diff[vfo] = ((int16_t)gain_table[index].gain_dB - gain_table[original_index].gain_dB) * 2; } // save the corrected RSSI level @@ -481,7 +492,8 @@ if (s != NULL) { const unsigned int index = gain_table_index[vfo]; - sprintf(s, "%2u.%u %4ddB %3u", index, ARRAY_SIZE(gain_table) - 1, gain_dB[index], prev_rssi[vfo]); +// sprintf(s, "%2u.%u %4ddB %3u", index, ARRAY_SIZE(gain_table) - 1, gain_dB[index], prev_rssi[vfo]); + sprintf(s, "%2u.%u %4ddB %3u", index, ARRAY_SIZE(gain_table) - 1, gain_table[index].gain_dB, prev_rssi[vfo]); counter = 0; } } diff --git a/firmware.bin b/firmware.bin index 76de68c1300bcf9a98cc291b55d986983c772e91..b0b7516a18cdf8b2e4e05267cfec9608d848442e 100644 GIT binary patch delta 29764 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 z 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�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 diff --git a/firmware.packed.bin b/firmware.packed.bin index 5b41567bec2a9eacfb42a646a34fb66d7573db21..2530583064e54de6c06579f8d048e556b296a92f 100644 GIT binary patch delta 40755 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 delta 41013 zcmX`SbyU;u|31#>6cB{5(Ty|;(%s#oySsBZ2{8Z#Mt66N5CoJKq!D41bVx~ee#h(m z`ThRhIXlmD?(2R$uDbUtG4`u5;>FQF>Lf_cq1&^-K>$s_0o)l-3!sNnp+^FK!?V%f zk^FHaoUf~0TIu@y9Ip=Gp#gu1aVr;~Dch90L%VP@z!8-t9z@8~?p&MZ(xydZ8RmOz zn#RVcryYLnNdf$g{CK>EGb=QdzDr7(I0avH)TVv&< za!;#yz>d1v7dR;xM$^;4RL1%5$EBv%!}}~6ZOvVHps!Z?Q!KYT#?PkkYVZQ93nx3c z#j;0@2QHv6N4d?6Yu?dqSiLrg1yAsJGW(Hp*?OqNn-q?qPD95B!BuHI05lCPG*SR` z-);CcEeNm%e@6EL{i8ixl`aCS;qQJ%0Q?u7AQ4a1H~{;=XiXjZtMw(Ej9v)A|a|#b|}EOry28u(}jV_7tANXh9mK zrI;_?dZ9v`oywFZHc-$6$6{h)+5Ee?yKLyW-2fm_vkMbS`5i9kw>P&s&Bp9FU8uZW zx?dbTXaLt>g0SMCu9FGb>b8fa(!h5X*`{Gj;-<__@uDK$6%WBSht0ZnM8_|0_#o43 zKm}Zd`2g$j$8fj=i|OOZv&aE7;R`H70*5P|1IKg^hYf(&8p`C7Gu4Wch=(L^NIJKH z6uruBM_<$qeZv;$kFcJpc6buyRvb5cj|gqw@l!fn*`|fUX?}tgd!OD^6S`L+^x@{O*I+jE$42&u?X5{sTA7 zw`n13y{{K6ti7Mwt+?hVVFFKXd*_(uOwf_|EOZVOV7+ImfB`%|dG# zENTO!({z?t=JQyc8Th5A*dNx_VegOXi$4q2pa(g#Fo1YXo)Qb?NM=Gjv(rr;=xD&) zQ8VGZdv=BApMLD(fMe8~qy(6egd=RyGPJn(yilk0Mb3psqlv7|1^78b{{9BzqA9-3 z*8%DFx>)P=IUUwvgOntiy=yzf+|E_(p%etp|1((;Pw1l(WW|?Xbqt602AgEYD#%2z zg!y+4tPU>GA*zIxXu=;`l4O-pqGE^GKdm-BtzeA96zapkTBfM%a)kIu6c;%G)UP0_CQYSr*|XXVy-tCBZwtU-8zG;Ll4aN2*8sW)FCJ z?gllPUkAGfHrbY?OT!b$MWf1Hrk{?2VXvqhXEoJ}GWB_OcZx8oxP>$8!dF+jqZI}U zzkZX6E@V#mbj@~4OSGQrZK9ErCsXGsth?8#QEW9HQ|_yS<-2?U<5FQv1Qjg-8KlFQ z`wXlPlC{M>F-XsA>5tt44#V2$9N8fr6p1kk44t~tM`lUCK3dKHJyeJGsv#@8V0tXe z8uMtdT0;YdRj()vI5%BpoAy!uDtVho#e~|mycG6ARX$rd8t3Y0oBG{mB>vj;LZ0iZ zy0lLjv?tp9+b^FP-3NS>eQK`bWbN_dpOwpgQRH_o>W~u_US*QoCx-Q5tzC=23P6oP zp3+UH_eYRT(uuBbC1IulWClK61_P%>rzswzm9%$Cc@N5^Xzy@Ywt_su5uNTdmD`B& z?p{{x?-wKzrF?oAuh@NUhVvR4v-XPlaLb)K*q(alh-leTZzR-2a4<5P5Qx@Lu{iv@ zw~Xw#aY+b8AFKqOp7|!Ej8JPohcXhw%eeFlIZdF-8ufB&Rl^xYX0zV0umRiZ(d61Z z2H3`3zx=jXu1Y5Gn9ymntByEKi7#-%xi5;X3-tj+Lbvh`Qh6$wqZ@ykNn5*e zFufTs@hX#8pVQmDV`pSeB@nHgWq#e)*Qmo|DC9f$=d32@_K9MB%21&-GB57AK*b+t zGoaARQ0hyo>z+HEKFL`)jJ2$C?~}dbY&}lGxTZfy7M-Qez_4Z2^yk2#Vc|e>k4~Sv z2V3LC&u-tOIqH_Z=;O_ zs9#4Bl}UaqIYVhblGlJhVc-abf$tWqL8fJm%`bso>xn+nQIhBh=tti?HmZN%l!sY5BYSB-xTsM+Z|FHX>p-qAeKtUmVa=Vx_?vLF1&(Nx{ZH&{0j6?`5C5!2Jt zt4m%!c)|UF3H`2giI%Y*WM!E^{ zS~kg30H&UOrMe#@OzlZmc!g`8v!;(pIYJQsRg3FJ{oi}O0YAly!gg85#15X6v4NL< zT(d{0Bk-!R$QG4HMrn&G9rP{Ydz*L`&eIN13FV=K?sR7wnTx;Uj@_5sBx+ON5RoDw z0>kVutq6H04)(xD7A1w^fM+Nco;iSekV0i+&rfGLuPG~Pko+wr(UKe85D3fsU@zFQ4#dPz9gxKjXSYJ z$tbbYR8VuEqtgMa1UCx&n?mvi!O#}-k&<%0JbY!;!176TO-$eq)&DS{znQPIeHXXR z_#Xz?^-NT^kOs#2C=AF%IkErz!B5S1`tO{6!-o1fO-AZ9`d_o8A!r5>2Oq?5J!1%> zd#H^S7&y@U9+Qdx~Jm6z!x%{&q9Ud=;iye(SdVt8+Ew^7g- zzc)zz%ammO&GH#BXO!lUQ2NYHnI1C_jQUf!t;}V9j0Bf-8gY19_<<?qLmZQ-oMYI3cxDI zjV4R<;6WU+mtAMzJLH##a~^tz9a(R_fOLa#zLIpQXZ4D?gqE697Kn0~hCFv~~6sEvj>{Nb6Kqt;^1P*hICp z)lKQ0I@Hn_8DqA~vW)nJ2K&9E&mtq3>dK5F$ym=;2Oubte9kZ1bRbQff&+z*HM(Sn zF;lJ?zD1wAx-a&ICjo88ohwa^zbZ89ov5d|G<29A$FzO@ZfEA%8!YYqf^GhB4wy}= z)Qh&ca`-|FkwY<=ML^R2z!}Hm7 zBKY^uQ%LC6`5}3;q=imu@qkB^3TuO=vnTj(uj_n!QxTS!IF%G@s&0l?V6r;UcUl$W z-|aV!`PmCgrrw&U@f>VgZh+S$SE!eR$DG@kB!K`c(;5G@Mt2955=^S_gDd4w5oA1d zbkTZRkADn1LB;v7yT8ng?^qW~t@r_RG#8W_F(;|i{f*vh%-;UVH!vyjnG*!Jd}ZOu zNKsRLR)4OXnsbF~CzY3gTExcRhwHUkbk!y~>4f9&v5=03YKR6vygPD_0e@I*C?EkE zL1?5#y=%92O-cGe7nV%)#r8P6Q2a$1gq*HAu9GwBQ~05z@yjHnmV37u7}! zm?xPg;7@*fvyLDI<~?_)$5@??$Se9lXlj89d~{^e8*t<-(MjeVs&g|}ja6B-$SJ~Y zz)q1?5SMwdWmuUdE$Pe1xLMkXJr0=*O#k!}?D(7&GZ4r55GESM<8oUsm*<>7p7L(i zS@0S`5SFO13Q(}+Z(d#Wj>CAzf{dHJn~pf8HVZF2!Y|vTU0l6bmCy ES}vvtqcB>6uORRyql$k5q-*=J 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 diff --git a/utils/main.cpp b/utils/main.cpp index d92964b..433b153 100644 --- a/utils/main.cpp +++ b/utils/main.cpp @@ -93,15 +93,29 @@ void create_gain_table(const char *filename) mixer_dB[orig_mixer] + pga_dB[orig_pga]; - const uint8_t lna_short_min = 0; // 0 - const uint8_t lna_min = 0; // 0 - const uint8_t mixer_min = 0; // 0 - const uint8_t pga_min = 0; // 0 - - const uint8_t lna_short_max = 3; // 3 - const uint8_t lna_max = 7; // 5 - const uint8_t mixer_max = 3; // 3 - const uint8_t pga_max = 7; // 7 + #if 0 + // full table + const uint8_t lna_short_min = 0; // 0 + const uint8_t lna_min = 0; // 0 + const uint8_t mixer_min = 0; // 0 + const uint8_t pga_min = 0; // 0 + + const uint8_t lna_short_max = 3; // 3 + const uint8_t lna_max = 7; // 5 + const uint8_t mixer_max = 3; // 3 + const uint8_t pga_max = 7; // 7 + #else + // just one register changes + const uint8_t lna_short_min = 0; + const uint8_t lna_min = 2; + const uint8_t mixer_min = 3; + const uint8_t pga_min = 6; + + const uint8_t lna_short_max = 3; + const uint8_t lna_max = 2; + const uint8_t mixer_max = 3; + const uint8_t pga_max = 6; + #endif uint8_t lna_short = lna_short_min; uint8_t lna = lna_min; @@ -246,31 +260,70 @@ void create_gain_table(const char *filename) fprintf(file, "\n"); fprintf(file, "\tconst t_am_fix_gain_table am_fix_gain_table[] =\n"); fprintf(file, "\t{\n"); - fprintf(file, "\t\t{.lna_short = 3, .lna = 2, .mixer = 3, .pga = 6}, // 0 0dB -14dB 0dB -3dB .. -17dB original\n\n"); - for (unsigned int i = 0; i < gain_table.size(); i++) + #if 0 + fprintf(file, "\t\t{.lna_short = 3, .lna = 2, .mixer = 3, .pga = 6}, // 0 0dB -14dB 0dB -3dB .. -17dB original\n\n"); + + for (unsigned int i = 0; i < gain_table.size(); i++) + { + char s[1024]; + + const t_gain_table entry = gain_table[i]; + + sprintf(s, "\t\t{%u, %u, %u, %u}, // %3u .. %3ddB %3ddB %2ddB %3ddB .. %3ddB", + entry.lna_short, + entry.lna, + entry.mixer, + entry.pga, + 1 + i, + entry.lna_short_dB, + entry.lna_dB, + entry.mixer_dB, + entry.pga_dB, + entry.sum_dB); + + if (i == original_index) + strcat(s, " original"); + + fprintf(file, "%s\n", s); + } + #else { - char s[1024]; + //BK4819_WriteRegister(BK4819_REG_13, ((uint16_t)gains.lna_short << 8) | ((uint16_t)gains.lna << 5) | ((uint16_t)gains.mixer << 3) | ((uint16_t)gains.pga << 0)); - const t_gain_table entry = gain_table[i]; + uint16_t reg_val; + int16_t sum_dB; + + reg_val = ((uint16_t)orig_lna_short << 8) | ((uint16_t)orig_lna << 5) | ((uint16_t)orig_mixer << 3) | ((uint16_t)orig_pga << 0); + sum_dB = lna_short_dB[orig_lna_short] + lna_dB[orig_lna] + mixer_dB[orig_mixer] + pga_dB[orig_pga]; + fprintf(file, "\t\t{0x%04X, %-3d}, // 0 .. 0dB -14dB 0dB -3dB .. -17dB original\n\n", reg_val, sum_dB); - sprintf(s, "\t\t{%u, %u, %u, %u}, // %3u .. %3ddB %3ddB %2ddB %3ddB .. %3ddB", - entry.lna_short, - entry.lna, - entry.mixer, - entry.pga, - 1 + i, - entry.lna_short_dB, - entry.lna_dB, - entry.mixer_dB, - entry.pga_dB, - entry.sum_dB); - - if (i == original_index) - strcat(s, " original"); - - fprintf(file, "%s\n", s); + for (unsigned int i = 0; i < gain_table.size(); i++) + { + char s[1024]; + + const t_gain_table entry = gain_table[i]; + + reg_val = ((uint16_t)entry.lna_short << 8) | ((uint16_t)entry.lna << 5) | ((uint16_t)entry.mixer << 3) | ((uint16_t)entry.pga << 0); + sum_dB = lna_short_dB[entry.lna_short] + lna_dB[entry.lna] + mixer_dB[entry.mixer] + pga_dB[entry.pga]; + + sprintf(s, "\t\t{0x%04X, %-3d}, // %3u .. %3ddB %3ddB %2ddB %3ddB .. %3ddB", + reg_val, + sum_dB, + 1 + i, + entry.lna_short_dB, + entry.lna_dB, + entry.mixer_dB, + entry.pga_dB, + entry.sum_dB); + + if (i == original_index) + strcat(s, " original"); + + fprintf(file, "%s\n", s); + } } + #endif fprintf(file, "\t};\n\n"); diff --git a/utils/misc.exe b/utils/misc.exe index ba799919973c59bf33e670447c7ba49b3a5bb40b..a6aab07a61b806b5d026c2b0ed6387216191ca52 100644 GIT binary patch delta 3371 zcmZuz3s6&68omz*;UNhUUI9&b8d@G9_g)M{AOhEdH5wRFp+4$bCe5g`MN3-7#U@sQ zK#~@FV03vX6?}~2T4%v(T~Vxz)=p>E=~9<<)xoYidr^1Fj?OG&Iq9v($yHW_keM87iCWtqM zQ=kahAZ{UqYM5$ltkH;-wLtVEQJ#Db@?>)|s+SZ?!$CF+;VI~%ByLd&C_c^&R)P-1 zx2}BI19?KP*T)GVDd>r0iQ_TE3>~SDGjEX!y&#)~ei&zcz5(&dl|2PG0I@?ZT=K!= z4|fJrpJAf*9d~pF;STudO1s7VX!q#&GoSB`wdV$kA?dLsg0NoWzf}-k%S5FRCWQvf zK7QP55-Nm^K?D)GXH>d}9}n=E#k$ot5Z6(&z&0!CY@M zbzA9D(@E^qWu==eej8U6Hg)?a1AnwW$}1LE;pGLhuv3CcgA>bfwUy#3nk3>v&G21q zeAhCGteFA|w>HCfLov>0w5<8Z84PvPGkg!!?0ibens19x4~0$zXNHygW4Nch!+P|u z;50|fOF#qRzNBFT9v`tD!Fwqspg0!SXmFLnw9DZ=qlei$96R6Cdj@+#z+Zyc#yk9r zpgw!M*xKPh|CUdCSBn8(WcArSqQOTm48+(kdEU>j1ir?=dt`e#$l~MMy%wQTU<1*u zkYvY_S!d``I=>`;OHL7_Wv;W(sdG3OEGU`lgs6mo0!*){gn}ZGHT8os>4w2)ZxL(z zI>28%grA0`eNo$7cn3yld%Sb_DF~E(p>z0|hy*)_pMxN&uYzR_fatKS3YhGrV)ZVF zTeH>F5>8*q9=e_;S}04oT3G7Pj(JZ0!Z1F&fy0j(Dn%D@IzD=rY0Yt zePK$6i}J_hFVx~?A||5&u-$}Dh0pF3&Mp>N+xV=0Y*r6h?&tUWb?Y_Phfx1U+UmBP zx6+;dyKaHI-s!*VosB@tE_v}(Av-Htn{DCCjSewQg&0N-_q($JEG8Ke_Ua54#rAK` z)(Cy$@71sRhRg24@Z||9T+YtFVeyARYv@;SX}!0wc8|7(UdG(tK?4HrKQ0$LI^(kP z7Wjlmq1^CHQjKcE4P+_m3x7MvRsz2djY>45Qlb>u6N-&PN_jDP8f}mlk+)H=ynvc2 zMz`g4FaiaatNolzu_i_y4Z9qB=AlmT+qMZFy~h6_3wDHil3YFki%+DMRu z6Ll+>QG^DUMV(ZkgYszf@6>P<60(RHihOW9awF%}~-$%Eo}| zL?eOjq^eMNd;<`Q1S1fZgzKafsTMiNWrK$nrI6$%G`iSGYqUo6r_^Fpt~y0Fp=p(d z_GCl8)GG9Wx-sZD52bme&|DJv2qmiH2la_Yn$k09XUayZIuUJzzNS(%qf4N!wP4|4lOB zxR?bz_V)p@rvQ(HJ>*(o9|}!hO1*yvm8Pe}neX^~yGP&v5&aWT-!;1Yy&WH2D+%}( z?M_!xTUpebo=Y~Ov2_0xJc*RV9nz70-1Pk;gXCyYkiytSLwZq#1 zZy8|4@K(XQ8r~+r2*Ly70eD-`-i$W2wjou^R%fVFGnv|58EXHNoei^Aot33lqg9!i zVe^d!_hv32RRnA$5dhHyxN@tRa&Qe8;g4LYI7|6@ez8qDc9FC29miQ%2kLxhKOEQx@DRGE zRmn!@g$dBig^3hq!^~xHyr4o7V513W{Pe40rDjn5JxS_8^w&=wK;P&5H7FN0Z3kx@ zysR_Q``TX_By;Hy>a~MNV$4#$cCcivKROAQlpxv(!ijaDR~w^W(3mQOOFZ(D{%{^m zfNwDTC!NBs@PPNJ|3k}h7?B>lYfK9w8&F``a>tUTOY|%BztMa3hxIRPOnu`TDo=`tnfzh5Szp=M0LX`l6vCLJQ|O9|DbX zaP+ih?SOV%tI64#^ITWNxS0J+FLRVR!N}MIb}9QV+r=Jd53`@M7uiwv8}*%BuuK(G%``BLOb^q?j4-3jeMVrUY%Hs1OIaIR k$F{S5>_P zzwdvY|D1d8uB{i_dhv)tBFWk|>MOY;4HmRUgrs*kb`K+Phl_^D*X4d5kC6ScFc62( zHX$$pA%TKehlFvMYAnQPWXf5v8ls}Sumg-1ZpP6jd6A+KaFfs&PtVE2quvI^rL%*T za1g{D(`THJW!1%|aN)Ul`i(rPWedQorkcV{bqWECuHGv?X&_Edw-&GfsL@}Tbiw5g z7tW|7jM)9OJw$`-vR9^is_nP-&CK0%xgOtgda4MLu8Kp*e1X3dj2zYTl|q9zEWqUA zXB}lih48){p`g|oMJqombCu23NgVvVNjM;}W4zLiJ!rUpW)X209#@LExsk_(NuU6+dR~>@zXo zBIzn~n(b|6^`MzM+bbD(1w766(&`iDPDho;ZNO~rPL)NH#8R&yfcMD(Ojs`6cT4Ev&EBA@=#C$Z(1 zD}V;Vosq%@e0|h>lc6aNE2VhyxSEQyGZZNdeDyr~M>s(|Rw)-af?C1Ujp(E6HZ z$~yd{e`uZZGl{wWEMnDwy>AlFz-0hhXOtq@%}71pq1yixL=j{B0-yjlb_-I8E@mlJ zD%Wm$QuI`?ooCc{%7%*W0BVL)Xw}$63#m2UHt{b2CDsVr#J@q1S_5noU(p7o8kf@p z%7~T)?A|7ReD@G^2raw_faMyzDqL2Zur^v`Ewdhdl}Gp8;O6f~xp_a2{-s-o2eof6 zENJ0Rtm&tiD6XSH;!Xw&U@sn6K+B^?RW;cz0BllC_I&|!rE1b~1Lg|A|K`Ex8E$v5 zh#M;4F>n7XBjBOzyUrMRP92|tAW|%a$?^h}=IFb{SmEblc^PhheOa$HxWzKT_;$vd zgde-h_n2EQcvclE!b(^B@G4jQuiAy%Mh~lkv7|qY{?@+;2h$Cqh1f`Q z0}3R{V%i+gfbWkk1gIo^|Wctc6^*(UZcmCs4`?1UZf2n-4aU-T?#3Zbf?pM{s!z%_l0H` z6heHVc+usmvDAWSDP{WLU6%{$x3n;%jv<|HgqwO|x`%ybT4&}?2ba+Qgl?8Dh8yWw z|2(=cEDo2@;jlJYQ-l%G#dXp2N8$Ond31kxEyhlIBfDE34HTAFED;rmXRZM6M z&5mq_0!Jc^(2U!W7jXhT8`Xlhj_RWmFy2dd#u%mD=|;LGv55X7<|IB$d)3L3#WZ?O z{Sls_J+a9W6H_8aKaMp@y`At?$H+-1)!~$^GfKwQ^o4Z>@2w)-4{((fHAT?CM1$m; z1X`I`>19eYA_a|245d?vVHnZBByMKmQ<64d#b|xfuP~ma50Z=VJTfI z8kG_u`H-WzDOtFmHl%3%rXYZQwdrSY$3rutBPk|)pvU=|rc@smYeeVZ2g;1+M~V|H zPrw*qGhoMHoQClpjKhE-bR6zuFox-VO_x5c{<$Z2?6ExG*rYB{a~d_%LDGWs>`$A2 z(&#}Oo@Qv)OB%I!rKhXa88kCB)o-0uqh1-Kb*ZayH0(N(K_&qn6qul;Zhao~#c+Bs zEjqQg2>OcPn*!G`$T_g#kGik}z;x!4LqAW837iM3haQU{AC9Fjr$@^*#ScX<6Nqgz zAU#Ij1X53e$oDUcUgID(&?CUlgH)Qx_&{07N?6F}fmHCOy=?^Y3( zp$EyLbN6?g-LQNd;II^Cp_+drjwR_~oFEzOHxd`x45HXIP3`ZAY@}Y(B;OE zWtve2jBHaY^vjRX2z-4M2rV*KxWN15_t5?v=9bLkncmuN?M>|uNk6$ynsq^0Raw#5Z)8vB$a4RitIqp6FH+xZ zm^FkIHWiK)qPh%(Iv|iDBR``%{ zq!B{$NDKeNEhiL2Z@usMUIn`WQ_ctOp){C61hTVscU1X zJWiLagTDu*n>5>pwY}OA?Pcwpc2PU8eV~oxk~s}m%9*$Zu8HgA`nl8GI5)@5bBM@D v0;H{iWNoCIoFL<5j?5FJQ|dBwM%`{*y{=o=qZ`qU=|0w-$Qq$nH>Lg`Z0PFd