Comparing the PinePhone to the Librem 5

Continuing the discussion from Estimate your Librem 5 shipping:

Since this discussion was going off-topic, I’m moving it here because I think it deserves to be a discussed as a topic in its own right, because many people have to chose between the two phones, so they will find this discussion interesting. Here is what has been said so far:

@vancha commented:

@eugenr replied:

4 Likes

Ah, thanks ^^ yes I guess it’s probably more suitable to be discussed in it’s own thread.
For the people needing to make a choice there’s a lot to be found online for both of these projects thankfully :slight_smile:
Spec wise they’ve been discssed here already:


Pricewise, the same has been done here:

Hopefully these are useful for quick reference.

1 Like

OK, I have to insert my two cents in this conversation. When I was adding the PinePhone component list to the PINE64 wiki, I observed a couple things about its design and the goals of PINE64.

There is some truth to everything that everyone has said. What we are arguing about is a matter of degree and what is the meaning of a term like “software freedom”. Frankly, both of these companies promote FOSS and the community and are contributing to mobile Linux, but their focus is different and they have very different strategies for how to operate.

Purism is aligned with the FSF and is closer to the “free software” line of thinking, which means it promotes user rights to software freedom and it publishes articles on its web site that promote those values. It is willing to go to extreme lengths to use only free software, but the other part of its mission is to make free software usable and convenient for normal users, which means using modern hardware.

PINE64 is focusing on providing hardware to the FOSS communities at an economical price, and it is willing to compromise on the free software part if it can’t find hardware which is economical or doesn’t yet have good free software support. When PINE64 designed the PinePhone, it was expected that its A64 processor would need a proprietary graphics driver for the Mali-400 MP2 GPU and it selected a Realtek WiFi/BT chip that needed proprietary firmware stored in the /lib/firmware directory. It was only in April 2019 that the free Lima driver was added to Mesa (which was 6 months after the PinePhone was announced) and it became possible to run the PinePhone without proprietary drivers.

In contrast, Purism looked at the same problem, and decided that it would take the painful path of trying to get the i.MX 8M Quad supported in mainline Linux because its GPU could run on a free driver and it would add an SPI NOR Flash chip to store the proprietary Synopsys DDR PHY timing blob. Purism also paid Redpine Signals to alter its firmware so it didn’t need to be stored in /lib/firmware.

This willingness to take extreme measures to use free software is in line with Purism’s history:

  • Petitioning Intel to get rid of the ME.
  • The first company to sell PCs with the ME disabled and the only one (AFAIK) to neutralize it by replacing 90% of the code with zeros.
  • The first company to sell new laptops that weren’t Chromebooks with Coreboot preinstalled.
  • The second company (after Libiquity) to create a 100% free software distro and getting it certified by the FSF.
  • Third company (after OpenMoko and Golden Delicious) to release free/open source schematics for a mobile phone.
  • First company to seek Respects Your Freedom certification for a mobile phone (and the second to make an RYF computer after RaptorRC if you consider the Librem 5 to be a computer)
  • Continuing to use the crappy Atheros ath9k WiFi/BT card in the Librem 13/14/15/Mini despite its many problems because it was the only 802.11n that didn’t need proprietary blobs.

In other words, Purism does have a stronger history of promoting software freedom than PINE64. However, I think PINE64 has been evolving. It used to be much closer to the “open source” line of thinking, which emphasizes the practical benefits of a open development methodology where code is shared and collectively developed by the community. This pragmatic stance is reflected in the fact that PINE64 selects hardware which runs on free/open source firmware and drivers when it is convenient to use and can be obtained economically.

PINE64 used to call itself an “open source company” and the PINE64 home page used to have this motto at the top:

And it used to have this description at the bottom of the home page:

The Allwinner A64 SoC, which is the brains of the PinePhone, runs mainline Linux, uses mainline ATF and u-boot and there are open source drivers for all main SoC components.

The PINE64 web site has been redesigned for mobile devices and it now uses “FOSS” instead of “open source” to describe itself:

Our vision
Our goal is to push the envelope and deliver Arm and RISC-V devices that you want to use and develop for. To this end, we actively work with the development community and champion end-user initiatives. Rather than applying business to a FOSS setting, we allow FOSS principles to guide our business.

In addition, I see PINE64 undertaking projects to get free software drivers and firmware for hardware. It is addressing the WiFi/BT problem by creating the “Nutcracker Challenge” which sent 1000 Buffalo BL602 dev boards to people who want to work on developing FOSS drivers/firmware:

So, what is the challenge then? To achieve blob-free BL602 for the open source community so that we all can enjoy blob-free FOSS Bluetooth and WiFi on PINE64 devices.

Another thing is that PINE64’s way of creating hardware for the community to work on actually is helping us get a better driver and even FOSS firmware for the Quectel cellular modem, which I find to be frankly amazing.

From the February update:

We are currently working on three different fronts modem-wise: 1) porting the mainline (kernel.org) kernel; 2) open-sourcing the userspace and; 3) improving the way incoming calls and texts are handled while the phone is suspended.

The modem can now boot version 5.11 of the Linux kernel with minimal functionality (serial, USB and NAND). Konrad has been working hard on all the low level drivers that are needed (PMIC, clocks etc) so the rest of the devices inside the SoC can start. There’s still a lot of work to do, since the SoC has never seen an official release from Qualcomm ever since kernel 3.18.x, so even if some pieces can be adapted from other mainlined Qualcomm models, there’s a lot of code that needs to be written from scratch. Work is being done by Konrad to send his existing patches upstream, so that they can get merged and so that he can further continue the work.

VoLTE blobless audio calls will be possible in the future. Original Twitter post By Biktor

On the present factory firmware, there are about 150 closed source binaries and libraries that make the modem work. Biktor is working on replacing all of them with 3 open source alternatives that will hopefully get 90% of the required functionality. At this point we can initialize the modem, establish data connections and make both CS (normal) and VoLTE calls without any binaries, although sometimes audio fails, and call reception doesn’t work yet. Stay tuned for more information about the open sourced userspace in near future.

Dylan has been tackling one of the biggest complaints concerning the modem, namely the slow recovery from suspend and its USB resets, making the PinePhone lose incoming calls and texts when using ModemManager (since it cannot reconnect to the modem fast enough after suspend). These patches, currently in a testing stage, should make the PinePhone wake up and start ringing on the first dial tone when there’s an incoming call or text, as well as fix intermittent USB resets that show up when resuming from suspend.

The Pinephone has replaced the Nexus 5 to become the device used by the Plasma Mobile developers to do their development work, and it has allowed the project to dump libhybris and the Android drivers. The PinePhone also convinced UBports to add support for Linux drivers to Ubuntu Touch. So in these ways, PINE64 is advancing software freedom.

As I see it, Purism and PINE64 need each other. 70% of PinePhone users are using the Phosh mobile environment developed by Purism, and 3 of the 5 PinePhone Community Editions (postmarketOS, Manjaro and Mobian) had Phosh preinstalled, so the success of the PinePhone has depended on Purism’s dev work. At the same time, Purism needs the PinePhone because it is providing users, new developers and distro packagers for Phosh. Mobian and postmarketOS now participate in the development of Phosh and Phosh has been widely packaged in Linux distros (Arch, Manjaro, Debian->Ubuntu->Mint, Fedora, openSUSE, NIX and postmarketOS) because of the PinePhone. Because most of the people using the PinePhone and PineTab are running Phosh, they are catching the bugs early, so that Librem 5 users can avoid them.

It is likely that the Librem 5 will use the Megapixels camera app, which was developed for the PinePhone by Martijn Braam, a postmarketOS developer. There is also the possibility that the Librem 5 will be able to the Quectel EC25-G modem in the future, due to all the development that the PinePhone community has put into its FOSS driver and firmware. The Plasma Mobile port and the Ubuntu Touch port for the Librem 5 will be better, because the developers had the PinePhone which stimulated them to work on their systems using Linux drivers rather than Android drivers.

Both companies are helping each other, so we should be happy for the existence of both companies. Having looked carefully at both, I decided to order the Librem 5 over the PinePhone, because I think Phosh has the best chance of taking mobile Linux into the mainstream and I want to help pay for its development. I also see supporting the i.MX 8M platform as the best shot at getting more RYF devices in the near future. I used to think that the RS9116 would solve our 802.11n woes, but it is now looking like it isn’t much better than the ath9k, but Purism is reportedly trying to find us another blob-free WiFi/BT solution that will be even better.

However, I have to say that the way that PINE64 is putting out a Rockchip RK3566 SBC and a RISC-V SBC probably is going to stimulate a lot of FOSS dev work for that hardware in the future. I see the RK35xx processors as the best chips for making mobile Linux devices that can appeal to the mainstream and the RISC-V is the eventual path for a fully free CPU, so we need PINE64 to provide the hardware to get the community working on supporting those architectures.

Both Purism and PINE64 have exceeded my expectations. I never expected Purism to make a mobile environment as good as Phosh and to work so well with the GNOME, Mobian and postmarketOS communities. I also never expected the community to solve so many of the driver issues with the PinePhone. It honestly has restored my faith in community-based development to support hardware, because before the PinePhone, I never saw it actually work well in practice, which is why I was skeptical about the PinePhone. The work being done by megous and the driver and firmware work on the Quectel modem show that my assumptions were wrong.

I still think that mobile Linux will never go mainstream without some company paying for a large portion of the dev work on the mobile environment. I expected the lack of progress that we have seen at UBports, LuneOS, Maemo Leste, Nemo Mobile, etc, but it looks like KDE Plasma Mobile is going to prove that community-based development with almost no corporate support actually can work–it is just going to be slower than Phosh’s development, so I expect that Plasma Mobile will have less appeal for mainstream users.

33 Likes

Wow, I haven’t seen such a big post I enjoyed so much to read for a long time. Thanks for your insights @amosbatto, I really appreciate that.

3 Likes

It cannot be proved, of course, but I am fairly convinced that without the presence of a Librem 5 in the market Pine64 would never pay too much attention to the freedom of the hardware.

Well, now Plasma Mobile (under development since 2015) has the corporate support of Pine64, which after energizing the enthusiasts of different mobile environments for months with its equidistance is now picking KDE as default UI. This happened despite Plasma Mobile’s underdeveloped state compared to Phosh, and despite a less convinving approach towards software freedom from the QT framework compared to the GTK framework (I will skip the technical weaknesses of QT compared to GTK, like the fact that the former is written in C++ instead of C despite being a core part of a Unix operating system where many programs are written in C…).

I agree, but it seems that Pine64 needs Purism more than it is willing to admit. What Purism also needs and is never mentioned enough is the existence of distributions like postmarketOS, which with their attempt to make GNU/Linux usable in current phones (albeit with plenty of proprietary blobs), help the spread of Phosh outside of its nest.

So far so good. I have only three wishes concerning the Librem 5 at this point:

  • That the Librem 5 keeps being successfull enough
  • That the future versions will be a bit thinner
  • That the future versions will be cheaper

I also wish that postmarketOS, Arch ARM, Manjaro ARM, Mobian and all the other mobile distros will be able to make GNU/Linux available for virtually every phone model in the market, no matter how many binary blobs its hardware requires.

5 Likes

To use Phosh outside of the Librem 5, PinePhone and PineTab, Phosh needs to be altered to allow it to be able to use libhybris, so that it can use Android drivers. (I read that it is also possible to use Android drivers by replacing libc with Bionic, so that may be another option.) I don’t know how hard it will be to make those changes to Phosh, but Purism has no interest in making those changes to the code, so it will only happen if some outside developers decide to implement it.

Sailfish OS and LuneOS support both Android drivers through libybris and Linux drivers. Ubuntu Touch used to only use Android drivers through libhybris, but it is now adding support for Linux drivers in order to run on the PinePhone/Tab and eventually the Librem 5. KDE Plasma Mobile recently decided to drop support for libhybris, so it will only be able to run on Linux drivers in the future (which is why it switched from the Nexus 5 to the PinePhone as its development device).

This is the hard part in my opinion. I speculate that Purism needs more Librem 5 orders to help finance mass production. I argue for the Librem 5 in Reddit’s r/Purism, because Purism is paying software developers which is expensive and the company needs the community to order a lot of the phones. I don’t worry about PINE64, because its business model doesn’t require crowdfunding software development, so there is little financial risk to the company.

Ideally, Purism would make a lower-end model based on the i.MX 8M Plus, that doesn’t have replaceable M.2 cards, which is thinner and cheaper, and make higher-end i.MX 8M Quad model with 4GB RAM and a 256GB eMMC which is designed for people who want a convergent PC.

My dream machine is a Librem 6 based on the RK3588 with 32GB RAM, 512GB eMMC, USB 3.1 Type-C, 8K video out, M.2 slots that support PCIe and pogo pins for adding USB 3.1 mods. In other words, I dream of a pcphone that can really replace the conventional desktop PC, but I suspect that the RK3588 will require blobs.

postmarketOS is already working to do that. For the rest of the standard desktop distros, you have the same problem with needing to use Android drivers through libhybris. With Plasma Mobile dropping support for libhybris and Phosh never having it, I can’t see it happening. Only with Lomiri (the Ubuntu Touch interface) may it be possible, but the current porting of Lomiri to Arch and Debian is based on using Linux drivers. Honestly, I doubt that Arch and Debian want to deal with Android drivers, since a lot of them are proprietary.

4 Likes

It would be easy to come to the conclusion that free hardware is very important even if it wouldn’t be your competitors strong selling point. Pine64 likely saw before they made the PinePhone how it was harder for the community to support their SBC when it needs proprietary drivers. You don’t even need to care about free software as an ideology to see that it has a business advantage in their case (though from what I’ve seen in their case they seem to care about it as an ideology too).

I do however think that they prioritize it higher now that they have the Librem 5 to compare themselves against, but I highly doubt that’s the biggest reason for them to push free software.

1 Like

You’ve worded that entire thing much better than I ever could ^^ thank you for the detailed explanation.

They did. But I think, of all the kind of rules we can try to live by, “Thou shalt not bite off more than you can chew” is not among the most critical ones. In fact, now that I think about it I kind of appreciate when someone takes a real good bite, even if it turns out to be a bit too much. Aim for the stars, maybe reach the treetops, you’re still better off than those still crawling around down in the mud who never dared to try something new.

10 Likes

Last time I checked postmarketOS was already able to use libhybris to run Phosh (see the pictures of Samsung Galaxy SII, OnePlus 6, Volla Phone, Samsung Galaxy A5 2015, Huawei P10 Lite and Huawei Honor 5X running postmarketOS with Phosh). That effort needs to be supported.

I believe that slowly Phosh will need to move into the hands of the GNOME Foundation and the community in general. It is fine if Purism develops its own apps and customizations like System76 does with Pop!_OS, but I think it will not have enough resources to take care of what the entire GNOME environment does when installed on a mobile phone.

Purism and Pine64 are not that different, they both sell hardware, although targeting different lines of products and audiences. If you are happy to have some sort of Raspberry Pi with a screen and a modem in your hands to tinker with, the PinePhone is a nice toy, but if you really want to have an actual smartphone, although a weirdo one, the Librem 5 is the only nice viable option as of today. Purism did an amazing job in adapting GNOME for its mobile phone, but sooner than we expect the only thing that will matter will be what kind of hardware they sell, not their contribution to the GNOME project (although that will be history and I am really thankful for it).

Purism is already on the right path. It needs just to keep moving.

3 Likes
1 Like

I’d agree, but the reason I mentioned that at all, is because that’s part of the issue that made people start caring about how many librem 5’s are released on certain dates in the first place. I know i can speak for myself, that I started to doubt if there would ever be a phone when I figured that purism might have took on a job that they might not have been able to finish.
For an eventual end result it may prove to have been worth reaching for the stars, but it would have resulted in a lot less rumors (and in effect, probably a higher number of sales), if there wasn’t so much doubt involved in purisms ability to deliver on it’s promises. Initial video’s from early backers that already have received their librem 5’s seem to indicate it has though :slight_smile:

2 Likes

That post on PINE64 is over a year old. I might be wrong but I believe that they have reversed engineered the EG25-G modem firmware so that it’s now fully somewhat open source.

No, not really. There is a community project that replaces the user space of the EG25-G firmware, but that’s very similar to flashing your custom ROM on a proprietary Android phone with integrated modem: the parts that do the real job are still as closed as ever.

This is a great development and certainly a welcome thing for user freedom (I’d like all modems to work that way!), but it doesn’t even stand close to “fully open modem firmware”. The actual firmware (Qualcomm DSPs) isn’t even touched at all.

4 Likes

I stand corrected. Thanks @dos.

Pine64 teaser

Pinephone V2 to be announced on October 15th ?

3 Likes

Nice. I’ll probably be able to get that years before the L5 that I ordered in January 2019.

1 Like

Given where Linux support currently stands with the RK3566 and Quartz64, PINE64 might be able to send you the hardware for the PinePhone 2, but it won’t be usable for quite a while. Unlike Purism, there are no employees at PINE64 who are going to do the kernel hacking. It looks like RK3566/68 will be faster than the i.MX 8M has been at getting good mainline Linux support, because Collabora has been working on getting mainline support for RK3566/68, so that should help. However, Rockchip is not like Intel and AMD in terms of getting their chips supported quickly in mainline Linux.

The PinePhone 1 had a huge advantage over the Librem 5 because it had good Linux support for its processor from day 1 and CRUST was already in development, but I expect the PinePhone 2 to be waiting on Linux support.

I think that the PinePhone 2 is going to eventually be the Linux phone that breaks into the mass market, because it will be cheap and it will have good enough performance to actually provide a decent camera, good convergence, and good graphics. However, I don’t expect it to happen fast, with a new chip and no paid software devs at Pine64 working on the phone.

2 Likes

I’m guessing the return of the Pinetab. What we can see of the shape of the device doesn’t match that of a phone

3 Likes

From what I understand, they will be using the same modem, so I’m pretty sure that everything will come together much faster than the PinePhone 1 did.