The wikis are now using the new authentication system.
If you did not migrate your account yet, visit https://idp-portal-info.suse.com/

HCL:PinePhone

Jump to: navigation, search
Pinephone booting to a graphical user interface, next to a Geeko plush

The purpose of the Pinephone isn’t only to deliver a functioning Linux phone to end-users, but also to actively create a market for such a device, as well as to support existing and well established Linux-on-Phone projects. Only openSUSE Tumbleweed is supported.

Plasma Mobile running on Tumbleweed, in a PinePhone

Technical Data

  • Allwinner A64 Quad Core SoC with Mali 400 MP2 GPU
  • 2GB/3GB of LPDDR3 RAM
  • 5.95″ LCD 1440×720, 18:9 aspect ratio (hardened glass)
  • Bootable Micro SD
  • 16GB/32GB eMMC
  • USB Type C (power, data and HSMI)
  • Quectel EG-25G with worldwide bands
  • WiFi: 802.11 b/g/n, single-band, hotspot capable
  • Bluetooth: 4.0, A2DP
  • GNSS: GPS, GPS-A, GLONASS
  • Vibrator
  • RGB status LED
  • Selfie and Main camera (2/5Mpx respectively)
  • Main Camera: Single OV6540, 5MP, 1/4″, LED Flash
  • Selfie Camera: Single GC2035, 2MP, f/2.8, 1/5″
  • Sensors: accelerator, gyro, proximity, compass, barometer, ambient light
  • 3 external buttons: up, down and power
  • Hardware killswitches: LTE/GNSS, Wi-Fi, microphone, cameras and headphone
  • Samsung J7 form-factor 3000mAh battery
  • Matte black finished plastic case
  • 3.5mm headphone jack

Apps

This list suggests what applications can be used to get certain capabilities going.

  • File manager: Nautilus, Portfolio, Maui Index
  • Camera: Megapixels
  • Telephony: Calls (ModemManager), Plasma Dialer (oFono)
  • SMS: Chatty (ModemManager) or Spacebar (oFono)
  • Terminal emulator: King's Cross, QMLKonsole
  • Software: GNOME Software, Discover
  • Web browsing: GNOME Web (epiphany - Firefox based), Angelfish (Chromium/QT WebEngine based), Firefox (with mobile-config-firefox), Chromium
  • Gallery: Maui Pix, Koko
  • Calculator: Kalk (not KCalc)
  • Drawing: Pikasso
  • PDF Viewer: Okular (okular-mobile subpackage)
  • Calendar: Calindori, DayKountdown
  • Alarms: KClock
  • Text editors: Maui Nota, Maui Buho
  • Music players and recorders: Maui Vvave, Elisa, Audacity, KRecorder
  • Feed reader: Alligator
  • Chat: Neochat (Matrix), Fractal (Matrix), Kaidan (Jabber/XMPP), Chatty (XMPP), Telegram (MTProto), Tok (MTProto), Axolotl (Signal)
  • Maps: GNOME Maps, Pure Maps

Some can be installed through flatpaks in case they are not available in our repositories. Currently we don't have any CuboCore CoreApps packaged.

The recommended ways to install software are: Zypper, OBS Package Installer, GNOME Software, Discover and Flatpak. We have the cnf (cannot find) tool to search what packages provide certain binaries, e.g. cnf gpspipe; this only works for repositories already on your system.

Flathub has to be enabled as it comes disabled by default.

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Programs already ported by the openSUSE community on Open Build Service can be installed using opi, e.g. opi kweather. We recommend you have the Packman repository added, so you can install software with restricted licenses, like many codecs.

Installing openSUSE in a Pinephone

As of the release 2020.12.16 Jumpdrive can be used to flash the eMMC memory directly. The procedure is the same as the sdcard. See the Pine64 wiki for more information.
  1. Download the image you want from here. Make a choice of phone enviroments:
    Susemini.png
    Version:
    GNOME Shell adaption for small devices, developed by Purism.
    Susemini.png
    Version:
    Plasma Mobile: Developed by the KDE community. This image is Experimental.

    If the direct links above do not work for you (as we are constantly building new images), please check the general download directory for the images.

  2. Flash the image to your storage unit (replace sdX with the device name of your storage). You can use lsblk to list your drives before and after plugging in the SD card/exposed eMMC, in order to select the correct drive.
    All previous data on the storage unit will be lost. Check first if the device you have selected is really the correct one!
    $ xzcat [image].raw.xz | sudo dd bs=4M of=/dev/sdX iflag=fullblock oflag=direct status=progress; sync
  3. Insert the SD card with the openSUSE image into your board.
  4. Power on the board.
    • Phosh: a welcome app will be started to walk you through the first boot steps.
  5. Have a lot of fun...
The default login goes with the username pine and the password 1234.
The root user's password is linux, you should set a different one using sudo passwd root.
Warning: In openSUSE Tumbleweed the correct way to update the system through the terminal is using zypper dup, not zypper up.

Current status

Feature Supported? Additional notes
Rear and front camera Development Use the megapixels app, it includes post-processing scripts to enhance image quality.
Camera flash Yes
WiFi Yes In Plasma Mobile, when prompted for a KWallet password, keep in mind that if you set one you will be asked for it every reboot. If you don't want to, just press Ok without typing anything.
Bluetooth Yes
GNSS/GPS Development A-GPS data is pushed on boot if it is not found.
Magnetometer, Ambient light, Accelerometer, Gyroscope Yes Supported via iio-sensor-proxy.
Vibration motor Yes
Proximity Yes On Phosh, the display is disabled when an object comes close to the sensor. In the case of Plasma Mobile, the screen does not currently turn off while in a call.
Notification LED Yes
Volume buttons Yes
Audio Yes
Mobile data Yes
SMS Yes
Calls Yes
USB OTG Yes Storage units may need to be manually mounted before they can be accessed. Run lsblk in a terminal session to see if your devices are detected.
Official dock Yes Mouse, keyboard, RJ-45 and HDMI work, as expected since this a matter of following the USB standard.
Wireless hotspot Yes Requires dnsmasq to be installed (it is included now), also the WiFi connectivity needs to enabled, else it will fail indicating that the device wlan0 is not available.
USB Tethering No
USB MTP No
System encryption No

Troubleshooting and suggestions

  • When updating, you may notice zypper will try to pull a lot of recommended packages. This can be solved by updating with the following arguments:
sudo zypper dup --no-recommends

This happens because our images are built without recommended packages. Inversely, to install all recommended packages that have not yet been installed:

sudo zypper dup --recommends

Usually lang (translation) subpackages are installed as part of the recommended packages.

  • If you have issues with the SIM card, try removing the PIN code from another device.
  • For YaST, note that the GUI does not work, but you can use the built-in Alt, Tab and arrow buttons (in QMLKonsole or Phosh's Squeekboard) to use the YaST2 TUI. Launch it by running yast2 in a terminal session (note that you can use it over SSH too).
  • If you have problems with audio playback make sure the correct output device (Internal speaker) and device profile settings (Default) are selected in the audio settings. Multimedia content on websites or container formats like mp4 may fail to play - try installing the necessary codecs. They are not included in openSUSE distributions for legal reasons.
  • The keyboard languages and emoji support for Plasma Mobile are not included by default. Add them:
    sudo zypper install maliit-keyboard2-lang maliit-keyboard2-emoji
    
  • To enable oFono logging (useful to diagnose problems in Plasma Mobile) use the following:
    systemctl stop ofono; systemctl cat ofono #copy the text
    systemctl edit ofono 
    #Now paste the text and replace:
##############################################
    ExecStart=/usr/sbin/ofonod -n
##############################################
    #with the following
##############################################
    Environment="ENABLE_AT_DEBUGGING=true"
    ExecStart= 
    ExecStart=/usr/sbin/ofonod -n -d
##############################################
    systemctl daemon-reload; systemctl start ofono
    journalctl --unit=ofono --no-pager -xb #print the log
  • Keep in mind Plasma Mobile uses oFono to interact with the modem, while Phosh uses ModemManager. The recommended tools to control the modem through the terminal are ofonoctl and mmcli, respectively. In the case of Plasma Mobile, if you don't have signal (0% intensity and no provider listed) try running ofonoctl online in the terminal.
  • To setup the WiFi connection easily through the terminal you can use nmtui or nmcli. There is a hard way using wpa_supplicant, which is the one in the case of JeOS (make sure wicked is not running):
systemctl stop wicked wickedd
wpa_passphrase SSID PASSWORD > /etc/wpa_supplicant/SSID.conf #replace SSID and PASSWORD with your configuration
ip link set wlan0 down; ip link set wlan0 up
wpa_supplicant -B -iwlan0 -c /etc/wpa_supplicant/SSID.conf -Dnl80211,wext
ip addr add DEVICEIP/SUBNET dev wlan0    #example: ip addr add 10.42.0.27/24 dev wlan0
#this ^ is your local IP, as DHCP/dhclient won't set one for you, choose whatever number you want as long as it is not already in use; use ip neigh to scan your local network from another device
ip route add default via GATEWAY||ROUTE  #example: ip route add default via 10.42.0.1
echo "nameserver 1.1.1.1">>/etc/resolv.conf #you need to add a DNS server, 1.1.1.1 is the Cloudflare DNS

If you want to use wicked, note that it is possible to configure the network via YaST.

  • You can use the sftp protocol to browse your phone files remotely, through the terminal or certain file browsers like Dolphin. MTP implementations are not provided yet for security reasons.

Contributing

If you want to contribute in packaging, testing or have any suggestions, don't hesitate to contact us via:

You can reach us for help in those chats case you run into any issues, but do keep in mind that we are all doing this voluntarily and work on the project with limited time.

We also have list of available tasks, ideas and notes in the openSUSE Etherpad.

The source code is available at the devel:ARM:Factory:Contrib:PinePhone Open Build Service project.

The following repositories are used to test and experiment changes:

These repositories are unstable and may risk leaving your device in an unusable state. Add them at your own risk.
zypper ar -p90 https://download.opensuse.org/repositories/home:/alefnode:/branches:/devel:/ARM:/Factory:/Contrib:/PinePhone/standard/home:alefnode:branches:devel:ARM:Factory:Contrib:PinePhone.repo
  • KDE:Frameworks5: branch with aarch64 builds of only the needed packages to get Plasma Mobile beta releases
zypper ar -p90 https://download.opensuse.org/repositories/home:/andresbs:/branches:/KDE:/Frameworks5/openSUSE_Tumbleweed/home:andresbs:branches:KDE:Frameworks5.repo
  • plasma-mobile: repository with KDE apps; note that they should also work on Phosh
zypper ar -p90 https://download.opensuse.org/repositories/home:/andresbs:/plasma-mobile/openSUSE_Tumbleweed/home:andresbs:plasma-mobile.repo
zypper ar -p90 https://download.opensuse.org/repositories/home:/andresbs:/pure-maps/openSUSE_Tumbleweed/home:andresbs:pure-maps.repo

External links