Related
Introduction
Hello everyone! You might/might not know that OxygenOS (and ROMs based on it) have an in-built/native call recording feature. However, it is not enabled for everyone as it is region-locked and it might/might not be illegal to record calls where you are, with/without notifying the other party that the call is being recorded.
This thread has been created with the intent of enabling this call recording feature on OxygenOS (and ROMs based on it). There are several ways to achieve this, which have been listed below. You can use any method, as per your preference, and it should work. Let's get straight to it then!
Ways to Enable
Non-Root Method(s)
ADB command via a computer
Root Method(s) (in order of recommendation)
Magisk module
Flashable zip
Tasker profile
App which runs on boot
Detailed Information and Usage
Non-Root Method(s)
Spoiler: ADB command via a computer
Requirements: A working ADB interface on a computer, USB debugging enabled on the device
Usage: Run the following command to enable native call recording:
Code:
adb shell settings put global op_voice_recording_supported_by_mcc 1
Reboot Survival: No
Root Method(s) (in order of recommendation)
Spoiler: Magisk module
Requirements: Magisk
Usage: Download and copy the EnableOOSNativeCallRecording-Magisk v9.1.zip to your device. Once done, install it in Magisk Manager as a module.
Reboot Survival: Yes
Spoiler: Flashable zip
Requirements: TWRP
Usage: Download and copy the EnableOOSNativeCallRecording-Flashable v8.0.zip to your device. Once done, reboot to recovery (TWRP) and just flash the zip.
Reboot Survival: Yes
Note: This method should work for rootless users too, but it needs TWRP and hence an unlocked bootloader.
Spoiler: Tasker profile
Requirements: A rooted device, Tasker
Usage: Download and copy the EnableOOSNativeCallRecordingv2.prf.xml to your device. Once done, import it in Tasker as a profile.
Reboot Survival: Yes
Spoiler: App which runs on boot
Requirements: A rooted device
Usage: Download and install the EnableOOSNativeCallRecording v2.0.apk and run it. At the first launch, grant root access to the app.
Reboot Survival: Yes
Downloads
Google Drive Folder (Primary)
AndroidFileHost Folder (Mirror)
Compatibility
Device(s)
All OnePlus Devices
ROM(s)
OxygenOS
Important Read-Me Points
[Magisk module only] The module installation has been designed to use the existing TeleService.apk from your device and modify it. Hence, if you update your ROM, there is a chance that the original apk that was modified is updated with the ROM update, which might lead to bootloops/other issues after installing the update, with this module installed. To avoid this from happening, always update your ROM by following these steps: Uninstall the existing module -> Reboot -> Download and apply the system update -> Reboot -> Download and install the latest module -> Reboot your phone again once the installation is complete.
[App method only] After your device fully boots up, a notification message will appear in the status bar/pull down notification panel to let you know that call recording has been enabled (which will go after 10 seconds if you don't swipe it away).
[App method only] There is also a "Read Me" link in the notification message if you want to read a short information regarding the app.
[All methods] Please make sure that you wait for at least 30 seconds after boot before checking if the call recording menu option is visible for you under the stock dialer's settings.
[All methods] All your recordings will be stored either at /storage/emulated/0/Record/PhoneRecord OR /storage/emulated/0/Android/data/com.oneplus.communication.data/files/Record in the aac format.
[All methods] The mod works only works when using the stock OxygenOS dialer, and it will not enable call recording in any other app, like Google Dialer, etc.
[All methods] If something that is supposed to run on boot is not executing on boot, you need to turn off advanced optimisation: Settings -> Battery -> Battery optimisation -> Three dot menu (⋮) -> Advanced optimisation -> Turn off.
[All methods] The mod enables native call recording option, but may not turn on auto-recording of the calls. If you wish to do that, after using one of the methods listed above, open the Stock Dialer App -> Three dot menu (⋮) -> Settings -> Auto-record calls -> Turn on.
[All methods] If you have hidden root from the stock dialer app via Magisk Hide, the call recording option might disappear after sometime. Make sure that the stock dialer is not checked in the Magisk Hide selection list.
Disclaimers
I am not the developer of the Enable OOS Native Call Recording app. I merely stumbled upon it in OnePlus 3T's Themes, Apps and Mods forum and I take no credit for it. Please direct all your thanks and/or donations towards @padlad, the original developer of the app. Link to the original thread is here.
I am not the developer of the flashable zip. The zip was posted later in this thread and I take no credit for it. Please direct all your thanks and/or donations towards @Zackptg5, the original developer of the flashable zip.
I am not the developer of the Tasker profile. The profile was posted later in this thread and I take no credit for it. Please direct all your thanks and/or donations towards @strongst, the original creator of the Tasker profile (original idea by @Fif_).
You are doing this at your own risk. I am not responsible for bricked devices, dead SD cards, thermonuclear war, or you getting fired because the alarm app failed. Please do some research if you are unsure of how to go about something.
It might be illegal in your country to record calls with/without notifying the other party that the call is being recorded. Either ways, you are responsible for using this mod.
Thanks To
@padlad, for creating the Enable Call Recording app and the Tasker profile
@Zackptg5, for creating the flashable zip
@strongst, for creating the Tasker profile and for being super helpful to everyone
@My Name is ShaoXIa, for doing excellent research work and making great recommendations for improving the stability and effectiveness of the Magisk module
@Taknok, for improving race condition handling at boot
@topjohnwu, for Magisk and all the work he's ever done for the community
@osm0sis, for the AnyKernel3 template and all the work he's ever done for the community
@joaomgcd, for Tasker
@Tomek Kondrat, for the mention in this XDA article
All of you guys for viewing this thread
Changelog
Spoiler: Enable OOS Native Call Recording Apk
v1.0 - Initial release
v2.0 - Enable run-on-boot
Spoiler: EnableOOSNativeCallRecording-Magisk Zip
v1.0 - Initial release for Magisk v13.1, v13.2, v13.3
v2.0 - Update for Magisk v14.0
v3.0 - Update for Magisk v15.0
v3.1 - Reduced the script execution delay from 2 minutes post boot to 10 seconds post boot
v3.2 - Slightly increased the script execution delay from 10 seconds post boot to 30 seconds post boot
v4.0 - Update for Magisk v16.0
v5.0 - Update for Magisk v17.0
v5.1 - Made the script execute the command 5 times at an interval of 30 seconds after boot
v5.2 - Made the script execute the command every minute infinitely post the initial run
v5.3 - Adjusted the script to make the infinite loop run asynchronously
v5.4 - Reverted changes made in v5.2 and v5.3 as most of the users preferred and had no issues with v5.1
v6.0 - Fixed call recording automatically getting disabled after a while
v6.1 - Reverted the last change which caused SIM settings force closes
v7.0 - Permanently fixed call recording automatically getting disabled after a while and fixed the SIM settings force close issue that was caused by the release of v6.0
v8.0 - Update for Magisk v19.0
v9.0 - Updated template and added manufacturer check
v9.1 - Base template update and manufacturer check bug fix
v9.2 - Improve race condition handling at boot and fixed installation failures with Magisk Canary
Spoiler: EnableOOSNativeCallRecording-Flashable Zip
v1.0 - Initial release
v2.0 - Updated to remove the separate init file and run the command from existing the init.rc file
v3.0 - Updated to include device codenames in addition to the official device names
v4.0 - Synced with the latest AnyKernel template and new BusyBox
v5.0 - Synced with the latest AnyKernel template and changed backup/restore method
v6.0 - Completely re-wrote flashable zip; now works for rootless users too who have an unlocked bootloader and TWRP installed
v7.0 - Added a slight delay in command execution to support Treble OOS; shifted the script to /system/etc/init
v8.0 - Permanently fixed call recording automatically getting disabled after a while
Spoiler: EnableOOSNativeCallRecording Prf Xml
v1.0 - Initial release
v2.0 - Updated parameters for stability and effectiveness
OP Update Information
Created: July 10, 2017
Last Updated: January 17, 2021
Tried it on my OOS 4.5.5 stock. Works flawlessly!
Simple word: COOL!
Sent from my OnePlus5 using XDA Labs
Works great for me. I've been played by these customer service representativeslately. No more. I'm recording all their bs so I can play it right back to them when they try to act like "Who said that?". Thank you! ?
Sent from my OnePlus 5 using XDA Labs
Thanks
You know you're supposed to tell the other party that the call is being recorded? That's why every support line you ever call will warn you that "Calls may be recorded". It's a legal requirement.
djsubterrain said:
You know you're supposed to tell the other party that the call is being recorded? That's why every support line you ever call will warn you that "Calls may be recorded". It's a legal requirement.
Click to expand...
Click to collapse
It's probably true in UK that you need to warn if the phone call is recorded. In some other countries it might be completely illegal to record phone calls. But at least in Finland you may record every phone call if you are a participant in that conversation without warnings or notifications.
Working on FreedomOS - thanks!
Awesome! Can we perhaps enable this using adb shell commands when not rooted somehow?
Thanks, I had to disable battery optimization for the app option 1 in order to be runned at boot.
Sent from my OnePlus 5 using XDA Labs
Flint2 said:
Thanks, I had to disable battery optimization for the app option 1 in order to be runned at boot.
Click to expand...
Click to collapse
Instead of doing that, go to Settings -> Battery -> Battery optimisation -> Three dot menu (⋮) -> Advanced optimisation -> Turn off. That should help. Try it after adding the app back to the battery optimized list.
djsubterrain said:
You know you're supposed to tell the other party that the call is being recorded? That's why every support line you ever call will warn you that "Calls may be recorded". It's a legal requirement.
Click to expand...
Click to collapse
In New York only one party had to be aware.
What is the battery consumption like?
Increases or not?
Marucins said:
What is the battery consumption like?
Increases or not?
Click to expand...
Click to collapse
I don't think it should impact the battery consumption at all. The app doesn't run in the background, and the only thing it does (on boot/when run manually) is change a toggle in secure settings. Everything else is baked into OOS. Also, I personally haven't observed any increase in battery consumption at all after using the app than the standard consumption.
Why did the command disappear after restart?
"settings put global op_voice_recording_supported_by_mcc 1"
Where to add it to be permanent? -> build.prop ??
//edit
I created a script that runs 3C Toolbox on system startup.
not working on my oos 4.5.5
Tried installing the app. It didnt ask for any root approval or didnt boot up. It didnt wok for me at all. Any suggestions ??
rgds
Lal
shadowstep said:
Disclaimer: I am not the developer of this app. I merely stumbled upon it in OnePlus 3T's Themes, Apps and Mods forum, and decided to give it a shot on my OnePlus 5. It worked like a charm, so I decided to post here for everyone's benefit. I take no credit for this work. Please direct all your thanks and/or donations towards @padlad, the original developer of this app. Link to the original thread is here.
Hi all!
Want to utilize OOS's native call recording feature without any hassles? Look no further! The app works with OOS 4.5.x flawlessly, with the OnePlus 5. There are two variants of the app, one that runs on boot (which will automatically enable the native call recording feature at every boot) and the second one that doesn't run on boot, and hence the feature will be disabled after every reboot and you will have to manually enable it (by clicking on the app icon) after the reboot.
For those curious, all that this app does is execute a root command line which enables the native call recording feature present in OOS's stock dialer. The command line is -
Code:
su
settings put global op_voice_recording_supported_by_mcc 1
Please note that this app requires root, so it will request for the root permission at it's first run. After your device fully boots up, a notification message will appear in the status bar/pull down notification panel to let you know that call recording has been enabled (which will go after 10 seconds if you don't swipe it away). There is also a "Read Me" link in the notification message if you want to read a short information regarding the app.
All your recordings will be stored at /storage/emulated/0/Record/PhoneRecord in the aac format.
Download Links:
Click here to download variant 1 (Auto-enabled at boot, call recording will be turned on automatically at every boot)
Click here to download variant 2 (Not enabled at boot, call recording will not be turned on automatically at every boot)
Have fun!
Click to expand...
Click to collapse
"adb shell settings put global op_voice_recording_supported_by_mcc 1" seems to work for non-root too, however, might not survive restart. Lets see if I can fix that.
Marucins said:
Why did the command disappear after restart?
"settings put global op_voice_recording_supported_by_mcc 1"
Where to add it to be permanent? -> build.prop ??
//edit
I created a script that runs 3C Toolbox on system startup.
Click to expand...
Click to collapse
If you run the command manually via a terminal, it would work for the current session but as soon as you restart the phone, it would get reset to it's default value for OOS, i.e. 0. It's a hidden, secure setting and different from the stuff build.prop contains. If you want to use build.prop to enable call recording on boot, find the value below in build.prop & change it:
Code:
persist.sys.oem.region=OverSeas
[I]TO[/I]
persist.sys.oem.region=CN
This will change your phone's OEM region to China, where call recording is enabled by default by OnePlus and therefore call recording will be enabled for you too. Also, it will survive a reboot, since it's a build.prop change.
maneklal said:
Tried installing the app. It didnt ask for any root approval or didnt boot up. It didnt wok for me at all. Any suggestions ??
rgds
Lal
Click to expand...
Click to collapse
Which variant did you try? The one that auto-starts at every boot or the normal one? Also, what root system are you using - Magisk or SuperSU? All the people I know who've tried this have reported success, so I'm sure something is up at your end only.
asc366 said:
"adb shell settings put global op_voice_recording_supported_by_mcc 1" seems to work for non-root too, however, might not survive restart. Lets see if I can fix that.
Click to expand...
Click to collapse
Yeah? Interesting. My guess is that if you run the command via ADB, it doesn't need root and will work on unrooted OOS, but won't survive a reboot. However, if you run the command via a terminal emulator on the phone itself (the commands that I've mentioned in the first post), then you will need root or else the setting won't be changed. I hope this answers your question!
shadowstep said:
Yep, read my first response above. You don't need root to enable call recording, it can be done via the adb command, but it won't survive a reboot. This is where the app helps!
Click to expand...
Click to collapse
So let me get this straight; I can do the adb shell command while unrooted and running this with a terminal emulator, I need "su" (thus, root) ?
asc366 said:
So let me get this straight; I can do the adb shell command while unrooted and running this with a terminal emulator, I need "su" (thus, root) ?
Click to expand...
Click to collapse
Yes, I edited my reply in my last post for clarity. Apologies for the confusion. Don't have root? Run the command via an adb shell from a computer/laptop. Have root? Run the command via a terminal emulator on the phone itself.
I have been using this file to overclock(2.3GHz) my zuk in every rom without any problems. But with latest ViperOS I am facing a lag in fingerprint scanning.
Can anyone help me with understanding how this file (init.qcom.post_boot.sh) works?
And is it possible to overclock to 2.4GHz as I have read everyline of this file but there is nowhere the maximum clock is mentioned.
Thanks In advance.
Kuch_Bhi said:
I have been using this file to overclock(2.3GHz) my zuk in every rom without any problems. But with latest ViperOS I am facing a lag in fingerprint scanning.
Can anyone help me with understanding how this file (init.qcom.post_boot.sh) works?
And is it possible to overclock to 2.4GHz as I have read everyline of this file but there is nowhere the maximum clock is mentioned.
Thanks In advance.
Click to expand...
Click to collapse
that is because the purpose of the file is to enable the "overfreq" feature present in the original ZUI rom, which is through this command
"echo 1 > /sys/module/msm_performance/parameters/overfreq"
now because it's a set feature, and zuk had 1.7ghz & 2.3ghz already in the kernel, that we are able to "overclock" the phone. other cpu frequencies need to be manually added via the kernel sources.
as for how the file works, I think it just execute a bunch of command at boot. It might cause conflict with the one currently using by viper, so instead of replacing the whole file, you can simply insert the required command so that it would looks like this
Code:
# input boost configuration
echo "0:1324800 2:1324800" > /sys/module/cpu_boost/parameters/input_boost_freq
echo 40 > /sys/module/cpu_boost/parameters/input_boost_ms
echo "0:4294967295 1:4294967295 2:4294967295 3:4294967295" > /sys/module/msm_performance/parameters/cpu_max_freq;chmod 444 /sys/module/msm_performance/parameters/cpu_max_freq
echo 1 > /sys/module/msm_performance/parameters/overfreq
echo 1 > /sys/devices/system/cpu/cpu0/rq-stats/mpctl
Im not sure if it works, but you can give it a try, just backup before editing
ViperOS has no such file, I simply copied the modified one without replacing anything. As for the code you suggested it is not working, that is if I replace everything in the file with this code alone.
Kuch_Bhi said:
ViperOS has no such file, I simply copied the modified one without replacing anything. As for the code you suggested it is not working, that is if I replace everything in the file with this code alone.
Click to expand...
Click to collapse
Then it doesnt work with viper's kernel. That file only works on roms that dont heavily modified the kernel source from zui stock. Some dev even outright remove overclock like in EAS AEX 4.6
pipyakas said:
Then it doesnt work with viper's kernel. That file only works on roms that dont heavily modified the kernel source from zui stock. Some dev even outright remove overclock like in EAS AEX 4.6
Click to expand...
Click to collapse
Ok. Thanks for helping.
Hello
I wanted to have surround mod in my old I9500 and i didnt find anything so i decided to made my own.
I am sharing here because other people may want to have this too, i dont know, but here it is.
This mod will enable the earpiece for media sound, for example games, music, video, etc.
So the sound will be enabled both in earpiece and speaker.
Does not affect calling or headset sound.
Also i have modified the volume levels, now the maximun is higher tan ever.
THIS IS ONLY FOR:
- SAMSUNG I9500
- ROOTED PHONE
- AOSP ROM 7.1 (NOUGAT)
I am not responsible for any damage if you try on other roms or other model of S4. Maybe is working in I9505 too but i dont know because i dont have it.
I only tested in my I9500 with XenonHD Nougat. I Dont test in RR but i think is the same.
INSTALL:
1 - Download attached file: mixer_paths_0.xml
2 - Use Root Browser and go to: system/etc
3 - Find the file mixer_paths_0.xml and rename (in case of you need a backup of the original file)
4 - Place the new file with the mod, downloaded from here
5 - Reboot the phone, test and enjoy
I hope this will help, test it and comment
Credits: Nylonnohay
Release date: 19-10-2018
Last updated: 19-10-2018
Very good louder sound amazing
Sent from my SM-N920C using Tapatalk
Nylonnohay said:
Hello
I wanted to have surround mod in my old I9500 and i didnt find anything so i decided to made my own.
I am sharing here because other people may want to have this too, i dont know, but here it is.
This mod will enable the earpiece for media sound, for example games, music, video, etc.
So the sound will be enabled both in earpiece and speaker.
Does not affect calling or headset sound.
Also i have modified the volume levels, now the maximun is higher tan ever.
THIS IS ONLY FOR:
- SAMSUNG I9500
- ROOTED PHONE
- AOSP ROM 7.1 (NOUGAT)
I am not responsible for any damage if you try on other roms or other model of S4. Maybe is working in I9505 too but i dont know because i dont have it.
I only tested in my I9500 with XenonHD Nougat. I Dont test in RR but i think is the same.
INSTALL:
1 - Download attached file: mixer_paths_0.xml
2 - Use Root Browser and go to: system/etc
3 - Find the file mixer_paths_0.xml and rename (in case of you need a backup of the original file)
4 - Place the new file with the mod, downloaded from here
5 - Reboot the phone, test and enjoy
I hope this will help, test it and comment
Credits: Nylonnohay
Release date: 19-10-2018
Last updated: 19-10-2018
Click to expand...
Click to collapse
i can install in port roms ? (note 5port)
Feardarks said:
i can install in port roms ? (note 5port)
Click to expand...
Click to collapse
No because is a different file. You may lost other features like audio in calls, etc.
Anyway, dual speaker mod for ports already exists.
Thank you,lineage os also worked.
I've created a flashable zip for ease of use, kudos to Nylonnohay
Obviously we all know this, but I'll say it anyway: I bear no responsibility for your device!
Background:
Initially I recompiled the kernel, but thanks to @fddm I was able to get this into a Magisk module. This is a take-off from https://forum.xda-developers.com/t/...-tether-lineageos-18-1.4295601/#post-86183959 Feel free to read that (minimal reading) for additional details.
What is this?
This Magisk mod adds the required iptables kernel module for TTL/Tether/unmetering for using your phone as a hotspot. I have Tmobile & with my plan, when I connect any device to the phone it is extremely throttled to around 0.5Mbps. With this mod and the settings below, you can get around that limitation. I go from 0.5Mbps=>80+Mbps with this mod. Root is required (look at above thread for details on that if needed).
Compatibility:
Confirmed OS's that work: LineageOS18.1, LineageOS19.1
ROMs: At this point I can't indicate what ROMs this will be compatible with, but it appears LineageOS18.1 works. I'm attaching that as well as a Android/AOSP12 version if anyone wants to test that. I'm also not sure if this is exclusive to the bramble/Pixel 4a5g device (If anyone knows what they're doing or wants to get ballsy, test & report your results!)
Carrier: I tested this against Tmobile. It depends on how your carrier throttles your hotspot connected devices; Tmobile uses the TTL to determine if its the phone vs a connected device. If your carrier uses that method this should work.
xt_HL.ko: This is the kernel module we're inserting to allow the "iptables ttl set" command. I tested the Android12 xt_HL.ko file on my LineageOS18.1 OS and it does NOT work. This tells me there is some type of versioning. OR: there's an issue with the A12 file...
InCompatibility: (as reported by users in the thread)
ProtonAOSP 12, pixel 4a5g
Steps:
Install Magisk module & read the output; Verify it installed successfully.
Download Termux app from playstore
Termux App: (Shouldn't be necessary if running latest script since that does this step for you on every boot)
su (Grant permissions)
iptables -t mangle -A POSTROUTING -j TTL --ttl-set 64 (should be no errors - if you have errors my kernel is not installed)
Test: Turn on phone Hotspot, connect any device, do a speed test comparing speed on phone should be similar to the connected device.
If any limitations/blocks: (Not sure but maybe http vs https is blocked sometimes)
Install VPN Hotspot app (Green key icon): "Wi-Fi hotspot" ON, wlan1 ON, DISABLE "Tethering HW Acceleration" in settings
Issues:
After running the iptables command you get this error: iptables v1.8.4 (legacy): unknown option "--ttl-set" Try 'iptables -h' or 'iptables --help' for more information. This means the module was not loaded (or isn't compatible. Assuming the correct version was selected, there's no fix. Likely your OS isn't compatible with this module. If anyone has additional troubleshooting to add feel free to chime in.
Technical Additional Info:
ttl_magisk_L18.1: This contains the xt_HL.ko file compiled from the lineage-18.1-20220102-nightly-bramble-signed repo
ttl_magisk_A12: This contains the xt_HL.ko file compiled from AOSP kernel: android-msm-redbull-4.19-android12
Updates:
* I updated the thread title since no one reporting the Android 12 kernel mod is working (only 11 works this far)
* I added "ttl_magisk_L19.zip" script which runs the iptables command for you on every boot. I just tested this on LineageOS19.1 and it works good. I'm working on testing it on LineageOS20.0...
Based on what @fddm said though, it sounds like a Magisk module like this will not work on stock AOSP because it "enforces signatures on modules". If anyone can confirm that, or a workaround that would be helpful. Also https://forum.xda-developers.com/t/...l-tether-lineageos-18-1.4295601/post-86173703 indicates we'll want to disable IP6 via these commands:
ndc interface ipv6 rndis0 disable
ndc interface ipv6 wlan0 disable
If anyone wants to test & get back that'll be great. With Tmobile I didn't need to do that (yet), but again feedback would be great.
I had checked the stock and Lineage configs and neither had signature enforcement enabled. I only had access to this phone for a couple days, so I unfortunately can't test for you.
fddm said:
I had checked the stock and Lineage configs and neither had signature enforcement enabled. I only had access to this phone for a couple days, so I unfortunately can't test for you.
Click to expand...
Click to collapse
So you think this should work on stock? Thanks man! I need my phone for work so can't put it offline for hours atm, but maybe over the weekend I can. I'd like to reflash android 12 stock & see if this works. I'd have to assume there's some interest in this... Someone else to test...who knows
hi, I am on ProtonAOSP 12, pixel 4a5g, tested the ttl A12 zip file. But it gave me error when trying to run the iptables command as per your instruction. So I guess it is not loading the module maybe
creezalird said:
hi, I am on ProtonAOSP 12, pixel 4a5g, tested the ttl A12 zip file. But it gave me error when trying to run the iptables command as per your instruction. So I guess it is not loading the module maybe
Click to expand...
Click to collapse
Apologies for your results. I just updated the OP with an "Issues" section I'll update with issues reported, and any fixes if we discover any. I've only successfully tested this against LineageOS18.1, and was only hopeful it would work against other OS's. Just for kicks, since it's a pretty simple/quick process, you may want to try the ttl_magisk_L18.1 version. BTW that entire command is case-sensitive in case someone didn't know (Eg. Iptables... will not work; iptables... will).
Regarding the fix for your issue...I think Proton is based just on AOSP, and nothing to do with LineageOS. I wouldn't think that would matter but pointing. I would've made an Android12/LineageOS19.0 module but it isnt official yet for this device. I'm not sure how willing the Proton folks would be, but the next logical step would be to have them add the following options to their ProtonAOSP12 "redbull_defconfig" file (or equivalent), build it, and send me over the xt_HL.ko file. Then I'll add a magisk module for that for you to test.
Side note: there are 4 recent AOSP kernel versions for this device. So if there are compatibility restraints with versions, I'd guess we'd have a maximum of 4 to deal with, depending on what OS you have. I don't know for sure, but wouldn't think your ROM being AOSP, LIneageOS, or Proton would make a difference, since typically custom ROMs only customize overlays, features, preferences, 3rd party SW, etc - they don't typically rewrite the kernel for example. But we'll find out. The modules I posted reflect LineageOS18.1 (should be android-msm-redbull-4.19-android11-qpr3 but I didn't verify; though this does work with a June 2021 build which is likely android-msm-redbull-4.19-android11-qpr2 or before) & Android12 (android-msm-redbull-4.19-android12). I don't have one for android-msm-redbull-4.19-android12-qpr1 yet, but there's a chance that's what you need. Recent bramble kernels:
android-msm-redbull-4.19-android11-qpr2
android-msm-redbull-4.19-android11-qpr3
android-msm-redbull-4.19-android12
android-msm-redbull-4.19-android12-qpr1
kevin71246 said:
Apologies for your results. I just updated the OP with an "Issues" section I'll update with issues reported, and any fixes if we discover any. I've only successfully tested this against LineageOS18.1, and was only hopeful it would work against other OS's. Just for kicks, since it's a pretty simple/quick process, you may want to try the ttl_magisk_L18.1 version. BTW that entire command is case-sensitive in case someone didn't know (Eg. Iptables... will not work; iptables... will).
Regarding the fix for your issue...I think Proton is based just on AOSP, and nothing to do with LineageOS. I wouldn't think that would matter but pointing. I would've made an Android12/LineageOS19.0 module but it isnt official yet for this device. I'm not sure how willing the Proton folks would be, but the next logical step would be to have them add the following options to their ProtonAOSP12 "redbull_defconfig" file (or equivalent), build it, and send me over the xt_HL.ko file. Then I'll add a magisk module for that for you to test.
Side note: there are 4 recent AOSP kernel versions for this device. So if there are compatibility restraints with versions, I'd guess we'd have a maximum of 4 to deal with, depending on what OS you have. I don't know for sure, but wouldn't think your ROM being AOSP, LIneageOS, or Proton would make a difference, since typically custom ROMs only customize overlays, features, preferences, 3rd party SW, etc - they don't typically rewrite the kernel for example. But we'll find out. The modules I posted reflect LineageOS18.1 (should be android-msm-redbull-4.19-android11-qpr3 but I didn't verify; though this does work with a June 2021 build which is likely android-msm-redbull-4.19-android11-qpr2 or before) & Android12 (android-msm-redbull-4.19-android12). I don't have one for android-msm-redbull-4.19-android12-qpr1 yet, but there's a chance that's what you need. Recent bramble kernels:
android-msm-redbull-4.19-android11-qpr2
android-msm-redbull-4.19-android11-qpr3
android-msm-redbull-4.19-android12
android-msm-redbull-4.19-android12-qpr1
Click to expand...
Click to collapse
Another note: it appears Proton does quite a bit of work with the kernel, mods/etc (eg. Features list here: https://forum.xda-developers.com/t/kernel-pixel-4a-5g-proton-kernel.4194685/ ). I'm not sure if you flashed their kernel (1 ROM says its not required), but if you did that may explain the incompatibility - but I'm just guessing.
kevin71246 said:
Another note: it appears Proton does quite a bit of work with the kernel, mods/etc (eg. Features list here: https://forum.xda-developers.com/t/kernel-pixel-4a-5g-proton-kernel.4194685/ ). I'm not sure if you flashed their kernel (1 ROM says its not required), but if you did that may explain the incompatibility - but I'm just guessing.
Click to expand...
Click to collapse
Not at all, I am just using the Proton without the Proton Kernal (this is optional). If not mistaken, the Dev mentioned somewhere that by default, the kernel is same as stock
creezalird said:
Not at all, I am just using the Proton without the Proton Kernal (this is optional). If not mistaken, the Dev mentioned somewhere that by default, the kernel is same as stock
Click to expand...
Click to collapse
Mind going into your phone settings & post your kernel version? Thx
kevin71246 said:
Mind going into your phone settings & post your kernel version? Thx
Click to expand...
Click to collapse
sure, here you go
kevin71246 said:
Obviously we all know this, but I'll say it anyway: I bear no responsibility for your device!
Background:
Initially I recompiled the kernel, but thanks to @fddm I was able to get this into a Magisk module. This is a take-off from https://forum.xda-developers.com/t/...-tether-lineageos-18-1.4295601/#post-86183959 Feel free to read that (minimal reading) for additional details.
What is this?
This Magisk mod adds the required iptables kernel module for TTL/Tether/unmetering for using your phone as a hotspot. I have Tmobile & with my plan, when I connect any device to the phone it is extremely throttled to around 0.5Mbps. With this mod and the settings below, you can get around that limitation. I go from 0.5Mbps=>80+Mbps with this mod. Root is required (look at above thread for details on that if needed).
Compatibility:
ROMs: At this point I can't indicate what ROMs this will be compatible with, but it appears LineageOS18.1 works. I'm attaching that as well as a Android/AOSP12 version if anyone wants to test that. I'm also not sure if this is exclusive to the bramble/Pixel 4a5g device (If anyone knows what they're doing or wants to get ballsy, test & report your results!)
Carrier: I tested this against Tmobile. It depends on how your carrier throttles your hotspot connected devices; Tmobile uses the TTL to determine if its the phone vs a connected device. If your carrier uses that method this should work.
xt_HL.ko: This is the kernel module we're inserting to allow the "iptables ttl set" command. I tested the Android12 xt_HL.ko file on my LineageOS18.1 OS and it does NOT work. This tells me there is some type of versioning. OR: there's an issue with the A12 file...
InCompatibility: (as reported by users in the thread)
ProtonAOSP 12, pixel 4a5g
Steps:
Install Magisk module & read the output; Verify it installed successfully.
Download Termux app from playstore
Termux App:
su (Grant permissions)
iptables -t mangle -A POSTROUTING -j TTL --ttl-set 64 (should be no errors - if you have errors my kernel is not installed)
Test: Turn on phone Hotspot, connect any device, do a speed test comparing speed on phone should be similar to the connected device.
If any limitations/blocks: (Not sure but maybe http vs https is blocked sometimes)
Install VPN Hotspot app (Green key icon): "Wi-Fi hotspot" ON, wlan1 ON, DISABLE "Tethering HW Acceleration" in settings
Issues:
After running the iptables command you get this error: iptables v1.8.4 (legacy): unknown option "--ttl-set" Try 'iptables -h' or 'iptables --help' for more information. This means the module was not loaded (or isn't compatible. Assuming the correct version was selected, there's no fix. Likely your OS isn't compatible with this module. If anyone has additional troubleshooting to add feel free to chime in.
Technical Additional Info:
ttl_magisk_L18.1: This contains the xt_HL.ko file compiled from the lineage-18.1-20220102-nightly-bramble-signed repo
ttl_magisk_A12: This contains the xt_HL.ko file compiled from AOSP kernel: android-msm-redbull-4.19-android12
Click to expand...
Click to collapse
Hi, I followed the steps and I am able to get this to work after making the changes to iptables. I did notice that if I reboot the phone the changes are not persisting. Is there any way to fix this?
Thanks!
ankur414 said:
Hi, I followed the steps and I am able to get this to work after making the changes to iptables. I did notice that if I reboot the phone the changes are not persisting. Is there any way to fix this?
Thanks!
Click to expand...
Click to collapse
That is odd. That iptables command should be persistent across a reboot. The steps in the OP are all I did. In fact once I get it working it's hard to undo it! Like I'll delete the iptables rule, reboot, and usually I still get I throttled data. Eventually it'll break again after messing with it. No clue why. Hopefully sometime else can chime in. For reference, please post your OS, build, kernel, assume Pixel 4a5g?...
kevin71246 said:
That is odd. That iptables command should be persistent across a reboot. The steps in the OP are all I did. In fact once I get it working it's hard to undo it! Like I'll delete the iptables rule, reboot, and usually I still get I throttled data. Eventually it'll break again after messing with it. No clue why. Hopefully sometime else can chime in. For reference, please post your OS, build, kernel, assume Pixel 4a5g?...
Click to expand...
Click to collapse
Hi, thanks for the response. I am using a Pixel 4a 5G:
LineageOS 18.1-20220116
Build: lineage_bramble-userdebug 11 RQ3A.211001.00110038514
Kernel: 4.19.160-ge469934bead0
it seems to be working fine connecting with my pc.
Shared out from pc both hotspot and ICS to router connecting devices register no internet
connection from META (oculus) Quest 2 shows connected, Internet works but ( BEATSABER WILL NOT CONNECT TO MULTIPLAYER ) .
Sorry.
tested the ttl A12 zip
Termux commands in op gave no error.
also ran #ndc interface ipv6 wlan0 disable (accepted)
#ndc interface ipv6 rndis0 disable would not take
noT Mobile buy metropolitition
if anyone could give me some advice for my quest2 multiplayer problem would have much love ... its the main reason I run hotspot.
OnePlus 6T
Model: A6013
Android 12
Sec. patch 1/5/2022
ProtronExtended version
12.2.1
[ROM][12L][fajita] ProtonXtended (PXOSP) [AOSP]
ProtonXtended (PXOSP) Android 12 based ROM About Project PXOSP (Proton Xtended Open Source Project) is a fork based on ProtonAOSP to enhance the user experience with useful addition features. Screenshots Screenshots of the PXOSP Installation...
forum.xda-developers.com
Kernel ver.
4.9.227Syberia+-g44a024f66f1a
#1 Tue Jan 25 19:55:25 UTC 2022
Linux version 4.9.227Syberia+-g44a024f66f1a ([email protected]) (Android (7485623, based on r416183b1) clang version 12.0.7 (https://android.googlesource.com/toolchain/llvm-project c935d99d7cf2016289302412d708641d52d2f7ee)) #1 SMP PREEMPT Tue Jan 25 19:55:25 UTC 2022
Magisk custom update channel
24.1 (24100)
@topjohnwu
kevin71246 said:
That iptables command should be persistent across a reboot.
Click to expand...
Click to collapse
iptables rules shouldn't be persistent unless you add them via script at startup. If anything, the opposite should be true. I know some devices will refresh their firewall rules after some time, at which point you have to add it back.
everburn said:
it seems to be working fine connecting with my pc.
Shared out from pc both hotspot and ICS to router connecting devices register no internet
connection from META (oculus) Quest 2 shows connected, Internet works but ( BEATSABER WILL NOT CONNECT TO MULTIPLAYER ) .
Click to expand...
Click to collapse
I have a very hard time believing that module worked for your device, are you sure your kernel doesn't already have xt_HL builtin? That aside, were you having issues before trying this? It's probably a compatibility issue between your unnamed provider and the platforms you want to use. If that's the case, just try out a bunch of VPNs until you find one that works and use it with VPN Hotspot.
fddm said:
iptables rules shouldn't be persistent unless you add them via script at startup. If anything, the opposite should be true. I know some devices will refresh their firewall rules after some time, at which point you have to add it back.
I have a very hard time believing that module worked for your device, are you sure your kernel doesn't already have xt_HL builtin? That aside, were you having issues before trying this? It's probably a compatibility issue between your unnamed provider and the platforms you want to use. If that's the case, just try out a bunch of VPNs until you find one that works and use it with VPN Hotspot.
Click to expand...
Click to collapse
yes its running according to magisk log. I was previously on pixel exp. rom android 12 and termux cmd ended in error
that is why I switched for the kernel. and from what i can tell all data is used as talk text data.... as my wifi hotspot 15GB still shows i have only used 2GB (which i have). as far as my B.S. problem I think it has something to do with multiplayer servers. it works fine on wifey's hotspot same carrier LG stylo 6 stock..
everburn said:
yes its running according to magisk log. I was previously on pixel exp. rom android 12 and termux cmd ended in error
that is why I switched for the kernel. and from what i can tell all data is used as talk text data.... as my wifi hotspot 15GB still shows i have only used 2GB (which i have). as far as my B.S. problem I think it has something to do with multiplayer servers. it works fine on wifey's hotspot same carrier LG stylo 6 stock..
Click to expand...
Click to collapse
If I'm understanding - it works, but some devices connected have random results? TMobile, or any cell phone provider, are known for issues with VPN, etc, so that doesn't surprise me. And a total guess, but TMobile uses cgnat & ip6, so maybe that's causing issues as well - but not sure what provider u have.
kevin71246 said:
If I'm understanding - it works, but some devices connected have random results? TMobile, or any cell phone provider, are known for issues with VPN, etc, so that doesn't surprise me. And a total guess, but TMobile uses cgnat & ip6, so maybe that's causing issues as well - but not sure what provider u have.
Click to expand...
Click to collapse
thats probably it right there thanks
Have tried both on Pixel 4a 5G, Android 11 stock, rooted, RQ1C.210205.006
"unknown option --ttl-set" on both
Hello, I'm having echo issues while on a call using speaker mode with my Moto E 2020. I tried different builds available here and also tried my own build, but the problem persists in all of them. The issue is not in the stock build of Motorola. I am using this device tree for making the build.
I also tried the following settings but was unable to remove the echo.
Code:
vendor.audio.feature.fluence.enable=true
persist.vendor.audio.fluence.voicecall=true
persist.vendor.audio.fluence.voicecomm=true
persist.vendor.audio.fluence.audiorec=false
persist.vendor.audio.fluence.speaker=true
ro.vendor.audio.sdk.fluencetype=none
ro.qc.sdk.audio.fluencetype=none