Hi all,
I’m working on an embedded system using the Quectel EC200U-CN module controlled via an external MCU over UART (AT command interface), and I’m trying to implement IVR functionality during a voice call.
System Architecture
-
External MCU ↔ EC200U-CN (UART)
-
Control via AT commands only (no internal module application)
-
MCU handles:
-
UART parsing
-
Control logic (relay/motor)
-
Target Call Flow
-
Incoming call indication (RING / CLIP)
-
Auto-answer using ATA
-
Play audio prompt to caller
(“Press 1 for Motor ON, Press 2 for Motor OFF”) -
Detect DTMF input
-
Execute action on MCU
-
Hang up call (ATH)
Current Implementation (Working)
-
Call handling:
-
ATA (auto-answer)
-
ATH (hang-up)
-
-
DTMF detection:
AT+QTONEDET=1 -
Receiving URC:
+QTONEDET: (ASCII decoded successfully) -
MCU parses DTMF and triggers:
-
‘1’ → Motor ON
-
‘2’ → Motor OFF
-
-
Call is disconnected after action
-
Entire flow (DTMF → control → hang-up) is stable
Limitation
I am unable to play audio prompts to the caller during an active call using AT commands.
Observations:
-
No AT command found to inject audio into the voice path
-
No use of MIC/SPK analog path in current hardware
-
Voice (VoLTE) seems internally handled by the module DSP
-
No visible interface to push audio from MCU into call stream
Technical Questions
-
Is it possible to inject/play audio into an active voice call using AT commands in EC200U?
- e.g., play WAV/AMR file to remote caller
-
If not, is IVR only achievable using an internal module application (OpenCPU/QuecOpen)?
-
Handling:
-
call events
-
audio playback
-
DTMF detection
inside the module itself
-
-
-
Regarding audio path:
-
Can PCM/I2S interface be used for uplink audio injection?
-
Or is audio restricted to internal DSP routing only?
-
-
What is the recommended approach for IVR on EC200U in an external MCU + AT architecture?
- Internal module app vs external IVR server
-
If internal implementation is required:
-
What APIs are used for audio playback during a call?
-
Supported audio formats (PCM WAV / AMR?)
-
File storage mechanism (UFS?)
-
Background
A similar IVR system was previously implemented on a GSM module using internal firmware (OpenCPU), where:
-
Audio files were stored in module flash
-
Audio prompts were played during calls
-
DTMF handled internally
I am trying to achieve equivalent functionality on EC200U while currently operating in AT command mode with an external MCU.
Any guidance on architecture, limitations, or recommended approach would be greatly appreciated.
Thanks in advance.