I guess my headset uses fast detection, also i remember when it use to work before, i have a lot of noise. I think sultan/kerneltoast fixed in his build -
https://github.com/kerneltoast/android_kernel_oneplus_msm8974/commits/ff881a9b7f7f6e041215c13866b4160c8a2da4f3/sound/soc/codecs/wcd9xxx-mbhc.c