diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index 1dbf6df1c33e169a7e86221c8ece49c87cb14b02..babaeb7f2816da426f60a3934ce3e4b4b447573f 100644
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -3665,6 +3665,13 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
 	}
 
 	switch(res) {
+#ifdef ZT_EVENT_EC_DISABLED
+		case ZT_EVENT_EC_DISABLED:
+			if (option_verbose > 2) 
+				ast_verbose(VERBOSE_PREFIX_3 "Channel %d echo canceler disabled due to CED detection\n", p->channel);
+			p->echocanon = 0;
+			break;
+#endif
 		case ZT_EVENT_BITSCHANGED:
 			if (p->sig == SIG_R2) {
 #ifdef ZAPATA_R2