From now on, I’m only buying Nexus phones…
tl;dr: I will not be buying another LG phone. Their new image has locked down their system and prevented us from installing the software we want on our phone. The ability to easily/legitimately do this was a major reason I bought the phone in the first place.
Warning, this is not a well-researched article. It’s a rant. No links (yet), and lots of suppositions regarding motivations. However, the feelings are bubbling forth and need an outlet. Hopefully publicly making my point will change… something?
I absolutely hate the current trends in “smart” phones. Phone manufacturers seem to implement flawed software “features” and load phones up with proprietary bloatware in an attempt to edge out the competitors. I would call these perceived or false features. They’re gimmicks meant to entice consumers. These “features” typically are ones that are not difficult to implement or necessarily that useful. LG’s “quicknotes” is simple and there are other apps that implement that functionality. The Samsung eye-tracking scrolling is more difficult to implement, but I consider that a gimmick. It’s also based on image-recognition research and software techniques developed by many other people (but I bet Samsung has a patent related to using this “feature” in phones/mobile devices). So now, if someone wants to improve on this feature, even if they used a clean-room version, the patent would prevent them from releasing their improved version. Holding back progress in the name of supposed profit.
I suppose I understand why: strip the software away and the hardware is pretty much equivalent across the board. Most phones use the same base components! There’s not much innovation to occur here, so they attempt to do it in software, or at least fake it. It’s much easier to practice anti-competitive vendor lock-in than to actually innovate. Locked bootloaders and lack of root access to the system in order to prevent the use of 3rd-party firmware, or modifications to the system. This has been seen before with Microsoft, and after a long fight it seemed we had won out against this type of anti-competitive behavior.
The tin-foil hat portion of me also suspects even more malicious motivations. Much like the Silverfish incident with Lenovo (this is the best summary I can find so far, but all of these write-ups argue that “hackers” can exploit this, when in fact the silverfish program is actively exploiting it, and could be monitoring your encrypted traffic and doing nefarious things): if users could remove this pre-installed software, how will they monitor your encrypted traffic in order to insert ads? Certainly a lucrative endeavor, and not much to stop them from spying on the encrypted traffic…
I love Android due to it’s open source base, and I try to run as much of an open source stack as I [reasonably] can. I love what this has done for the mobile ecosystem, and I do recall the early days of Android containing much more drastic clashes between developers, and manufacturers attempting to hold onto an outdated development model. I’ve been a consistent Cyanogenmod user since my Motorola Droid. It’s quite amusing how software written by a group of volunteers can be much more useful and stable than the closed-source products that an isolated team rushes out (likely attempting to make a deadline). Bugs and errors cannot be traced by end-users or outside developers with ease, leaving this team as the sole source of fixes. The solutions of which can’t be verified by others, and this lack of transparency can result in hackish and ineffectual solutions.
Anyways! This leads into my story: I loved my Galaxy Nexus. I held onto it for a long time, waiting for a non-Qualcomm based phone to hit US markets (that’s a rant for another day!). The Nexus line of phones is wonderful: a developer friendly phone that has an unlocked and standard bootloader, capable of flashing [almost] anything you want (note: this doesn’t cover the modem firmware and early stage bootloaders… but one battle at a time).
Sadly, it was beginning to show it’s age. Cyanogenmod dropped support for it, and right at the critical point when APN support was broken. My phone had become unusable on Verizon’s networks and any tweaks I tried weren’t working. I could have backported patches as others had done, but this was more work than I was willing to put in for an unsupported phone. Downgrading wasn’t an option as various security exploits were being patched as well. It was unavoidable… I needed a new phone.
I used this chance to move to T-mobile. I had wanted to do this for a long time and for many reasons (such as their position on net neutrality, customer-friendly practices, standard global GSM frequency use, and so forth), but also in the hopes of being able to use those wonderful international phones. However, they can be quite expensive when not offset by plans/contracts…
With the worst possible timing, my decision to settle for a Qualcomm based phone was right when all the carriers dropped the Nexus 5 I was eyeing, and then exclusively carried the unwieldly Nexus 6. I could still buy the Nexus 5… for 450$ I didn’t have.
Investigating the options available to me was depressing. I was lucky to move to T-mobile, as they don’t require a locked bootloader (a position Verizon and AT&T have taken), but that didn’t mean it was going to be easy to root and flash my phone. My first priority was to support any manufacturer that allowed one to root their phone/unlock the bootloader. This was only HTC at the time (Wow! remember when HTC was the worst Android phone manufacturer? I recall they were very reluctant to comply with the GPL for the Linux kernel in particular). However, unlocking it meant creating an account, sending them the device ID, and getting a custom unlock key. This set my tin-foil hat alarm off. The Samsung phones could be unlocked by using a reverse engineered utility to access their [custom] flashing method. The utility was open-source by the developers who reverse engineered it (yay!) but I didn’t grok Samsung’s ecosystem and stance here. I’d rather see a standard protocol used.
Lastly, LG. I couldn’t discern their stance here. The Nexus 5 was an LG phone and wonderful. The bootloaders on T-mobile are unlocked, and the G3 could be rooted by accessing a standard recovery mode. However, this wasn’t documented anywhere by LG, and others suspected it to be an oversight on their part.
I had started a new position, was tight on money, and the LG G3 was cheaper than the HTC M8. So, I let the guy talk me into it. The LG firmware was… okay, I guess? I quickly replaced it with Cyanogenmod, and it was awesome! I love this phone (with Cyanogenmod, of course).
My partner also picked up a G3 at the same time. He holds similar views as I do, but is more… pragmatic. There was no stable release of Cyanogenmod for this phone yet, and I was experiencing the occasional crash (which was being reported as originating from one of the few binary blobs the phone required to function, just saying). He decided to wait until things stabilized. However, he found the LG firmware extremely annoying. Sporadic behavior, and annoying “features” getting in his way. He decided to update to the new Lollipop image hoping it fixed these problems.
It did not. It made things worse, and he’s reset his phone multiple times trying to remedy the situation. With my endorsement that Cyanogenmod was much more stable, he finally decided to root his phone and install it.
Surprise! The bootmode used to root the phone is absent in the new image. Searching revealed the only option was to downgrade to the earlier stock image through a method I find absolutely revolting. The phone must be put into a download-mode (this seems to be an LG only protocol, as opposed to the more standardized fastboot protocol), and can only be flashed using a Windows flashing program (who’s origins I cannot determine), a Window’s DLL for the driver (origins also indeterminate), using a firmware image that we can’t download from reputable sources.
No. No. No, and No. Huge buyer’s remorse. It certainly seems the bootmode was an oversight, and they were quick to close it and prevent people from re-enabling it.
If this is how they do things, I will not be buying another LG phone. Which is a shame, they make great hardware! That’s one of the reasons I bought it in the first place. But their priorities seem to be protecting their right to disappoint users with a horrible software experience, and no option to opt-out.
I was contemplating to use my Jump! program to payout and change to an HTC M8 next year (yay T-mobile!), but this experience has left me bitter, and determined to use only a Nexus phone from now on, where I know something like this won’t happen. Now just need to wait for the replacement for that awful phablet Nexus 6…
All of this is possible because it is not transparent to most end-users. So, I implore the two people who will read this to purchase their next phone consciously. In this case HTC and any Nexus phone are the clear victors.