This post is how I fixed my 4G LTE signal intermittent dropping and broken/non-existent 3G connection on my Sprint Galaxy S4 phone while running CyanogenMod.
Background
I’ve been running CyanogenMod stable on my Sprint Galaxy S4 (jfltespr) since the day I got it. The version I stuck with was 10.1 (Android 4.2.2) because it had great battery life, all the features I needed, didn’t have many errors, and I was too lazy to upgrade. I also switched from SERO Premium ($50/mo) to the $25 Framily plan with only 1GB of data. Most of the time I was connected to Wi-Fi while at home and work, so my usage was only about 300-400MB per month on 4G/3G.
Because I only really needed a cell data connection while driving or at the store, I didn’t really notice my internet connection problems. The more I needed to use Google Now voice command while driving, the more I noticed that my 4G connection would drop constantly and that the 3G connection wasn’t kicking in…ever. I started paying more attention and even when I had good 4G signal strength, it would drop right as my phone was trying to use it.
Radio Fix
At first, I thought all these issues were due to my international SIM car unlock I did while in Ireland (see this post where I flash an older MDC modem). I updated my modem to MF9 (*warning* do not update your modem/firmware to NAE manually or OTA. It includes KNOX which will trigger an irreversible flag that will void your warranty even if you go back to stock unrooted. For more information, see this forum: http://forum.xda-developers.com/showthread.php?t=2277480).
After updating to the MF9 modem, I didn’t do large amounts of testing, but things did not seem to improve. I may consider this section to be optional.
PRL and Profile Updates
I decided to flash back the rooted, stock ROM in the forum link above. Then I went into the phone settings and updated the PRL and Profile to get the latest Sprint tower information. I noticed that there was a setting in Android to change to the Preferred Network Mode. You can switch between LTE/CDMA and CDMA. When I switched to just CDMA, it made the phone restart and I now connected only to 3G. I remember seeing a similar screen in CyanogenMod and that gave me an idea.
Updating the PRL and profile may not have made a difference, but I wanted to make sure no stone was unturned.
CyanogenMod 11 Fix
After my phone had the MF9 radio and the latest cell tower information, I flashed CM11 to my S4. I went to the Preferred Network Mode and switched it to 3G. My phone didn’t restart automatically, so I did a manual restart. After coming back online, I used the manual LTE toggle button to turn 4G off. This LTE toggle button can be turned on under Settings > Notification Drawer > Quick Access Ribbon.
Testing 3G and LTE
I pulled down the notification drawer from the top of the screen, and hit the LTE button to turn off 4G. After a few seconds, the 3G icon showed up and I was able to use the internet connection. I’ve also noticed that my LTE connection is now much more stable and I haven’t pulled out my hair while using data. Everything appears to be normal. Its weird that in 3G mode (after restarting), I can still turn on and off the LTE connection. I don’t care because everything works.
I’m having a very similar problem with the GS4 though I’m on Verizon… Thanks for posting I’m pretty sure these steps will help me.
Well, I’ve updated prl and switched off LTE which absolutely never connects anyways
… But the problem persists. I use apus, not cyan… So I dl’d the cyan mod and it says my phone is not supported (Kyocera hydro icon) My data connection drops every 2 seconds. Its utterly crippling. Any advice?
I’ve kept my phone in 3G mode. Sprint 4G isn’t that amazing and any time I really need speed, I’m on wifi. Its more important to me to have a consistent data connection, so I use 3G.
I’m using an unofficial port of CM12 for the Boost Mobile LG Tribute. I’ve noticed a lot of connection dropouts. Then getting nowhere from the CM fora or XDA, I’m lucky I found your post. I’ve modified your instructions a tad for my instance, which was to go to the dialer, hit *#*#4636*#* which will bring up the Testing menu, hit “Phone Information,” scroll down to the end, tap “Refresh” then “Update.” I then went to Settings > Mobile Networks and realized that I was in my CDMA mode as “NV” and not “SIM/RUIM” mode. Changed that to the latter, rebooted, voilà! No drops in my connection! I owe you one.
glad to hear you got it working!
This same workaround worked on my Pantech Burst which I unlocked and installed a custom CM11 build, which was having issues switching between 3g/HSPA+/HSPA/LTE all the time. I just added the LTE quick drawer button and noticed it was turned off, turned it on, and now I’m on LTE steadily 🙂