I've noticed that in the world of desktops, I can easily prolong the life of an older computer by installing a modern Linux distribution, making it suitable for light-use tasks. This seems particularly useful for people who don't need the latest technology, especially with concerns about resources like copper becoming more limited in the next decade. However, it seems like we don't have a similar option in the mobile space. There are some projects like postMarketOS or Ubuntu Mobile, but they only support a handful of devices. I find it frustrating, especially since so many old phones are available for potential upcycling. Can someone explain why mobile hardware compatibility is a greater challenge compared to desktop computers? Is it simply because desktop hardware is more standardized?
6 Answers
The main reason lies in the history of the two ecosystems. Desktop PCs evolved into an open system after the IBM PC era. IBM tried to create a locked system with its PS/2 line, but it didn't hold. Phones, on the other hand, have generally stayed proprietary since day one. This isn't always a malicious move; standardizing components requires significant effort, and with how phones are made, it often just doesn't happen from the get-go.
I get what you're saying, but I think we don’t necessarily need full standardization. Just making firmware and drivers open would help a lot. I’d argue that open-sourcing these components wouldn't harm companies since we already have access to those binaries.
This doesn’t directly answer the question, but I've successfully installed LineageOS on an old Android phone that stopped receiving updates. It’s running well enough to give me a few more years of use, although it's still based on Android, not a full alternative OS.
In the U.S., mobile carriers often lock bootloaders, making it hard to use alternative OSes. It's easier to find options like /e/OS in Europe where restrictions aren't as severe. Here, corporate interests keep a tight grip on device hardware.
At the core of the issue are the drivers. In the desktop world, you can easily download drivers from Intel, AMD, or Nvidia. For Android devices, GPU drivers were generally bundled with the OS. Updating them means manufacturers have to release a customized version of Android for each phone, which costs money. This makes it tougher for users to keep their phones updated. Plus, if you want to switch to Linux, you might find that most drivers were made specifically for Android. Alternative drivers for certain components, like touchscreens, are often hard to come by, which is why interest in hacking these devices is low.
Great explanation! So it seems like for upcycling old smartphones to work with modern systems, we'd have to focus on specific models, unfortunately. It’s so wasteful to have all these devices just sitting around!
Desktops are designed to be modular. You can swap components like GPUs easily between machines. Laptops also have some modularity, though it's a bit trickier. But with smartphones, the entire design is non-modular, and they have their software tightly integrated, making reverse engineering really difficult.
Remember that Apple still supports some iPhones back to 2018. That's also a testament to how long some devices can last with the right support.
In my experience as an electrical engineer, vendor lock-in is typically a design feature that companies build in intentionally. Decisions made early on can lead to it—then it kinda snowballs from management changing requirements during development. You're spot on about the standardization; it’s a real challenge.