diff --git a/channels/chan_brcm.c b/channels/chan_brcm.c
index 5f2b7a7d15171f1101f6f3d857d1e3c16a45b58c..037690361c4e1e3f0877fa946e60a9c3d0a03d32 100644
--- a/channels/chan_brcm.c
+++ b/channels/chan_brcm.c
@@ -1763,13 +1763,28 @@ void handle_dtmf_calling(struct brcm_subchannel *sub)
 	}
 
 
-	else if (ast_exists_extension(NULL, p->context, p->dtmfbuf, 1, p->cid_num) && dtmfbuf_len > 2 && dtmf_last_char == termination_digit
+	else if (ast_exists_extension(NULL, p->context, p->dtmfbuf, 1, p->cid_num) && dtmf_last_char == termination_digit
                 && dtmf_one_before_last_char != 0x2A && feature_access_code_match(p->dtmfbuf) != 1) {
+                if(line_config[p->line_id].minimumnumberdigits)
+                {
+                    //Minimum dtmf limit is checked before starting a call.If limit is not reached,ignore
+                    //We have a match in the "normal" context, and user ended the dialling sequence with a # or temination digit set  in dialplan,
+                    //so have asterisk place a call immediately if sequence is not partially matching a feature access code
+                    ast_log(LOG_NOTICE, "Termination key %c pressed during dialling, extension %s found\n",termination_digit, p->dtmfbuf);
+                    if(strlen(p->dtmfbuf) >= line_config[p->line_id].minimumnumberdigits)
+                        brcm_start_calling(p, sub, p->context);
+                    else
+                        ast_log(LOG_ERROR, "Not reached the minimum digits to start a call!! \n");
+                }
+               else
+               {
+                     //No minimum limit, Start calling if we encounter a terminatingdigit
+                     //We have a match in the "normal" context, and user ended the dialling sequence with a # or temination digit set  in dialplan,
+                     //so have asterisk place a call immediately if sequence is not partially matching a feature access code
+                     ast_log(LOG_NOTICE, "No minimum digit limit set start a call right away \n");
+                     brcm_start_calling(p, sub, p->context);
+               }
 
-		//We have a match in the "normal" context, and user ended the dialling sequence with a #,
-		//so have asterisk place a call immediately if sequence is not partially matching a feature access code
-		ast_debug(9, "Termination key %c pressed during dialling, extension %s found\n",termination_digit, p->dtmfbuf);
-		brcm_start_calling(p, sub, p->context);
 	}
 	else if (ast_exists_extension(NULL, p->context, p->dtmfbuf, 1, p->cid_num) && !ast_matchmore_extension(NULL, p->context, p->dtmfbuf, 1, p->cid_num))
 	{