Linux on the Phone: Part One
After being back on Linux
desktop, I decided to make 2022 the
year of Linux on the Phone. Not only did I fully replace my iPhone with
a privacy-focused smartphone, I also got my toes wet with an
actual Linux phone:
The PinePhone Pro Explorer Edition.
Technically speaking the year of Linux on the phone has been ever since Samsung launched their incredibly successful line-up of Galaxy phones, which till this day hold on to a significant market share of over 19%. These phones run Android, which is technically a Linux kernel, although a highly modified one, with all sorts of closed-source firmware blobs and a big and ugly pile of Java on top. And while Linux in itself is generally a very efficient piece of software, the Java part has ever since caused Android devices to feel sluggish and require significantly more CPU power, as well as RAM, as for example their competitor’s iOS devices.
Instead of running a Frankensteined Linux (Android) that requires writing apps from scratch, open source initiatives like KDE, Phosh and UBports have set out to build mobile-friendly versions of existing Linux desktop apps, that in turn could be run on pretty much any device that’s capable of running a Linux kernel, as well as the other components that are required to spin up a graphical user interface.
Two well-known examples of such hardware are the Raspberry Pi and the Radxa
RockPi. Generally speaking, take a RockPi 4 SBC, attach a touchscreen, an
extension board with a modem and a battery and you’re basically dealing with
a Linux smartphone. Unfortunately it’s not socially accepted to run around
with a naked piece of hardware in your hand, from which red and black wires are
dangling out of. Hence, let’s take those components, bake them onto a single
PCB and hide them in a less frightening looking plastic case:
Meet the PinePhone Pro!
The PinePhone Pro is the Pro variant of Pine64’s take on a modern Linux
smartphone and (unlike the OG) features the commonly used RK3399 by
Rockchip. The RK3399 has been a resident to many SBCs, like the RockPi, the
Orange Pi, and the Firefly / Libre Renegade Elite. I’ve used it before in
an ultra-portable Linux desktop that I put together a while ago.
The Rockchip CPU is significantly more powerful than the Broadcom BCM2711 used in the Raspberry Pi 4 and it’s perfectly capable of running a full desktop environment, like Manjaro’s Sway Edition that I was using on the RockPi 4.
The PinePhone Pro however runs a RK3399S, a custom-made variant of the RK3399 chips that are binned and voltage-locked so that they conform to a smartphone chassis thermal and power consumption envelopes. Hence there’s a noticeable difference in running for example Manjaro on a RockPi 4 that has a huge heatsink attached to it, as compared to running it on a PinePhone Pro that has very limited cooling. Most parts of the GUI perform quite bad on the PinePhone, in their current state. Even unlocking the phone has a noticeable lag to it, not to mention more complex tasks like switching between applications or browsing the internet using Firefox.
Clearly the PinePhone Pro isn’t ready for prime time yet and not at all a daily
driver whatsoever, as there are still many open issues. For example, on most
distributions/desktop environments the phone will crash as soon as it tries to
go into sleep. Hence, sleep needs to be disabled (for now), which leads to a
decreased battery runtime of maybe four hours in total. Similarly, the modem
seems to hang up from time to time, requiring a manual restart. On the GUI
side of things there are also plenty of glitches and things that won’t work.
Not to mention the whole UX accident that Librem calls Phosh.
Long story short, many things one would take for granted on an Android phone simply aren’t there yet on the PinePhone Pro - like a functioning camera.
It’s still a long way to go for the Pine64 community. Having that said, the PinePhone Pro nevertheless shows huge potential and an exciting glimpse at what’s about to come. And even though it cannot be used as an actual smartphone as of right now, there are still plenty of fun things it can do. For example, it can function as a portable WiFi and Bluetooth Swiss army knife, using bettercap, or a portable airmon-ng / airodump-ng with cloud aircrack-ng via mobile network. It might also work to install OpenCPN and use its integrated GPS/GPS-A/GLONASS module for chart plotting, navigation and maybe even autopilot on a boat. It can basically be used for anything that usually requires a SBC with a display connected to it and maybe internet connectivity or even LoRa.
In it’s current state, the PinePhone Pro really is only a fully integrated RK3399 with batteries included – pun intended – and that’s already awesome. Is it worth the current price tag of $399? It depends. If you’re someone who’s getting a great value out of a Raspberry Pi or similar SBCs, then the PinePhone Pro is actually a pretty sweet deal. Considering the BOM and the current global situation, I’m even surprised Pine64 were able to keep it at that price. If however you’re expecting to get an actual phone that’s good (or even just mediocre) at typical phone things, better look elsewhere, as $399 will definitely get you a device that’s better than the PinePhone Pro at being just a phone. At least for now.
published [ ] · updated [ ]