• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[FIX] In call echo and noise from top mic pocophone

Search This thread

wizard8400

Senior Member
Sep 4, 2016
63
53
If you are in a call and the other person hears himself or noises when the top mic is touched, by hair or hat..., you can try this:
[ROOT needed]
Edit this file:
\vendor\etc\mixer_paths_overlay_static.xml

find this sections:

<!-- Dual MIC devices -->
<path name="handset-dmic-endfire">
<ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
<ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
<ctl name="CDC_IF TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="AMIC" />
<ctl name="AMIC MUX7" value="ADC3" />
<ctl name="CDC_IF TX8 MUX" value="DEC8" />
<ctl name="ADC MUX8" value="AMIC" />
<ctl name="AMIC MUX8" value="ADC1" />
<ctl name="SLIM_0_TX Channels" value="Two" />
</path>

<path name="speaker-dmic-endfire">
<ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
<ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
<ctl name="CDC_IF TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="AMIC" />
<ctl name="AMIC MUX7" value="ADC3" />
<ctl name="CDC_IF TX8 MUX" value="DEC8" />
<ctl name="ADC MUX8" value="AMIC" />
<ctl name="AMIC MUX8" value="ADC1" />
<ctl name="SLIM_0_TX Channels" value="Two" />
</path>

and add this lines, so they look like this:

<!-- Dual MIC devices -->
<path name="handset-dmic-endfire">
<ctl name="DEC8 Volume" value="0" />
<ctl name="DEC7 Volume" value="92" />

<ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
<ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
<ctl name="CDC_IF TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="AMIC" />
<ctl name="AMIC MUX7" value="ADC3" />
<ctl name="CDC_IF TX8 MUX" value="DEC8" />
<ctl name="ADC MUX8" value="AMIC" />
<ctl name="AMIC MUX8" value="ADC1" />
<ctl name="SLIM_0_TX Channels" value="Two" />
</path>

<path name="speaker-dmic-endfire">
<ctl name="DEC8 Volume" value="84" />
<ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
<ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
<ctl name="CDC_IF TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="AMIC" />
<ctl name="AMIC MUX7" value="ADC3" />
<ctl name="CDC_IF TX8 MUX" value="DEC8" />
<ctl name="ADC MUX8" value="AMIC" />
<ctl name="AMIC MUX8" value="ADC1" />
<ctl name="SLIM_0_TX Channels" value="Two" />
</path>

This will set top mic sensitivity to 0, noise cancellation will not work but you can adjust "<ctl name="DEC8 Volume" value="0" />" as needed to have a little noise cancellation, default is 84. I've set it to 0 and i find it very good, no complains about the sound quality.
Also I've set 92 as the sensitivity for the lower mic, and it helps a little. Adjust <ctl name="DEC7 Volume" value="92" /> as you wish, default is 84.

I don't know if this is the best solution, but it helped me, so I share ;)

* to make changes to this file, you need to mount vendor and system in twrp (in twrp>mount>check both)
** please report this bug using Settings > Feedback > and check "Issue" and describe the problem you are having, hopping that Poco devs will look into it.
*** I've built a magisk module to apply this fix, it makes it easier for those who flash roms frequently.
 

Attachments

  • magisk-pocof1-echofix.zip
    7.1 KB · Views: 5,224
Last edited:

ayush.gl

Senior Member
May 9, 2015
1,045
415
Heyy @wizard8400 i have one other problem, the mic doesn't work in calls on speakerphone but works well with normal. Do you know the fix for this?? I've tried both miui and other custom roms and have same issue.
 

wizard8400

Senior Member
Sep 4, 2016
63
53
@ayush.gl I don't think I can help, but for starts you can test if is a hardware problem: go to CIT (tap a few times on kernel version) and test main mic and top mic, I think you need headphones(simple ones, without mic on them) . From what I have tested it seems that on speaker it uses the top mic, in normal call it uses both mics, mainly the bottom one and the top one is for ANC.
 

Tech_Savvy

Senior Member
May 8, 2014
1,504
682
watertown
@ayush.gl I don't think I can help, but for starts you can test if is a hardware problem: go to CIT (tap a few times on kernel version) and test main mic and top mic, I think you need headphones(simple ones, without mic on them) . From what I have tested it seems that on speaker it uses the top mic, in normal call it uses both mics, mainly the bottom one and the top one is for ANC.
hi....thanks for the fix...was plagued with this issue for a while...quick question...this is safe correct? also if i still want noise cancellation instead of setting it to 0 i can set it to like 60 so it wouldn't be so sensitive? thanks
 

ayush.gl

Senior Member
May 9, 2015
1,045
415
@ayush.gl I don't think I can help, but for starts you can test if is a hardware problem: go to CIT (tap a few times on kernel version) and test main mic and top mic, I think you need headphones(simple ones, without mic on them) . From what I have tested it seems that on speaker it uses the top mic, in normal call it uses both mics, mainly the bottom one and the top one is for ANC.

I have tested the mic, it shows passed. Mic also works with recorder, cam, whatsapp calls. Only for calls on speakerphone it doesn't work. Any suggestions
 
  • Like
Reactions: anil rajput

Ziegenjupp

Senior Member
Hey guys, i'm rooted and copied the overlay file to a different location and edited it with es datei explorer, but when i try to copy it back to vendor etc it always says vendor write only and i get a error. What to do to make it writeable. Permission is granted for the datei explorer.....dunno what to do. Have this echo and its really annoying for the peoe i call

Edit: solved it by mounting vendor in recovery and copying my modified file into vendor/etc folder
 
Last edited:

Zundrium

Member
Nov 21, 2012
9
8
I'm having the same issue, even at low volume. But I can't find the file specified. Do I have another issue?
 

wizard8400

Senior Member
Sep 4, 2016
63
53
@calandula
what you don't know, how to edit the file, how to root? If one of those, then you need to search or open a topic about that operation, else will talk off topic and is not a good practice to be offtopic on a forum. ex.: I can't explain here how to root pocophone f1, there is already a topic about this.
 

wizard8400

Senior Member
Sep 4, 2016
63
53
@calandula
what you don't know, how to edit the file, how to root? If one of those, then you need to search or open a topic about that operation, else will talk off topic and is not a good practice to be offtopic on a forum. ex.: I can't explain here how to root pocophone f1, there is already a topic about this.
 

Zundrium

Member
Nov 21, 2012
9
8
@Zundrium
I don't know what ROM you have, I'm on xiaomi.eu latest beta(weekly). You have root and mounted system and vendor in twrp, right?

I used LineageOS and PixelExperience, both have the same issue, when rolling back to beryllium_global_images_V10.2.2.0.PEJMIXM I experience no issues.
I can also confirm that this isn't a firmware issue, I installed fw_beryllium_miui_POCOF1Global_V10.2.2.0.PEJMIXM in all cases.
 
Last edited:

dagstar

Member
Sep 14, 2010
16
1
I used LineageOS and PixelExperience, both have the same issue, when rolling back to beryllium_global_images_V10.2.2.0.PEJMIXM I experience no issues.
I can also confirm that this isn't a firmware issue, I installed fw_beryllium_miui_POCOF1Global_V10.2.2.0.PEJMIXM in all cases.

Have done the same tests and getting the same results. Seems to be OS related and not firmware.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 38
    If you are in a call and the other person hears himself or noises when the top mic is touched, by hair or hat..., you can try this:
    [ROOT needed]
    Edit this file:
    \vendor\etc\mixer_paths_overlay_static.xml

    find this sections:

    <!-- Dual MIC devices -->
    <path name="handset-dmic-endfire">
    <ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
    <ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
    <ctl name="CDC_IF TX7 MUX" value="DEC7" />
    <ctl name="ADC MUX7" value="AMIC" />
    <ctl name="AMIC MUX7" value="ADC3" />
    <ctl name="CDC_IF TX8 MUX" value="DEC8" />
    <ctl name="ADC MUX8" value="AMIC" />
    <ctl name="AMIC MUX8" value="ADC1" />
    <ctl name="SLIM_0_TX Channels" value="Two" />
    </path>

    <path name="speaker-dmic-endfire">
    <ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
    <ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
    <ctl name="CDC_IF TX7 MUX" value="DEC7" />
    <ctl name="ADC MUX7" value="AMIC" />
    <ctl name="AMIC MUX7" value="ADC3" />
    <ctl name="CDC_IF TX8 MUX" value="DEC8" />
    <ctl name="ADC MUX8" value="AMIC" />
    <ctl name="AMIC MUX8" value="ADC1" />
    <ctl name="SLIM_0_TX Channels" value="Two" />
    </path>

    and add this lines, so they look like this:

    <!-- Dual MIC devices -->
    <path name="handset-dmic-endfire">
    <ctl name="DEC8 Volume" value="0" />
    <ctl name="DEC7 Volume" value="92" />

    <ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
    <ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
    <ctl name="CDC_IF TX7 MUX" value="DEC7" />
    <ctl name="ADC MUX7" value="AMIC" />
    <ctl name="AMIC MUX7" value="ADC3" />
    <ctl name="CDC_IF TX8 MUX" value="DEC8" />
    <ctl name="ADC MUX8" value="AMIC" />
    <ctl name="AMIC MUX8" value="ADC1" />
    <ctl name="SLIM_0_TX Channels" value="Two" />
    </path>

    <path name="speaker-dmic-endfire">
    <ctl name="DEC8 Volume" value="84" />
    <ctl name="AIF1_CAP Mixer SLIM TX7" value="1" />
    <ctl name="AIF1_CAP Mixer SLIM TX8" value="1" />
    <ctl name="CDC_IF TX7 MUX" value="DEC7" />
    <ctl name="ADC MUX7" value="AMIC" />
    <ctl name="AMIC MUX7" value="ADC3" />
    <ctl name="CDC_IF TX8 MUX" value="DEC8" />
    <ctl name="ADC MUX8" value="AMIC" />
    <ctl name="AMIC MUX8" value="ADC1" />
    <ctl name="SLIM_0_TX Channels" value="Two" />
    </path>

    This will set top mic sensitivity to 0, noise cancellation will not work but you can adjust "<ctl name="DEC8 Volume" value="0" />" as needed to have a little noise cancellation, default is 84. I've set it to 0 and i find it very good, no complains about the sound quality.
    Also I've set 92 as the sensitivity for the lower mic, and it helps a little. Adjust <ctl name="DEC7 Volume" value="92" /> as you wish, default is 84.

    I don't know if this is the best solution, but it helped me, so I share ;)

    * to make changes to this file, you need to mount vendor and system in twrp (in twrp>mount>check both)
    ** please report this bug using Settings > Feedback > and check "Issue" and describe the problem you are having, hopping that Poco devs will look into it.
    *** I've built a magisk module to apply this fix, it makes it easier for those who flash roms frequently.
    7
    Echo FIX for Mi Mix 2s

    Hi there! I've managed to fix the echo problem in my Mi Mix 2s. I got the solution from MIUI forums

    FROM MIUI FORUMS Credits goes to Maidu Uusen
    I had call quality problems all the time and it seems, those instructions are helping me:

    1.- Edit /system/build.prop
    2.- Find these 2 lines
    ro.qc.sdk.audio.fluencetype=none
    persist.audio.fluence.voicecall=true


    replace those two line with this:

    ro.qc.sdk.audio.fluencetype=fluence
    persist.audio.fluence.mode=endfire
    persist.audio.handset.mic=digital
    persist.audio.voicecall.mic=0
    persist.audio.voice.clarity=none
    persist.audio.aanc.enable=false
    persist.audio.handset_rx_type=DEFAULT
    persist.audio.nsenabled=ON
    persist.speaker.prot.enable=false
    persist.audio.spkcall_2mic=OFF


    dont forget to save the file and change permissions to 600
    3.- Replace the build.prop with the new edited one (you can make a backup of the original one)
    4.- Reboot the phone.

    I've tried and it works, I need to click the volume just two point from the top volume and use it WITHOUT the case (My case has a little mic hole and it makes the echo more audible).

    FOR POCO USERS:

    Latest Revolution OS ROM has include a POCO FIX for echo, I can't try it since I don't have a POCO but they say in the changelog the echo problems is gone, try for yourself and share your experience.
    6
    Just wanted to confirm that this fix still works with vendor firmware 9.3.14 and NOS 06-03-19. For the people that can't make this work, this is how I got it to work:

    1. Boot in to TWRP
    2. Mount the vendor partition, copy "mixer_paths_overlay_static.xml" on to your internal storage/SD card.
    3. Edit it, either on your phone or on your computer.
    4. Paste it back in to /vendor/etc through TWRP AND set chmod to 664 (0664) in TWRP after pasting the modified file back into /vendor/etc.
    5. Reboot and enjoy

    If I didn't set the correct chmod everything sound related got messed up. Speaker phone was set as the standard preset and inverted the speaker button's functionality. I also heard an echo of myself and the earpiece sound was really messed up. After setting the chmod to the correct value, 664, everything was fine again and the echo was gone.

    I confirmed that the fix is working by making around 10 phone calls to different people, both VoLTE with HD voice and without as well as calling my phone from Skype to confirm that this wasn't just a one time off kind of thing.

    Not sure if this fix will work on other roms as well. It might work on NOS because of the other fix that has been been mentioned previously in this thread https://forum.xda-developers.com/showpost.php?p=78913799&postcount=36. I believe that fix is already applied to NOS as standard (?) and it might be the combination of the rom using the vendor specific files and then this fix that makes it work on NOS.

    EDIT: Tried it with 9.3.11 vendor as well and it's working here. The file might be sensitive to using tab vs 4 spaces, I followed my own instructions and failed to get it working the first time. The second time I made sure that the formatting was correct and then it worked as intended.
    2
    Well i have poco, i don't know anything about mi mix

    Download 8.12.13 firmware / vendor package from akhilnarang site.

    I am personally usung 09-03 caf build of PE, as its best for me, latest version is having many erros spamming in logs, and i feel app opening was slow. And 17-03 build had issue with magisk. So i am sticking for 09-03 build, if you need mirror tell.

    In 09-03 build, open with winrar in pc, and go to updater script file, open it with notepad, and remove first lines of assert checking, which checks if you are on later firmware and vendor or not..

    After removing those lines, save file

    And flash vendor firmware, and then Rom

    Mirror of 09-03 build Caf, PE : https://drive.google.com/file/d/1pxWZGvnqmABU8jetRf83gWNjUk8BsaUw/view

    Hi thanks for the info :) I'm sure that the problem is on the firmware/vendor. I'll try to flash another files...Let's see if that fix the problem.

    ---------- Post added at 11:08 AM ---------- Previous post was at 11:02 AM ----------

    Quick update. I discovered that if I have the phone on speaker during the call, the echo disappears. As soon as the phone is placed off speaker (normal usage) the echo returns. Could this clue help anyone with further diagnosis?

    You're right, I'm gonna post all the info:

    Tried to replace lower MIC part= no fix
    Tried to replace lower SPEAKER part= no fix
    Tried to put a small gummy piece in front of top MIC= no fix (the mic gets the sound from the front as well as from the side in contact with the main board).
    Tried another MIUI ROMS Stable....weekly..ROS..= no fix

    I work with sound (I'm electronic engineering) and I'm almost 100% sure that the problem is the top mic is so close to the earpiece. If I use earphones or external spekaer the echo dissapears.....

    I'll investigate which firmware/vendor files works...
    2
    @Mooatreides magisk module is systemless, you can enable / disable this fix to apply/revert the file. After flashing a new version of the ROM and magisk, this fix is applied, or not depending by the state of the module.