after in the summer of 2017 I disasseble the MTCB/C MCU firmware, I decided to try to improve the sound of these head units and bought a DSP test card based on the low-cost ADAU1401/1701 chip and started experiments with it to solve all the flaws in the sound settings of the Chinese head units.
In February 2018, Chinese vendors began the first sales of MTCE head units with internal DSP modules installed based on the ADAU1701 chip. A detailed analysis showed that the new hardware version of the head unit does not differ much from the previous one based on the sound processor BD3702, so I can try adding this module to me myself, because the Chinese refused to separately sell the DSP module for me.
[fig.1] photo of the main board of the new MTCE head unit with built-in DSP module
[fig.2] photo of the main board of a typical MTCD/E head unit with a sound processor
[fig.3] screenshot of the fake 9-band EQ of a typical MTCD/E head unit with a sound processor
[fig.4] electrical circuit schematic of the sound processor of a typical MTCD/E head unit
[fig.5] electrical circuit schematic of the sound switch of a typical MTCD/E head unit
[fig.6] photo of the PX3(1GB) CPU coreboard of a typical MTCD/E head unit
[fig.7] photo of the PX3/PX5 CPU coreboard of a typical MTCD/E head unit
[fig.8] sigmaDSP ADAU1701 LQFP48 pinout
[fig.9] sigmaDSP ADAU1401/1701 test board
[fig.10] electrical circuit schematic of the ADAU1701 test board
[fig.11] chinese built-in DSP ADAU1701 sub board
As a result of comparing the MCU firmwares of the head units with the sound processor and with the integrated DSP module, we see that the same firmware is used.
When analyzing the behavior of the MCU firmware, it is found that after the start, it first polls the I2C bus on the sound processor chip and if it answers its own address, the head unit operates normally. If there is no sound processor, i.e. it does not respond to its own address, then the DSP chip is polled. If the DSP chip responds to its own address, then the head unit is already operating in the mode of improved sound with a real 15-band equalizer.
The sound processor chip BD37033 is powered by a 9-volt voltage source, and the AMS1117-3.3 stabilizer is used on the sigmaDSP test board, which allows operation from a voltage of up to 15 volts, so connect the DSP test board to the voltage of the sound processor chip on the main board. Disconnect from the I2C-bus of the MCU chip of the sound processor BD37033 and instead connect to the DSP chip ADAU1401/1701.
A real check showed that the software support of the DSP is in the MCU firmware from version 2.72 and higher and in Android builds versions 6.0.1, 7.1.2 and 8.0 and this mod is compatible with most MTCD/E head units
[fig.12] screenshot of the real 15-band EQ of a modified MTCD/E head unit with a DSP inside
Since there is no electrical circuit schematic of the Chinese DSP module, then compare visually the board of the Chinese embedded DSP module with the DSP test board. The test board uses a onboard 12.288MHz crystal oscillator for clocking, and there is no resonator on the Chinese board and uses an 11.296MHz external clock from the CPU coreboard (I2S bit clock frequency for the sampling rate frequency of 44.1kHz).
Unsolder the crystal oscillator from the DSP test board, find the output of the clock signal on the CPU coreboard and provide a master clock signal to the 32-pin chip of the DSP chip ADAU1401/1701.
I and most my friends in the car listen only digital sounds from Android and analog sound from the FM radio tuner, so in the simplest version of the upgrade can do without using an analog audio switch that will simplify the finalization of the head unit.
On the new PX3/PX5 coreboards there are an additional 4 pins on which the I2S digital audio signals are output. These signals are connected to the DSP test board (the MCLKI signal of the external clock was already connected a little earlier).
[fig.13] digital I2S sound output from CPU coreboard
On the older PX3(1GB) coreboars not are an additional pins for external output, but the I2S digital audio output can be founded on the onboard Wolfson audio codec chip pins. However, I have not connected such a coreboard yet and I do not know about real software compatibility with the Android build of version 5.1.1, but I suppose that this should be possible without much additional effort, but need to try...
[fig.14] digital I2S sound output from CPU to Wolfson audiocodec on coreboard
Digital signals from Android sources must be connected to ADAU1401/1701 as follows:
-- Master CLOCK to 32 pin (MCLK) throu 100 Ohm resistor;
-- SDATA to 11 pin (MP0);
-- BLCK to 9 pin (MP5);
-- LRCLK to 8 pin (MP4)
The DSP chip has two built-in ADCs, so the analogue sound from the FM radio tuner can be connected to the sound processor pins as follows:
-- FM-R (pin 10) to 2 pin (ADC0);
-- FM-L (pin 11) to 4 pin (ADC1)
The DSP chip has four built-in DACs, so analog audio output can be connected for the power amplifier input to the sound processor pins as follows:
-- FR (pin 23) to 46 pin (DAC3);
-- FL (pin 22) to 45 pin (DAC2);
-- RR (pin 21) to 44 pin (DAC1);
-- RL (pin 20) to 43 pin (DAC0)
If do not need an additional output for an external subwoofer, then this is enough to enjoy improved sound due to the presence of a full 15-band equalizer, the ability to set delays, etc. (see screenshots at the end of this post), else if need to connect the external subwoofer, need to add the I2S DAC chip ES7144LV and connect it as follows:
-- Master CLOCK to pin 4 (CLKIN);
-- SDATA (MP6 pin 15) to pin 1;
-- SCLK (MP11 pin 19) to pin 2;
-- LRCLK (MP10 pin 16) to pin 3
[fig.15] electrical cuircuit schematic of the I2S DAC
[fig.16] wire connections
Verification showed that the improved sound is excellent