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

Got Verizon and want WiFi Preferred for WiFi calling? I just found the way!

Search This thread

abuttino

Senior Member
Sep 12, 2006
2,222
411
Looking through "settings list global", I noticed something that could be pertaining to WifiCalling.

wfc_ims_mode=1

I changed it with Tasker and AutoTools to 2 and then enabled and disabled airplane mode and it stuck!

I don't even believe you need root to change this setting.


---- NOTE ----
If you have never activated AutoTools Secure Settings, read this:
https://joaoapps.com/AutoApps/Help/...utotools.activity.ActivityConfigsettings.html

You might as well just skip to the adb section on this post (below) instead.
---------

A1: AutoTools Secure Settings [ Configuration:Setting Type: Global
Name: wfc_ims_mode
Input Type: Int
Value: 2
Read Setting: true Timeout (Seconds):60 ]

For those who don't know Tasker and AutoTools... Create a new task. Choose Plugins, then AutoTools, then secure settings.

Choose custom settings
Choose Setting type
Choose global
Ok

Choose Name
Fill in wfc_ims_mode
Ok

Choose input type
Int

Choose value
Fill in the number 2
Ok

Press the back button then the check mark on the top and the back button one more time

Press the play icon on the bottom left and wait for the small green circle on the left in the AutoTools line

Go to settings click more in the wireless area and see that it is now WiFi Preferred.

----- ADB INSTRUCTIONS -----
Enable ADB Debugging Mode in Developer options

Plug your phone in.

On your desktop, go to the command prompt and change directory into where you keep ADB.exe

If you have never connected your phone to adb, you'll have to allow it. Type adb shell and you'll notice a pop-up on your phone screen that asks for permission. Click yes and try the adb shell command again.

Then type this

settings put global wfc_ims_mode 2
Press enter.

For pros:
adb shell settings put global wfc_ims_mode 2

Look at your wireless settings (more menu) and you'll see that WiFi Preferred is active

-----------

Don't forget to toggle airplane mode and, it should be set to go. It persisted through a reboot, it will be interesting to see what else it persists through.


Sent from my Pixel XL using Tapatalk
 
Last edited:

iceman4357

Senior Member
Jun 17, 2006
1,260
120
St.Louis
Thanks for looking into this. I will have to try it on my stock XL. Bugs the heck out of me that its cellular preferred. I am in an area where VZ signal is terrible so there is a 5 second delay when I answer the phone for it to kick over to WiFi calling.
 

SikYou

Senior Member
Oct 18, 2010
438
77
Confirmed working. I did this with terminal emulator and am now showing WiFi preferred and WiFi calling is actually on and working.
 

iceman4357

Senior Member
Jun 17, 2006
1,260
120
St.Louis
I must be doing it wrong. Opened up ADB Minimal, check to make sure my devices was connected. Tried typing in exactly what you said and I get "settings" is not recognized as an internal or external command.

I should be able to skip the Autotools and go direct to ADB correct?
 

abuttino

Senior Member
Sep 12, 2006
2,222
411
@iceman4357

adb shell settings put global wfc_ims_mode 2

It will not read anything back to you for the command being completed. Just check your WiFi calling settings

Yes you can skip AutoTools config and go right for the adb method

Sent from my Pixel XL using Tapatalk
 
  • Like
Reactions: Shawn haz root

Shawn haz root

Senior Member
May 4, 2011
224
64
NY
Awesome find! This worked for me too.

With Auto Tools, is there a way to disable mobile data when WiFi is connected and enable mobile data when WiFi disconnects?
 

abuttino

Senior Member
Sep 12, 2006
2,222
411
Awesome find! This worked for me too.

With Auto Tools, is there a way to disable mobile data when WiFi is connected and enable mobile data when WiFi disconnects?
If you have root or AutoInput

Root, Just use Tasker and the secure settings plugin disable mobile data

AutoInput and Tasker, find the System action for mobile data, then toggle it off.

If you need the xml to import, please PM me with your email address

PHO-Mobile Data Toggle (889)
A1: Variable Set [ Name:%MOBILEDATA To:eek:N Recurse Variables:eek:ff Do Maths:eek:ff Append:eek:ff ] If [ %MOBILEDATA !Set ]
A2: If [ %MOBILEDATA ~ ON ]
A3: Launch App [ App:Data usage Data: Exclude From Recent Apps:eek:ff Always Start New Copy:eek:ff ]
A4: AutoInput Action [ Configuration:Type: Text
Value: Cellular data
Action : Click
Is Tasker Action: false
Check Screen State: false Timeout (Seconds):20 ]
A5: AutoInput Action [ Configuration:Type: Text
Value: OK
Action : Click
Is Tasker Action: false
Check Screen State: false Timeout (Seconds):20 ]
A6: Variable Set [ Name:%MOBILEDATA To:eek:FF Recurse Variables:eek:ff Do Maths:eek:ff Append:eek:ff ]
A7: Button [ Button:Back ]
A8: Stop [ With Error:eek:ff Task: ]
A9: End If
A10: If [ %MOBILEDATA ~ OFF ]
A11: Launch App [ App:Data usage Data: Exclude From Recent Apps:eek:ff Always Start New Copy:eek:ff ]
A12: AutoInput Action [ Configuration:Type: Text
Value: Cellular data
Action : Click
Is Tasker Action: false
Check Screen State: false Timeout (Seconds):20 ]
A13: Variable Set [ Name:%MOBILEDATA To:eek:N Recurse Variables:eek:ff Do Maths:eek:ff Append:eek:ff ]
A14: Button [ Button:Back ]
A15: End If


Sent from my Pixel XL using Tapatalk
 
Last edited:
  • Like
Reactions: Shawn haz root

matty032

Senior Member
May 20, 2008
71
21
I did it with the adb method. And it survived a power cycle. I assume it's good till a factory reset.

Sent from my Pixel XL using Tapatalk
 

zetsumeikuro

Senior Member
Jul 13, 2010
4,371
1,165
Nice find~. I did it by accessing the secret menu with *#*#4634#*#* via a one click app. Then I just turned off cellular radio power to and Wifi call worked just fine and was preferred by default. Downside is having to shut mobile data off each time. So thanks for the share!
 
Last edited:

matty032

Senior Member
May 20, 2008
71
21
I must be doing it wrong. Opened up ADB Minimal, check to make sure my devices was connected. Tried typing in exactly what you said and I get "settings" is not recognized as an internal or external command.

I should be able to skip the Autotools and go direct to ADB correct?

If your using Windows, make sure your in the correct folder.
 

abuttino

Senior Member
Sep 12, 2006
2,222
411
You can do the same with putting it in airplane mode but that's just not conducive to people that have to remember to take it out every time they leave home or work

Sent from my Pixel XL using Tapatalk
 

abuttino

Senior Member
Sep 12, 2006
2,222
411
Tried the ADB method on a Verizon Pixel XL with a Project Fi SIM, and it does not seem to have made a difference in my menu options.
Well. That's most likely because Fi defaults to WiFi calling anyway.

Besides, this method I discovered was only tested on a Verizon Wireless SIM

Thanks for the info though

Sent from my Pixel XL using Tapatalk
 

dc/dc

Senior Member
I wonder why this hack didn't work. Very odd.

Are you sure you did it right?

I'm pretty confident I did, but I've tried it again and screenshot everything this time. Any thoughts? I'm on stock 7.1.2 with June patch.
 

Attachments

  • Screenshot_20170628-085859.png
    Screenshot_20170628-085859.png
    108.6 KB · Views: 524
  • Screenshot_20170628-085904.png
    Screenshot_20170628-085904.png
    91.1 KB · Views: 514
  • Screenshot_20170628-090847.png
    Screenshot_20170628-090847.png
    60.2 KB · Views: 501

abuttino

Senior Member
Sep 12, 2006
2,222
411
Is this the Pixel? It's tons different than my menus.

Try adb settings list global and you should see the prefix wfc_

Give me that screenshot

Sent from my Pixel XL using Tapatalk
 

iceman4357

Senior Member
Jun 17, 2006
1,260
120
St.Louis
Update-- Only down side to doing this, at least for me on Verizon, is:
1.) Visual Voicemail does not work. I have to turn WiFi off for it to actually play the messages. It will show the message on WiFi, but will not play for whatever reason.
2.) I now have to dial an area code regardless of it being in my same area code. If not it will give me a Verizon Error recording.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 10
    Looking through "settings list global", I noticed something that could be pertaining to WifiCalling.

    wfc_ims_mode=1

    I changed it with Tasker and AutoTools to 2 and then enabled and disabled airplane mode and it stuck!

    I don't even believe you need root to change this setting.


    ---- NOTE ----
    If you have never activated AutoTools Secure Settings, read this:
    https://joaoapps.com/AutoApps/Help/...utotools.activity.ActivityConfigsettings.html

    You might as well just skip to the adb section on this post (below) instead.
    ---------

    A1: AutoTools Secure Settings [ Configuration:Setting Type: Global
    Name: wfc_ims_mode
    Input Type: Int
    Value: 2
    Read Setting: true Timeout (Seconds):60 ]

    For those who don't know Tasker and AutoTools... Create a new task. Choose Plugins, then AutoTools, then secure settings.

    Choose custom settings
    Choose Setting type
    Choose global
    Ok

    Choose Name
    Fill in wfc_ims_mode
    Ok

    Choose input type
    Int

    Choose value
    Fill in the number 2
    Ok

    Press the back button then the check mark on the top and the back button one more time

    Press the play icon on the bottom left and wait for the small green circle on the left in the AutoTools line

    Go to settings click more in the wireless area and see that it is now WiFi Preferred.

    ----- ADB INSTRUCTIONS -----
    Enable ADB Debugging Mode in Developer options

    Plug your phone in.

    On your desktop, go to the command prompt and change directory into where you keep ADB.exe

    If you have never connected your phone to adb, you'll have to allow it. Type adb shell and you'll notice a pop-up on your phone screen that asks for permission. Click yes and try the adb shell command again.

    Then type this

    settings put global wfc_ims_mode 2
    Press enter.

    For pros:
    adb shell settings put global wfc_ims_mode 2

    Look at your wireless settings (more menu) and you'll see that WiFi Preferred is active

    -----------

    Don't forget to toggle airplane mode and, it should be set to go. It persisted through a reboot, it will be interesting to see what else it persists through.


    Sent from my Pixel XL using Tapatalk
    1
    @iceman4357

    adb shell settings put global wfc_ims_mode 2

    It will not read anything back to you for the command being completed. Just check your WiFi calling settings

    Yes you can skip AutoTools config and go right for the adb method

    Sent from my Pixel XL using Tapatalk
    1
    Awesome find! This worked for me too.

    With Auto Tools, is there a way to disable mobile data when WiFi is connected and enable mobile data when WiFi disconnects?
    If you have root or AutoInput

    Root, Just use Tasker and the secure settings plugin disable mobile data

    AutoInput and Tasker, find the System action for mobile data, then toggle it off.

    If you need the xml to import, please PM me with your email address

    PHO-Mobile Data Toggle (889)
    A1: Variable Set [ Name:%MOBILEDATA To:eek:N Recurse Variables:eek:ff Do Maths:eek:ff Append:eek:ff ] If [ %MOBILEDATA !Set ]
    A2: If [ %MOBILEDATA ~ ON ]
    A3: Launch App [ App:Data usage Data: Exclude From Recent Apps:eek:ff Always Start New Copy:eek:ff ]
    A4: AutoInput Action [ Configuration:Type: Text
    Value: Cellular data
    Action : Click
    Is Tasker Action: false
    Check Screen State: false Timeout (Seconds):20 ]
    A5: AutoInput Action [ Configuration:Type: Text
    Value: OK
    Action : Click
    Is Tasker Action: false
    Check Screen State: false Timeout (Seconds):20 ]
    A6: Variable Set [ Name:%MOBILEDATA To:eek:FF Recurse Variables:eek:ff Do Maths:eek:ff Append:eek:ff ]
    A7: Button [ Button:Back ]
    A8: Stop [ With Error:eek:ff Task: ]
    A9: End If
    A10: If [ %MOBILEDATA ~ OFF ]
    A11: Launch App [ App:Data usage Data: Exclude From Recent Apps:eek:ff Always Start New Copy:eek:ff ]
    A12: AutoInput Action [ Configuration:Type: Text
    Value: Cellular data
    Action : Click
    Is Tasker Action: false
    Check Screen State: false Timeout (Seconds):20 ]
    A13: Variable Set [ Name:%MOBILEDATA To:eek:N Recurse Variables:eek:ff Do Maths:eek:ff Append:eek:ff ]
    A14: Button [ Button:Back ]
    A15: End If


    Sent from my Pixel XL using Tapatalk
    1
    FYI.. This method still works on Android 8 Oreo. Voice mail works as well.

    Sent from my Pixel XL using Tapatalk
    1
    I'm not clear, why do you disable advanced calling? Does that help somehow with wifi preferred ? Thanks

    I thought so at the time but it was only temporary.