0
mirror of https://github.com/OneOfEleven/uv-k5-firmware-custom.git synced 2025-04-28 14:21:25 +03:00

trimmed down the FM deviation cal settings to a common value for both N/W band.

This commit is contained in:
OneOfEleven 2023-12-04 23:37:07 +00:00
parent 3368eb2725
commit 7c168e237f
10 changed files with 30 additions and 90 deletions

View File

@ -52,7 +52,7 @@ ENABLE_WIDE_RX := 1
ENABLE_TX_WHEN_AM := 0
# Frequency calibration 188 B
ENABLE_F_CAL_MENU := 0
ENABLE_FM_DEV_CAL_MENU := 1
ENABLE_FM_DEV_CAL_MENU := 0
ENABLE_TX_UNLOCK_MENU := 0
#ENABLE_TX_POWER_CAL_MENU := 0
ENABLE_TX_POWER_FIX := 1
@ -86,7 +86,7 @@ ENABLE_SIDE_BUTT_MENU := 0
# Key Lock 400 B
ENABLE_KEYLOCK := 0
# panadapter 1.5kB
ENABLE_PANADAPTER := 0
ENABLE_PANADAPTER := 1
ENABLE_PANADAPTER_PEAK_FREQ := 0
# single VFO 1.5kB
ENABLE_SINGLE_VFO_CHAN := 1

View File

@ -372,14 +372,9 @@ int MENU_GetLimits(uint8_t Cursor, int32_t *pMin, int32_t *pMax)
#endif
#ifdef ENABLE_FM_DEV_CAL_MENU
case MENU_TX_FM_DEV_CAL_N:
*pMin = FM_DEV_LIMIT_LOWER_NARROW;
*pMax = FM_DEV_LIMIT_UPPER_NARROW;
break;
case MENU_TX_FM_DEV_CAL_W:
*pMin = FM_DEV_LIMIT_LOWER_WIDE;
*pMax = FM_DEV_LIMIT_UPPER_WIDE;
case MENU_TX_FM_DEV_CAL:
*pMin = FM_DEV_LIMIT_LOWER;
*pMax = FM_DEV_LIMIT_UPPER;
break;
#endif
@ -919,19 +914,10 @@ void MENU_AcceptSetting(void)
#endif
#ifdef ENABLE_FM_DEV_CAL_MENU
case MENU_TX_FM_DEV_CAL_N:
g_eeprom.calib.deviation_narrow = g_sub_menu_selection;
case MENU_TX_FM_DEV_CAL:
g_eeprom.calib.deviation = g_sub_menu_selection;
{
uint16_t index = (uint16_t)(((uint8_t *)&g_eeprom.calib.deviation_narrow) - ((uint8_t *)&g_eeprom));
index &= ~7u;
EEPROM_WriteBuffer8(index, ((uint8_t *)&g_eeprom) + index);
}
break;
case MENU_TX_FM_DEV_CAL_W:
g_eeprom.calib.deviation_wide = g_sub_menu_selection;
{
uint16_t index = (uint16_t)(((uint8_t *)&g_eeprom.calib.deviation_wide) - ((uint8_t *)&g_eeprom));
uint16_t index = (uint16_t)(((uint8_t *)&g_eeprom.calib.deviation) - ((uint8_t *)&g_eeprom));
index &= ~7u;
EEPROM_WriteBuffer8(index, ((uint8_t *)&g_eeprom) + index);
}
@ -1416,12 +1402,8 @@ void MENU_ShowCurrentSetting(void)
#endif
#ifdef ENABLE_FM_DEV_CAL_MENU
case MENU_TX_FM_DEV_CAL_N:
g_sub_menu_selection = g_eeprom.calib.deviation_narrow;
break;
case MENU_TX_FM_DEV_CAL_W:
g_sub_menu_selection = g_eeprom.calib.deviation_wide;
case MENU_TX_FM_DEV_CAL:
g_sub_menu_selection = g_eeprom.calib.deviation;
break;
#endif
@ -1573,7 +1555,7 @@ static void MENU_Key_0_to_9(key_code_t Key, bool key_pressed, bool key_held)
}
#ifdef ENABLE_FM_DEV_CAL_MENU
if (g_menu_cursor == MENU_BAT_CAL || g_menu_cursor == MENU_TX_FM_DEV_CAL_N || g_menu_cursor == MENU_TX_FM_DEV_CAL_W)
if (g_menu_cursor == MENU_BAT_CAL || g_menu_cursor == MENU_TX_FM_DEV_CAL)
#else
if (g_menu_cursor == MENU_BAT_CAL)
#endif
@ -1582,7 +1564,7 @@ static void MENU_Key_0_to_9(key_code_t Key, bool key_pressed, bool key_held)
#ifdef ENABLE_FM_DEV_CAL_MENU
if (g_current_function == FUNCTION_TRANSMIT)
if (g_menu_cursor == MENU_TX_FM_DEV_CAL_N || g_menu_cursor == MENU_TX_FM_DEV_CAL_W)
if (g_menu_cursor == MENU_TX_FM_DEV_CAL)
BK4819_set_TX_deviation(g_sub_menu_selection);
#endif

Binary file not shown.

Binary file not shown.

View File

@ -298,9 +298,9 @@ void FUNCTION_Select(function_type_t Function)
// 1of11 .. TEST ONLY
// if (g_current_vfo->p_tx->code_type == CODE_TYPE_NONE)
{
// const uint16_t reg = BK4819_read_reg(0x2B);
const uint16_t reg = BK4819_read_reg(0x2B);
// #if 0
// BK4819_write_reg(0x2B, reg | (1u << 1)); // disable TX LPF
BK4819_write_reg(0x2B, reg | (1u << 1)); // disable TX LPF
// BK4819_write_reg(0x2B, reg | (1u << 2)); // disable TX HPF
// BK4819_write_reg(0x2B, reg | (1u << 2) | (1u << 1)); // disable TX LPF & HPF
// #else

40
radio.c
View File

@ -721,42 +721,10 @@ BK4819_filter_bandwidth_t RADIO_set_bandwidth(BK4819_filter_bandwidth_t bandwidt
break;
}
#ifdef ENABLE_FM_DEV_CAL_MENU
switch (bandwidth)
{
case BK4819_FILTER_BW_WIDE:
if (g_eeprom.calib.deviation_wide < FM_DEV_LIMIT_LOWER_WIDE || g_eeprom.calib.deviation_wide > FM_DEV_LIMIT_UPPER_WIDE)
deviation = FM_DEV_LIMIT_DEFAULT_WIDE;
else
deviation = g_eeprom.calib.deviation_wide;
break;
case BK4819_FILTER_BW_NARROW:
if (g_eeprom.calib.deviation_narrow < FM_DEV_LIMIT_LOWER_NARROW || g_eeprom.calib.deviation_narrow > FM_DEV_LIMIT_UPPER_NARROW)
deviation = FM_DEV_LIMIT_DEFAULT_NARROW;
else
deviation = g_eeprom.calib.deviation_narrow;
break;
case BK4819_FILTER_BW_NARROWER:
if (g_eeprom.calib.deviation_narrow < FM_DEV_LIMIT_LOWER_NARROW || g_eeprom.calib.deviation_narrow > FM_DEV_LIMIT_UPPER_NARROW)
deviation = FM_DEV_LIMIT_DEFAULT_NARROW;
else
deviation = g_eeprom.calib.deviation_narrow;
break;
}
#else
switch (bandwidth)
{
case BK4819_FILTER_BW_WIDE:
deviation = g_eeprom.calib.deviation_wide;
break;
case BK4819_FILTER_BW_NARROW:
deviation = g_eeprom.calib.deviation_narrow;
break;
case BK4819_FILTER_BW_NARROWER:
deviation = g_eeprom.calib.deviation_narrow;
break;
}
#endif
if (g_eeprom.calib.deviation < FM_DEV_LIMIT_LOWER || g_eeprom.calib.deviation > FM_DEV_LIMIT_UPPER)
deviation = FM_DEV_LIMIT_DEFAULT;
else
deviation = g_eeprom.calib.deviation;
BK4819_set_TX_deviation(deviation);
BK4819_SetFilterBandwidth(bandwidth);

View File

@ -397,10 +397,8 @@ void SETTINGS_read_eeprom(void)
// memset(&g_eeprom.calib.unused3, 0xff, sizeof(g_eeprom.calib.unused3));
// #ifdef ENABLE_FM_DEV_CAL_MENU
if (g_eeprom.calib.deviation_narrow < FM_DEV_LIMIT_LOWER_NARROW || g_eeprom.calib.deviation_narrow > FM_DEV_LIMIT_UPPER_NARROW)
g_eeprom.calib.deviation_narrow = FM_DEV_LIMIT_DEFAULT_NARROW;
if (g_eeprom.calib.deviation_wide < FM_DEV_LIMIT_LOWER_WIDE || g_eeprom.calib.deviation_wide > FM_DEV_LIMIT_UPPER_WIDE)
g_eeprom.calib.deviation_wide = FM_DEV_LIMIT_DEFAULT_WIDE;
if (g_eeprom.calib.deviation < FM_DEV_LIMIT_LOWER || g_eeprom.calib.deviation > FM_DEV_LIMIT_UPPER)
g_eeprom.calib.deviation = FM_DEV_LIMIT_DEFAULT;
// #endif
if (g_eeprom.calib.battery[0] >= 5000)

View File

@ -25,13 +25,9 @@
#include "frequencies.h"
enum {
FM_DEV_LIMIT_LOWER_NARROW = 1000,
FM_DEV_LIMIT_DEFAULT_NARROW = 1350,
FM_DEV_LIMIT_UPPER_NARROW = 1600,
FM_DEV_LIMIT_LOWER_WIDE = 1000,
FM_DEV_LIMIT_DEFAULT_WIDE = 1350,
FM_DEV_LIMIT_UPPER_WIDE = 1600
FM_DEV_LIMIT_LOWER = 1000,
FM_DEV_LIMIT_DEFAULT = 1350,
FM_DEV_LIMIT_UPPER = 1600
};
enum mod_mode_e {
@ -535,11 +531,11 @@ typedef struct {
uint16_t vox_threshold_disable[10]; //
// #ifdef ENABLE_FM_DEV_CAL_MENU
// 1of11
uint16_t deviation_narrow; //
uint16_t deviation_wide; //
uint16_t deviation; //
uint8_t unused1a[2]; // 0xff's
// #else
// // QS
// uint8_t unused[4]; // 0xff's
// uint8_t unused1a[4]; // 0xff's
// #endif
// 0x1F80

View File

@ -162,8 +162,7 @@ const t_menu_item g_menu_list[] =
#endif
#ifdef ENABLE_FM_DEV_CAL_MENU
{"FN CAL", VOICE_ID_INVALID, MENU_TX_FM_DEV_CAL_N, }, // narrow FM deviation calibration
{"FW CAL", VOICE_ID_INVALID, MENU_TX_FM_DEV_CAL_W, }, // wide FM deviation calibration
{"FN CAL", VOICE_ID_INVALID, MENU_TX_FM_DEV_CAL, }, // FM deviation calibration
#endif
#ifdef ENABLE_F_CAL_MENU
@ -1239,10 +1238,8 @@ void UI_DisplayMenu(void)
#endif
#ifdef ENABLE_FM_DEV_CAL_MENU
case MENU_TX_FM_DEV_CAL_N: // narrow FM deviation calibration
case MENU_TX_FM_DEV_CAL_W: // wide FM deviation calibration
strcpy(str, "FM DEV ");
strcat(str, (g_menu_cursor == MENU_TX_FM_DEV_CAL_N) ? "N\n" : "W\n");
case MENU_TX_FM_DEV_CAL:
strcpy(str, "FM DEV\n");
sprintf(str + strlen(str), g_in_sub_menu ? "> %04d" : "%d", g_sub_menu_selection);
if (g_current_function == FUNCTION_TRANSMIT)
BK4819_set_TX_deviation(g_sub_menu_selection);

View File

@ -154,8 +154,7 @@ enum
#endif
#ifdef ENABLE_FM_DEV_CAL_MENU
MENU_TX_FM_DEV_CAL_N, // narrow FM deviation calibration
MENU_TX_FM_DEV_CAL_W, // wide FM deviation calibration
MENU_TX_FM_DEV_CAL, // FM deviation calibration
#endif
#ifdef ENABLE_F_CAL_MENU