diff --git a/sa_core.c b/sa_core.c index 354f09f..dfde1e7 100644 --- a/sa_core.c +++ b/sa_core.c @@ -2037,14 +2037,14 @@ void calibrate(void) test_prepare(i); test_acquire(i); // Acquire test local_test_status = test_validate(i); // Validate test - if (local_test_status != TS_PASS) { - ili9341_set_foreground(BRIGHT_COLOR_RED); - ili9341_drawstring_7x13("Calibration failed", 30, 120); - goto quit; - } else +// if (local_test_status != TS_PASS) { // Do not validate due to variations in SI4432 +// ili9341_set_foreground(BRIGHT_COLOR_RED); +// ili9341_drawstring_7x13("Calibration failed", 30, 120); +// goto quit; +// } else SetPowerLevel(last_peak_level); chThdSleepMilliseconds(1000); - } + } ili9341_set_foreground(BRIGHT_COLOR_GREEN); ili9341_drawstring_7x13("Calibration complete", 30, 120); quit: diff --git a/si4432.c b/si4432.c index 462d1d2..e6e61ef 100644 --- a/si4432.c +++ b/si4432.c @@ -181,17 +181,123 @@ void SI4432_Receive(void) // for which WISH is greater than the first entry, use those values, // Return the first entry of the following triple for the RBW actually achieved static const short RBW_choices[] = { // Each quadrupple is: ndec, fils, WISH*10, corr*10 - 5,1,26,0, 5,2,28,0, 5,3,31,0, 5,4,32,0, 5,5,37,0, 5,6,42,10, - 5,7,45,10, 4,1,49,10, - 4,2,54,10, 4,3,59,10, 4,4,61,10, 4,5,72,10, 4,6,82,10, 4,7,88,10, - 3,1,95,10, 3,2,106,5, 3,3,115,0, 3,4,121,0, 3,5,142,0, 3,6,162,10, - 3,7,175,10, 2,1,189,10, 2,2,210,10, 2,3,227,10, 2,4,240,10, 2,5,282,5, - 2,6,322,10, 2,7,347,10, 1,1,377,10, 1,2,417,10, 1,3,452,10, 1,4,479,5, - 1,5,562,10, 1,6,641,10, 1,7,692,10, 0,1,752,10, 0,2,832,10, 0,3,900,5, - 0,4,953,10, 0,5,1121,10, 0,6,1279,10, 0,7,1379,5, 1,4,1428,0, 1,5,1678,-10, - 1,9,1811,65, 0,15,1915,120, 0,1,2251,-5, 0,2,2488,0, 0,3,2693,-5, - 0,4,2849,0, 0,8,3355,30, 0,9,3618,60, 0,10,4202,25, 0,11,4684,25, 0,12,5188,35, - 0,13,5770,35, 0,14,6207,35 +#if 1 + 5,1,26,0, + 5,2,28,0, + 5,3,31,-10, + 5,4,32,-10, + 5,5,37,-10, + 5,6,42,0, + 5,7,45,-5, + 4,1,49,-5, + 4,2,54,-10, + 4,3,59,-10, + 4,4,61,-10, + 4,5,72,-10, + 4,6,82,-5, + 4,7,88,0, + 3,1,95,0, + 3,2,106,0, + 3,3,115,-5, + 3,4,121,-5, + 3,5,142,-10, + 3,6,162,0, + 3,7,175,0, + 2,1,189,0, + 2,2,210,0, + 2,3,227,0, + 2,4,240,5, + 2,5,282,-5, + 2,6,322,0, + 2,7,347,0, + 1,1,377,0, + 1,2,417,0, + 1,3,452,0, + 1,4,479,5, + 1,5,562,0, + 1,6,641,0, + 1,7,692,0, + 0,1,752,5, + 0,2,832,5, + 0,3,900,0, + 0,4,953,5, + 0,5,1121,0, + 0,6,1279,0, + 0,7,1379,0, + 1,4,1428,-15, + 1,5,1678,-25, + 1,9,1811,50, + 0,15,1915,105, + 0,1,2251,-20, + 0,2,2488,0, + 0,3,2693,-15, + 0,4,2849,-10, + 0,8,3355,20, + 0,9,3618,55, + 0,10,4202,20, + 0,11,4684,20, + 0,12,5188,25, + 0,13,5770,15, + 0,14,6207,15, +#else + 5,1,26,0, + 5,2,28,0, + 5,3,31,0, + 5,4,32,0, + 5,5,37,0, + 5,6,42,10, + 5,7,45,10, + 4,1,49,10, + 4,2,54,10, + 4,3,59,10, + 4,4,61,10, + 4,5,72,10, + 4,6,82,10, + 4,7,88,10, + 3,1,95,10, + 3,2,106,5, + 3,3,115,0, + 3,4,121,0, + 3,5,142,0, + 3,6,162,10, + 3,7,175,10, + 2,1,189,10, + 2,2,210,10, + 2,3,227,10, + 2,4,240,10, + 2,5,282,5, + 2,6,322,10, + 2,7,347,10, + 1,1,377,10, + 1,2,417,10, + 1,3,452,10, + 1,4,479,5, + 1,5,562,10, + 1,6,641,10, + 1,7,692,10, + 0,1,752,10, + 0,2,832,10, + 0,3,900,5, + 0,4,953,10, + 0,5,1121,10, + 0,6,1279,10, + 0,7,1379,5, + 1,4,1428,0, + 1,5,1678,-10, + 1,9,1811,65, + 0,15,1915,120, + 0,1,2251,-5, + 0,2,2488,0, + 0,3,2693,-5, + 0,4,2849,0, + 0,8,3355,30, + 0,9,3618,60, + 0,10,4202,25, + 0,11,4684,25, + 0,12,5188,35, + 0,13,5770,35, + 0,14,6207,35 +#endif }; static float SI4432_RSSI_correction = 0; diff --git a/ui_sa.c b/ui_sa.c index 2646ebc..121034b 100644 --- a/ui_sa.c +++ b/ui_sa.c @@ -938,7 +938,7 @@ static void menu_pause_cb(int item, uint8_t data) } //const int menu_drive_value[]={5,10,15,20}; -const char *menu_drive_text[]={"-30dBm","-27dBm","-24dBm","-21dBm","-18dBm","-15dBm","-12dBm"," -9dBm", " -6dBm"," -3dBm"," 0dBm"," 3dBm"," 6dBm"," 10dBm"," 14dBm"," 18dBm"}; +const char *menu_drive_text[]={"-36dBm","-34dBm","-32dBm","-30dBm","-28dBm","-26dBm","-24dBm"," -22dBm", " -10dBm"," -7dBm"," -4dBm"," -1dBm"," 2dBm"," 5dBm"," 8dBm"," 11dBm"}; @@ -954,33 +954,33 @@ static const menuitem_t menu_drive[] = { }; static const menuitem_t menu_drive_wide3[] = { - { MT_FORM | MT_CALLBACK, 5, "-15dBm", menu_drive_cb }, - { MT_FORM | MT_CALLBACK, 4, "-18dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 3, "-21dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 2, "-24dBm", menu_drive_cb }, - { MT_FORM | MT_CALLBACK, 1, "-27dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 0, "-30dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 5, "-26dBm", menu_drive_cb }, + { MT_FORM | MT_CALLBACK, 4, "-28dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 3, "-30dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 2, "-32dBm", menu_drive_cb }, + { MT_FORM | MT_CALLBACK, 1, "-34dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 0, "-36dBm", menu_drive_cb}, { MT_FORM | MT_CANCEL, 255, S_LARROW" BACK", NULL }, { MT_FORM | MT_NONE, 0, NULL, NULL } // sentinel }; static const menuitem_t menu_drive_wide2[] = { - { MT_FORM | MT_CALLBACK, 10, " 0dBm", menu_drive_cb }, - { MT_FORM | MT_CALLBACK, 9, " -3dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 8, " -6dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 7, " -9dBm", menu_drive_cb }, - { MT_FORM | MT_CALLBACK, 6, "-12dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 10, " -4dBm", menu_drive_cb }, + { MT_FORM | MT_CALLBACK, 9, " -7dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 8, "-10dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 7, "-22dBm", menu_drive_cb }, + { MT_FORM | MT_CALLBACK, 6, "-24dBm", menu_drive_cb}, { MT_FORM | MT_SUBMENU, 255, S_RARROW" MORE", menu_drive_wide3}, { MT_FORM | MT_CANCEL, 255, S_LARROW" BACK", NULL }, { MT_FORM | MT_NONE, 0, NULL, NULL } // sentinel }; static const menuitem_t menu_drive_wide[] = { - { MT_FORM | MT_CALLBACK, 15, " 18dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 14, " 14dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 13, " 10dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 12, " 6dBm", menu_drive_cb}, - { MT_FORM | MT_CALLBACK, 11, " 3dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 15, " 11dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 14, " 8dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 13, " 5dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 12, " 2dBm", menu_drive_cb}, + { MT_FORM | MT_CALLBACK, 11, " -1dBm", menu_drive_cb}, { MT_FORM | MT_SUBMENU, 255, S_RARROW" MORE", menu_drive_wide2}, { MT_FORM | MT_CANCEL, 255, S_LARROW" BACK", NULL }, { MT_FORM | MT_NONE, 0, NULL, NULL } // sentinel