ICM4 - Intercom on ARM Cortex M4

bdSound icm4logoBorn from the bdSound experience in the Intercom market, the ICM4 is the perfect solution for voice-only intercom units aiming to have high speech quality with a very low final cost.

The ICM4 is a software library running on ARM Cortex M4 that improve the quality of speech communication adding specific processing like:

  • Acoustic Echo Canceller
  • Line Echo Canceller
  • Equalization, Gain, etc.

and it's wideband (16kHz) and full-duplex.

The ICM4 comes with a practical Java GUI that you can use to test and tune ICM4 directly on your application and in runtime. Different settings, one for each mechanical design, can be saved in a human-readable format and recalled from the GUI in a while.

ICM4 diffInterface 

Different Applications

Thanks to its flexibility, ICM4 can be used in different applications. In the near-end side the acoustic devices can be connected to the hosting microprocessor both using internal ADC and DAC or via an audio codec. With different connection to the communication port to the far-end side, the ICM4 can be used in different applications:

  • in two wires bus based intercom, using a hybrid: in this case, the ICM4 will include also Line Echo Canceller, in order to cancel the echo coming back from the fork;
  • in VoIP application, using the LAN port,
  • in portable handsfree set or other specific applications, using I2S digital audio devices, like codec or bluetooth modules
  • as an enhanced USB external audio card for PC or embedded applications, with the easiness of the plug-and-play, in order to add full-duplex and high quality echo cancellation, simply connecting the ICM4 application to a hosting device via usb

The minimal BOM for ICM4 implementation are: the Cortex M4 MCU, a crystal, and audio filters or audio codec. Nothing else.

ICM4 is now available also with integrated bidirectional usb audio stack, compatible with Windows, OS-X and Linux. It exploits volume control and, if requested, automatic switching between stereo (music reproduction) and mono (phone or intercom call, for example).

A usb application board, based on STM32F4 is available from bdSound: contact us for further information

Main feature and advantages

Single IC solution for an effective cost reduction. No external memory, no other ICs for processing. Only the Audio and the Line interface. You can use both the internal ADC and DAC with an external audio amplifier or a cheap external codec with the integrated audio power amplifier. That's all.

The IC is yours, not ours. You will be free to use the ARM Cortex M4 you want(*), from your preferred manufacturer, with your preferred package. We do not propose an ASIC or a selected DSP, MCU and general IC. The ICM4 is a software, not an hardware, hence you can decide where to integrate it. No more obsoloscence problem while migrating from one MCU to another is easy.

Easy. Not basic. You might think that "easy" mean "basic". The ICM4 will be able to show why this is not true, with its full duplex capability, its wideband audio (16kHz) and its great speech signal quality.

No support... since you will not need it! The ICM4 is ready to use, so easy to use, to tune and to customize, that you will not need our support. A complete Java-based graphical user interface will help you to tune and adjust some few parameters in run-time. You can save your settings (e.g. one for each mechanical design you have) in a human-readable files and recall them in a while. But, of course, if you need our support, we will be glad to help you: you can bet!

Complete support materials to start running immediately. We will provide an example C/C++ application, reference schematic, tuning helping documentation and other materials to speed-up your time to market. We can also provide our application board for demo.

The demo application board is currently based on STM32F4 Microprocessor from STMicroelectronics.


Technical Details

Max Echo Tail (@16kHz)
80ms (total sum of LEC and AEC assignable as preferred)
Max Sample Frequency
Echo Cancellers Features (both Line and Acoustic)
Full Duplex
Wideband (up to 16kHz)
Programmable gains
Programmable Double Talk Detector parameters
Programmable Voice Activity Detectors parameters
Programmable Residual Echo Canceller parameters
Programmable Non Linear Processor parameters
Resource Utilization
Echo Tail 64ms, 16kHz sample frequency: 70 MIPS (per echo cancellation channel)

Graphical User Interface Programmer snapshot




(*) Ask bdSound for minimal specification.