The PinePhone (2019) uses the Allwinner A64 chip, built on a 40nm process. It has four Cortex-A53 cores and four threads, with a maximum frequency of 1.152GHz. The GPU is a Mali400MP2.
The 4G modem is an external Quectel EG25-G. Its firmware is closed-source, though scripts can talk to it.
RAM is either 2GB or 3GB of LPDDR3 SDRAM.
For a phone, the A64 is a power-hungry entry-level processor, and the performance is nothing to write home about. It is normal for the areas around the processor and modem to hit 40 to 50 degrees Celsius during operation.
Below are a few strategies for saving power and improving performance.
1. PinePhone Power Saving#
The most power-hungry component in the PinePhone is the communication module. The screen is not that bad, for once.
Most Linux distributions for the PinePhone currently use the Phosh desktop environment. In system settings -> “Power”, there is an option for how long the device should be idle before turning off the screen (Screen Blank). But turning off the screen does not save enough power, and the temperature will not drop much either.

You can also configure when “Automatic Suspend” triggers, separately for battery power and charging, to decide how long the phone should sit idle before entering suspend mode.

Once this mechanism triggers, it sets processes on the phone to “Suspend”. 4G and WIFI are also turned off to save power, which can lower the phone’s temperature. Some distributions keep music services playing and still allow calls during suspend, but apps such as alarms may be paused.
In the Phosh desktop environment, to keep an application from being interrupted by Suspend, prepend
gnome-session-inhibitbefore launching it. For example, to start the clock:
gnome-session-inhibit --inhibit suspend gnome-clock- For more detailed tuning, install the “Tweaks” app provided by postmarketOS. If your distribution does not package it, download it yourself and compile it.
2. Overclock the PinePhone#
The CPU, GPU, and DRAM can all be overclocked. Overclocking or underclocking requires compiling the kernel yourself, and it may damage the hardware.
See Danct12’s article: How to overclock (or underclock) the PinePhone CPU
3. Tune PinePhone Thermals#
The PinePhone’s thermal controls can be adjusted in software. Misconfiguring them may damage the hardware.
- Check the current CPU temperature:
cat /sys/class/thermal/thermal_zone0/temp- Check the current thermal policy. It will list three levels (
*is the level number): 55, 75, and 100 degrees.
grep . /sys/class/thermal/thermal_zone0/trip_point_*_temp- Check the thermal trip point types. They are divided into “passive”, “active”, “hot”, and “critical”. By the way, the battery also has its own management chip and will shut the device down automatically in dangerous situations.
grep . /sys/class/thermal/thermal_zone0/trip_point_*_type- To modify the thermal trip temperatures, enter the numbers. The WIKI notes that you should not set the maximum thermal control value above 110 degrees.
echo 55000 > /sys/class/thermal/thermal_zone0/trip_point_0_temp
echo 75000 > /sys/class/thermal/thermal_zone0/trip_point_1_temp
echo 100000 > /sys/class/thermal/thermal_zone0/trip_point_2_temp