The state of the apps for Pinephone is looking good enough lately that I could actually consider daily-driving the GNU/Linux smartphone, but how reliable would it be as a phone if I put my T-Mobile SIM card into it?
My main concern was around the deep sleep mode of the Pinephone: to conserve battery life the phone suspends and turns off networking and everything. Would this affect reliable delivery of incoming text messages and phone calls?
As it turns out, everything works well enough except that MMS picture and group messaging is still not ready yet and you might miss surprise phone calls when the phone is sleeping (but you can just call them back later).
See the full blog post for my notes and details for the Mobian OS running the Phosh shell and a T-Mobile (US) SIM card. If you have a Pinephone, try it out on your own carrier.
Immediately upon booting the phone, the cell modem connected but I didn't have a 4G data connection by default. I just needed to manually enter T-Mobile's APN settings. A quick google brought me to T-Mobile's documentation on that as well as the Pine64 Wiki's page listing APN settings for a lot of carriers.
Settings -> Mobile -> (Advanced): Access Point Names
For T-Mobile I simply added
fast.t-mobile.com (username and password left empty)
and then I could load web pages in Firefox over the 4G connection.
To share your Pinephone's 4G connection over a WiFi network (WiFi tethering), this requires a one-time setup in the Terminal app and then is easy enough to use from then on.
The Mobian wiki has a page about this. Briefly, for the one-time setup you'll SSH into your Pinephone (or type this in the Terminal app) to create the hotspot for NetworkManager:
sudo nmcli device wifi hotspot ifname wlan0 \ con-name Hotspot ssid Pinephone password HotspotPassword
Here, "Hotspot" is the connection name for NetworkManager (I recommend leaving it as Hotspot), "Pinephone" is the WiFi SSID and "HotspotPassword" is its password.
Note: this command immediately activates the hotspot, so may disconnect your SSH session.
When the hotspot is active: you can turn it off from the "Settings -> WiFi" screen easily.
To activate the hotspot later: after the nmcli command above, NetworkManager now remembers the hotspot.
Phone calls should be very reliable if you're the one placing the call from your Pinephone. Voice and audio quality works great in both directions, you can enter DTMF tones to navigate automated menus, and so on.
I googled for a test phone number I could call and found 804-222-1111 which provides an echo service where you can test your microphone and speakers together. Navigating the menu ("press 3 for echo service") worked and quality was as good as I'd expect from any phone, eg. Android.
I used my Google Voice number running on an old Pixel phone to place incoming calls to my Pinephone.
If the phone is awake, e.g. plugged into a charging cable and so deep sleep is disabled, the phone reacts quickly to an incoming phone call. The screen turns on and the incoming call screen is visible within a couple seconds of the other end uplacing the call.
If the Pinephone was in deep sleep and received an incoming phone call, it didn't wake up and connect very fast. I counted once and it took 11 seconds, other times it slept through the entire ring.
Within seconds of dialing my Pinephone, the sleeping phone:
You're likely to miss surprise phone calls when the phone is sleeping. If you're expecting a call, keep your phone plugged in to suspend sleep.
Fortunately, you'll get a notification for the missed call and you can see it from the "Recents" tab of the Calls app, so you can just call them back.
For this test I sent text messages back and forth between Google Voice and my Pinephone to check latency and responsiveness in deep sleep.
SMS messaging works very reliably. Messages were delivered both ways within seconds of being sent, and if the phone is in deep sleep it still reacts as quickly to incoming messages. The blue notification LED begins blinking and the screen powers on (to the lock screen). The phone goes back to sleep shortly if ignored.
Notifications with the Chatty app (default SMS app on Mobian) behaved pretty strangely.
So, just remember to always close out of Chatty when you're done so you don't miss your SMS notifications!
MMS messaging (pictures and group chat ) is not yet working well, but it seems to be coming up on the horizon shortly. Some recent Pine64 forum threads:
Per Mobian's wiki for the Pinephone you can poke and prod at your MMS messages using the ModemManager CLI.
# Find your modem ID with `mmcli -L` # e.g. mine was: # /org/freedesktop/ModemManager1/Modem/8 [QUALCOMM INCORPORATED] QUECTEL Mobile Broadband Module # so modem ID was 8 $ mmcli -L # List the SMS/MMS messages the modem manager is hanging onto: $ mmcli -m (modem-id) --messaging-list-sms # Delete them by their ID numbers from the above. $ mmcli -m (modem-id) --messaging-delete-sms=(id) # Save the message to disk. $ mmcli -m (modem-id) -s (message-id) --create-file-with-data=(filename.bin)
Note: the latter doesn't save the photo sent to you over MMS, but saves a binary
file that contains a URL. Using
strings filename.bin should find and print this
URL, or it can be seen in hex notation via
Attempting to grab this URL returns an authentication error like:
$ curl -I 'https://ttnmmsget.msg.eng.t-mobile.com/mms/wapenc?T=XXXXXXXXXXX' HTTP/1.1 400 Bad Request Warning: 299 GBA "Generic Bootstrapping Architecture (3GPP TS 33.220) support is required to access the requested resource"
I saw some hints about using
curl --interface wwan0 to download over the 4G
modem but to no avail. I had heard people have shell scripts to pull their MMS
pictures for AT&T and other carriers, and I gave the jenky MMS
script a try.
jmms was only able to download the same binary files I got before
and it too ran into auth errors.
MMS support seems to be coming soon to natively "just work" in the Chatty app. In the mean time, ModemManager can become "clogged up" with these and you'll need to delete them if you can't find a script to pull them out for you.
I say yes! And especially when they get the MMS messages sorted out. I don't receive an awful lot of those, but some day somebody's going to rope me in to an MMS group conversation and I'll get it fragmented across a hundred threads, if I get anything at all.
On the software front, there are a lot of great mobile GNU/Linux apps that provide all my core requirements: password manager, web browser, messenger apps (Telegram official app; Signal clients on the horizon), and the little ones like Calculator, Files, Photos, and so on. I'm already able to spend hours scrolling Twitter and Reddit (via native Linux apps, even!) just like I do on my current main phone.
I currently use two Android phones: my "main phone" that has a cellular connection is a de-googled Pixel 3 that doesn't have any Google apps or services on it. And I carry around my older "googling phone", a Pixel 1 running the stock Android OS and Google apps.
On my de-googled phone, a lot of Google Play Store apps don't function correctly and I need to rely more on free and open source apps from the F-Droid app store. This works very well -- see my previous blog about Pinephone vs. de-googled Android.
But, my de-googled phone can't cast to Chromecast devices and so I can't easily cast and control YouTube, Netflix or Hulu. And some apps just don't work at all without Google. And so I carry around my older Pixel phone, with stock Android, as my Chromecast controller.
Similarly: the Pinephone would be my "main phone" with the cell connection and my Pixel 3 would be re-googled to be my new Chromecast remote controller and runner of the odd irreplaceable Android app. With 4G Hotspot Sharing I could give the Android phone data if needed while out and about.
Plus: the Pixel has a good camera and the Pinephone's camera is a potato.
As a "pocket-sized, full-on Linux PC" the Pinephone is already 💯 my dream device I've always wanted. But as a replacement to your typical Android or iOS smartphone: most of your apps won't work and you'll need to find alternatives. Compared to my de-googled Android, the only few Android apps I have that can't be used (well) on Pinephone yet are: Slack, Discord, Venmo (social payments) and a couple messenger apps like Kik. A lot of my friends are on Telegram which already works on Pinephone, tho I'd like to migrate to Signal just as soon as that works on Linux-mobile too.
Until MMS is working reliably, though, the SIM card is going back in my Android.
There is 1 comment on this page. Add yours.
This is a great write up.
I'm thinking of getting one and have been trying to find the answer to basic questions like- can it call and text?
Looks that way.
Wife still has a flip phone and doesn't want a google spy device, but knows she's eventually going to have to get something. She's not a techie, so this will be a hard sell. I'm hoping if I get a pinephone for me, maybe by the time I figure it out, enough upgrades and improvements well happen, that it'll be solid enough for her use.