diff --git a/app/dtmf.c b/app/dtmf.c index 78b137e..83957f8 100644 --- a/app/dtmf.c +++ b/app/dtmf.c @@ -453,6 +453,7 @@ bool DTMF_Reply(void) g_dtmf_call_state != DTMF_CALL_STATE_NONE || #endif g_current_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_APOLLO || + g_current_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_1750 || g_current_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_OFF || g_current_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_EOT) { diff --git a/app/menu.c b/app/menu.c index 21799eb..5414715 100644 --- a/app/menu.c +++ b/app/menu.c @@ -808,9 +808,10 @@ void MENU_AcceptSetting(void) case MENU_PTT_ID: g_tx_vfo->channel.dtmf_ptt_id_tx_mode = g_sub_menu_selection; - if (g_tx_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_EOT || - g_tx_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_BOTH || - g_tx_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_APOLLO) + if (g_tx_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_EOT || + g_tx_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_BOTH || + g_tx_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_APOLLO || + g_tx_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_1750) { g_eeprom.config.setting.roger_mode = ROGER_MODE_OFF; break; diff --git a/firmware.bin b/firmware.bin index a9c5576..b394193 100644 Binary files a/firmware.bin and b/firmware.bin differ diff --git a/firmware.packed.bin b/firmware.packed.bin index 9e7cacf..3edc40f 100644 Binary files a/firmware.packed.bin and b/firmware.packed.bin differ diff --git a/functions.c b/functions.c index 1447673..64ab2fd 100644 --- a/functions.c +++ b/functions.c @@ -295,6 +295,13 @@ void FUNCTION_Select(function_type_t Function) } else #endif + if (g_current_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_1750) + { + BK4819_start_tone(1750, 28, true, false); + SYSTEM_DelayMs(TONE_1750_MS); + BK4819_stop_tones(true); + } + else if (g_current_vfo->channel.dtmf_ptt_id_tx_mode == PTT_ID_APOLLO) { BK4819_start_tone(APOLLO_TONE1_HZ, 28, true, false); diff --git a/misc.h b/misc.h index 34407cd..8a2d4fd 100644 --- a/misc.h +++ b/misc.h @@ -57,6 +57,8 @@ #define APOLLO_TONE1_HZ 2525 #define APOLLO_TONE2_HZ 2475 +#define TONE_1750_MS 500 + enum { USER_CHANNEL_FIRST = 0, USER_CHANNEL_LAST = 199u, diff --git a/settings.h b/settings.h index 6b68165..bb90383 100644 --- a/settings.h +++ b/settings.h @@ -160,7 +160,8 @@ enum ptt_id_e { PTT_ID_BOT, // BEGIN OF TX PTT_ID_EOT, // END OF TX PTT_ID_BOTH, // BOTH - PTT_ID_APOLLO // Apolo quindar tones + PTT_ID_APOLLO, // Apolo quindar tones + PTT_ID_1750, // 1750Hz tone burst }; typedef enum ptt_id_e ptt_id_t; diff --git a/ui/menu.c b/ui/menu.c index daf4eb6..6cf0b23 100644 --- a/ui/menu.c +++ b/ui/menu.c @@ -312,13 +312,14 @@ const char g_sub_menu_mem_disp[4][12] = }; #endif -const char g_sub_menu_ptt_id[5][16] = +const char g_sub_menu_ptt_id[6][18] = { "DTMF ID\nOFF", "DTMF ID\nBOT", "DTMF ID\nEOT", "DTMF ID\nBOT+EOT", - "APOLLO\nQUINDAR" + "APOLLO\nQUINDAR", + "TONE BURST\n1750Hz" }; #ifdef ENABLE_MDC1200 diff --git a/ui/menu.h b/ui/menu.h index 50f52d1..13cb517 100644 --- a/ui/menu.h +++ b/ui/menu.h @@ -207,7 +207,7 @@ extern const char g_sub_menu_mem_disp[4][12]; #ifdef ENABLE_DTMF_CALLING extern const char g_sub_menu_dtmf_rsp[4][9]; #endif -extern const char g_sub_menu_ptt_id[5][16]; +extern const char g_sub_menu_ptt_id[6][18]; #ifdef ENABLE_MDC1200 extern const char g_sub_menu_mdc1200_mode[4][5]; #endif