Difference between revisions of "PinePhone"

From PINE64
Jump to navigation Jump to search
(clarification on STP file)
(Fixed store link)
 
(229 intermediate revisions by 33 users not shown)
Line 1: Line 1:
The PinePhone is a smartphone created by Pine64, capable of running mainline Linux and supported by many partner projects. A "braveheart" edition is currently available for purchase from the PINE64 store, though it should be noted that this version comes without a preinstalled OS, and is geared specifically towards tinkerers and hackers. People looking for a stable consumer-grade phone should wait for the final release, which is expected to occur in March 2020 and will be available for at least five years.
+
The PinePhone is a smartphone created by Pine64, capable of running mainline Linux and supported by many partner projects. The BraveHeart Edition was the first publicly-available version of the phone, though it came without a fully functional OS (factory test image) and was geared specifically towards tinkerers and hackers. Its successor is the Community Edition, the first Community Edition started to ship in June 2020. The phone will be available for at least five years.
 +
 
 +
== First time installation ==
 +
 
 +
[[File:PinePhone-3.jpg|400px|thumb|right|PinePhone is capable of running a multitude of different Linux mobile OSes]]
 +
 
 +
[[File:Pinephone_rendering_blank.png|400px|thumb|right|Rendering of the back and front of PinePhone]]
 +
 
 +
From the factory the battery has a sticker on it that isolates the battery from the phone. The battery '''will not''' charge until this is removed.
 +
 
 +
[[File:Pinephone_warning.png|none|left|400px]]
 +
 
 +
After unboxing remove the back panel using the notch in the corner of the back panel. Then remove the battery and peel off the clear plastic sticker below it that isolates the charging contact. Then replace the battery, see [[PinePhone#Battery|Battery]] for more information.
 +
 
 +
The SIM card has to be placed in the lower slot, while the microSD has to be placed in the upper slot, as pictured here:
 +
 
 +
[[File:Pinephone_backside.png|none|left|400px]]
  
 
== Specifications ==
 
== Specifications ==
Line 11: Line 27:
 
: '''Resolution:''' 1440x720, 18:9 ratio <br>
 
: '''Resolution:''' 1440x720, 18:9 ratio <br>
 
'''System on Chip:''' [https://linux-sunxi.org/A64 Allwinner A64] <br>
 
'''System on Chip:''' [https://linux-sunxi.org/A64 Allwinner A64] <br>
'''RAM:''' 2GB LPDDR3 SDRAM <br>
+
'''RAM:''' 2GB or 3GB LPDDR3 SDRAM<br>
'''Internal Storage:''' 16GB eMMC, extendable up to 2TB via microSD, supports SDHC and SDXC <br>
+
'''Internal Storage:''' 16GB or 32GB eMMC, extendable up to 2TB via microSD, supports SDHC and SDXC <br>
 
'''Back Camera:''' Single 5MP, 1/4", LED Flash <br>
 
'''Back Camera:''' Single 5MP, 1/4", LED Flash <br>
 
'''Selfie Camera:''' Single 2MP, f/2.8, 1/5" <br>
 
'''Selfie Camera:''' Single 2MP, f/2.8, 1/5" <br>
 
'''Sound:''' Loudspeaker, 3.5mm jack & mic (jack doubles as hardware UART if killswitch 6 is deactivated) <br>
 
'''Sound:''' Loudspeaker, 3.5mm jack & mic (jack doubles as hardware UART if killswitch 6 is deactivated) <br>
'''Communication: [http://files.pine64.org/doc/datasheet/project_anakin/LTE_module/Quectel_EG25-G_LTE_Specification_V1.1_Preliminary_20180522%20(002).pdf EG25-G]'''
+
'''Communication: G25-G'''
 
: '''LTE:''' B1, B2, B3, B4, B5, B7, B8, B12, B13, B18, B19, B20, B25, B26, B28, B38, B39, B40, B41
 
: '''LTE:''' B1, B2, B3, B4, B5, B7, B8, B12, B13, B18, B19, B20, B25, B26, B28, B38, B39, B40, B41
 
: '''WCDMA:''' B1, B2, B4, B5, B6, B8, B19
 
: '''WCDMA:''' B1, B2, B4, B5, B6, B8, B19
Line 24: Line 40:
 
: '''GNSS:''' GPS/GLONASS/BeiDou/Galileo/QZSS, with A-GPS
 
: '''GNSS:''' GPS/GLONASS/BeiDou/Galileo/QZSS, with A-GPS
 
'''Sensors:''' Accelerometer, gyro, proximity, ambient light, compass <br>
 
'''Sensors:''' Accelerometer, gyro, proximity, ambient light, compass <br>
'''[[#Killswitch configuration|Killswitches]]:''' Modem, Wifi & Bluetooth, Microphone, Cameras <br>
+
'''Killswitches:''' Modem, WiFi & Bluetooth, Microphone, Cameras <br>
'''[[#Battery|Battery]]:''' 2750-3000 mAh [https://wiki.pine64.org/images/0/04/PinePhone_Battery_model_QZ01-396172-2750.pdf Lithium ion] (nominally replaceable with any Samsung J7 form-factor battery) <br>
+
'''Battery:''' Lithium-ion, rated capacity 2800mAh (10.64Wh), typical capacity 3000mAh (11.40Wh) (nominally replaceable with any Samsung J7 form-factor battery) <br>
'''I/O:''' USB Type-C (SlimPort), USB Host, DisplayPort Alternate Mode output, 15W 5V 3A Quick Charge, follows USB PD specification
+
'''I/O:''' USB Type-C, USB Host, DisplayPort Alternate Mode output, 15W 5V 3A Quick Charge, follows USB PD specification
  
== Hardware Revisions ==
+
== Components ==
 +
{| class="wikitable"
 +
! Component
 +
! Model
 +
|-
 +
| Touchscreen
 +
| Goodix GT917S
 +
|-
 +
| Rear camera
 +
| OmniVision OV5640
 +
|-
 +
| Camera flash
 +
| SGMICRO SGM3140
 +
|-
 +
| Front camera
 +
| GalaxyCore GC2145
 +
|-
 +
| LCD
 +
| Xingbangda XBD599
 +
|-
 +
| WiFi
 +
| Realtek RTL8723CS
 +
|-
 +
| Bluetooth
 +
| Realtek RTL8723CS
 +
|-
 +
| Modem
 +
| Quectel EG25-G
 +
|-
 +
| GNSS/GPS
 +
| Quectel EG25-G
 +
|-
 +
| Magnetometer
 +
| ST LIS3MDL
 +
|-
 +
| Ambient light / Proximity
 +
| SensorTek STK3335
 +
|-
 +
| Sixaxis
 +
| InvenSense MPU-6050
 +
|-
 +
| Vibration motor
 +
| Unknown model
 +
|-
 +
| Notification LED
 +
| LED0603RGB
 +
|-
 +
| Volume buttons
 +
| Buttons connected to the KEYADC
 +
|-
 +
| Power button
 +
| X-Powers AXP803
 +
|-
 +
| Battery fuel gauge
 +
| X-Powers AXP803
 +
|}
  
 +
See the [[PinePhone_component_list|PinePhone Component List]].
 +
 +
== Hardware revisions ==
 +
 +
# [[Project Anakin]]
 
# [[Project Don't be evil|"Project Don't Be Evil" devkit]]
 
# [[Project Don't be evil|"Project Don't Be Evil" devkit]]
 
# [[PinePhone v1.0 - Dev|PinePhone v1.0 - Developer batch]]
 
# [[PinePhone v1.0 - Dev|PinePhone v1.0 - Developer batch]]
 
# [[PinePhone v1.1 - Braveheart]]
 
# [[PinePhone v1.1 - Braveheart]]
 +
# [[PinePhone v1.2‎]] - Ubports Community Edition
 +
# [[PinePhone v1.2a]] - Community Editions
 +
 +
== Hardware accessory ==
 +
 +
=== PinePhone hardware accessory compatibility ===
 +
See [[PinePhone Hardware Accessory Compatibility]] for a list of devices working with the PinePhone (depending on their OS support).
 +
 +
=== USB-C connector ===
 +
 +
The USB-C can be used to power the device, and offers USB2 host and OTG possibilities, and also can make use of the USB-C capability to integrate HDMI signals. Some USB-C hubs are available that offer power throughput, USB connection, HDMI port and Ethernet connection. The driver that would make this connection available is not supported at this time.
 +
 +
=== Pogo pins ===
 +
 +
The PinePhone has 6 pogo pins on the back allowing for custom hardware extensions such as wireless charging, an IR blaster, a keyboard extension or extended battery case. The pogo pins provide access to an interrupt line, power input to charge the battery, power source and an I2C interface.
 +
 +
[[File:Pinephone pogo.png|none|400px]]
 +
 +
{| class="wikitable"
 +
| Interrupt
 +
| SDA
 +
| SCL
 +
|-
 +
| 5V / VBUS
 +
| VBAT
 +
| GND
 +
|}
  
== Hardware Addons ==
+
The VBUS pin is powered by USB and is 5V. The second power pin is VBAT, which connects to the battery voltage. The I2C and interrupt lines have pull-ups on the phone side. The I2C lines are pulled up to 3V3 by the phone.
  
The PinePhone has 6 "pogo pins" on the back allowing for custom hardware extensions such as wireless charging or an IR blaster. The pogo pins provide access to an interrupt line, power input to charge the battery, 3.3v power source, and an I2C interface.
+
For a breakout board see [https://github.com/SMR404/PinephonePogoBreakout here]. For an example project see Martijn's blog post [https://blog.brixit.nl/making-a-backcover-extension-for-the-pinephone/ <i>"Making a backcover extension for the PinePhone"</i>].
  
'''A step (3D model) file for the back cover (and many other components of the phone) is [https://app.box.com/s/g1n9cvg60cg66utdhs7m5my1ftvd0jj8 freely available] for creating custom cases that interface with the pogo pins.'''
+
=== Back cover ===
 +
A step file for the back cover for creating custom cases is freely available [http://files.pine64.org/doc/PinePhone/PinePhone%20Back%20Cover%20ver%200.5.stp here].
 +
 
 +
=== Serial console ===
 +
 
 +
The PinePhone has a serial port in the headphone connector, it's activated by the 6th contact on the dipswitch. If the switch is set to "on", the headphone connector is in audio mode, if it is set to "off" it's in UART mode. The UART serial connection can also be used for communication with other devices from the PinePhone.
 +
 
 +
The UART is 115200n8.
 +
 
 +
The pinout for the serial connector is:
 +
 
 +
* Tip: RX
 +
* Ring: TX
 +
* Sleeve: GND
 +
 
 +
[[File:PinePhone_Serial_Cable.png|none|400px]]
 +
 
 +
You can buy a serial debug cable from the [https://pine64.com/product/pinebook-pinephone-pinetab-serial-console/ Pine64 Store]. The store cable uses a 4 ring plug, as seen in the [http://files.pine64.org/doc/pinebook/guide/Pinebook_Earphone_Serial_Console_Developer_Guide.pdf here], but a 3 ring plug works just as well. The cable uses a CH340 chipset based serial to USB converter, but any 3.3v serial connection can be used. Because it is a "host"/DTE it means that you need a ''cross modem cable'' ([https://en.wikipedia.org/wiki/Null_modem Null Modem]) with TX on Tip to be connected to RX. A cable like e.g. [https://www.ftdichip.com/Products/Cables/USBTTLSerial.htm FTDI TTL-232R-3V3-AJ] which has TX on Tip and RX on Ring fits perfectly.
  
 
== Killswitch configuration ==
 
== Killswitch configuration ==
  
The PinePhone features six switches that can be used to configure its hardware. They are numbered 1-6, with switch 1 located nearest to the modem. Their on position is toward the top of the phone.
+
[[File:PinePhone Kill Interruptors de Maquinari del PinePhone 4529.jpg|320px|thumb|right|Detail of DIP switch]]
  
[[File:PinePhone-main-board.jpg|600px|thumb|centre|Photo of Developer mainboard courtesy of Martijn Braam, postmarketOS]]
+
The PinePhone features six switches that can be used to configure its hardware. They are numbered 1-6, with switch 1 located nearest to the modem. Their "on" position is toward the top of the phone.
  
# Modem: On enables 2G/3G/4G communication and GNSS hardware, off disables.
+
{| class="wikitable"
# WiFi/BT: On enables Wi-Fi and Bluetooth communication hardware, off disables.
+
|-
# Microphone: On enables audio input from on-board microphones (not 3.5mm jack), off disables.
+
! Number
# Rear camera: On enables the rear camera, off disables.
+
! Name
# Front camera: On enables the front camera, off disables.
+
! Explanation
# Headphone: On enables audio input and output via the 3.5mm audio jack, off switches the jack to hardware UART mode.
+
! Description
 +
|-
 +
| 1
 +
| Modem
 +
| Pulls Q1501 gate up (FET killing modem power)
 +
| "On" enables 2G/3G/4G communication and GNSS hardware, "off" disables it.
 +
|-
 +
| 2
 +
| WiFi / Bluetooth
 +
| Pulls up CHIP_EN
 +
| "On" enables WiFi and Bluetooth communication hardware, "off" disables it.
 +
|-
 +
| 3
 +
| Microphone
 +
| Breaks microphone bias voltage from the SoC
 +
| "On" enables audio input from on-board microphones (not 3.5mm jack), "off" disables it.
 +
|-
 +
| 4
 +
| Rear camera
 +
| Pulls up PWDN on OV5640
 +
| "On" enables the rear camera, "off" disables it.
 +
|-
 +
| 5
 +
| Front camera
 +
| Pulls up PWDN on GC2145
 +
| "On" enables the front camera, "off" disables it.
 +
|-
 +
| 6
 +
| Headphone
 +
| Pulls up IN2 on analog switch BCT4717ETB
 +
| "On" enables audio input and output via the 3.5mm audio jack, "off" switches the jack to hardware UART mode.
 +
|}
 +
 
 +
== Camera ==
 +
 
 +
[[File:Rose.jpg|400px|thumb|none|Example picture taken on the PinePhone's rear camera by Martijn Braam.]]
  
 
== Battery ==
 
== Battery ==
  
The [https://wiki.pine64.org/images/0/04/PinePhone_Battery_model_QZ01-396172-2750.pdf supplied battery] is [https://forum.pine64.org/showthread.php?tid=8120&pid=53307#pid53307 meant to be] compatible with Samsung part number EB-BJ700BBC / BBE / CBE from the 2015 J7 phone. There is [https://forum.pine64.org/showthread.php?tid=8563&pid=55053#pid55053 a report] that the EB-BJ700CBE isn't quite the same size, causing the back not to fit properly.
+
{{Hint|The EG25 modem and RTL8723CS WiFi/bluetooth do not work without battery power, even if you are supplying enough power to the PinePhone with USB-C.}}
 +
 
 +
The phone ships with a plastic sticker between the battery and the phone. You need to open the back cover (gently), then remove the battery and finally remove the sticker and check that the pins aren't bent. This is to protect the device from turning on during shipping.
 +
 
 +
The [http://files.pine64.org/doc/datasheet/pinephone/PinePhone%20QZ01%20Battery%20Specification.pdf supplied battery] is [https://forum.pine64.org/showthread.php?tid=8120&pid=53307#pid53307 meant to be] compatible with Samsung part number EB-BJ700BBC / BBE / CBE from the 2015 J7 phone.  
 +
* The extended life aftermarket BBU does fit, although it is a tight fit.
 +
* There is [https://forum.pine64.org/showthread.php?tid=8563&pid=55053#pid55053 a report] that the EB-BJ700CBE isn't quite the same size, causing the back not to fit the BraveHeart Edition properly.
  
 
The battery terminals, in order from nearest the edge to nearest the middle, are:
 
The battery terminals, in order from nearest the edge to nearest the middle, are:
Line 64: Line 225:
 
# not connected
 
# not connected
  
The battery includes a protection circuit that isolates it in a number of fault conditions, including if it is discharged too far. The fully discharged battery [https://forum.pine64.org/showthread.php?tid=8563&pid=55377#pid55377 can be recharged] by connecting the phone to a charger. Once it has charged sufficiently you wil be able to boot the phone.
+
The battery includes a protection circuit that isolates it in a number of fault conditions, including if it is discharged too far. The fully discharged battery [https://forum.pine64.org/showthread.php?tid=8563&pid=55377#pid55377 can be recharged] by connecting the phone to a charger. Once it has charged sufficiently you will be able to boot the phone.
 +
 
 +
If your battery is hard to remove from the phone, try loosening the screws around it. Possibly cutting up a piece of plastic and sliding it under the battery as a pull tab can work too.
 +
 
 +
<gallery mode="packed", heights=300px>
 +
Image:PinePhone battery1.png|Photo of Brave Heart case from OSAKANA TARO on Twitter
 +
Image:PinePhone battery3.jpeg|Photo of Brave Heart battery sticker from OSAKANA TARO on Twitter
 +
</gallery>
 +
 
 +
== Modem and carrier support ==
 +
=== APN settings ===
 +
 
 +
For tested APN settings and how to apply them see [[PinePhone APN Settings]].
 +
 
 +
=== Carrier support ===
 +
The page [[PinePhone Carrier Support]] contains information about the frequency support of different carriers and hints on setting up cellular network connectivity.
 +
 
 +
=== Documents ===
  
== Modem and Carrier Support ==
+
There is a document about using the modem from January 18th 2020 by user ''megi'' [https://megous.com/dl/tmp/modem.txt here]. The script at the end to disable the modem before power off is pretty essential to avoid corrupting your modem's flash memory.
  
To check if the PinePhone is supported on your carrier:
+
=== Firmware modifications ===
  
Search for your carrier on [https://www.frequencycheck.com/ frequencycheck.com] and compare the carrier's LTE/GSM/WCDMA frequencies to the PinePhone's supported frequencies (listed under the [[#Specifications|specifications]] section).
+
See [[PineModems]] for more information regarding modem bootloader unlocking, building a custom modem firmware and modem recovery.
  
It is likely that there will be a few frequencies that your carrier uses which are not supported by the PinePhone. Not all of the carrier's frequencies need to be supported by the PinePhone for it to work - as long as ''most'' of them are supported, you will still get good coverage.
+
=== Voice mail ===
 +
 
 +
Some phone operating systems may not have support for accessing your voicemail by holding down the 1 key. If you are in Canada and using rogers or a rogers associated carrier (such as ''Chatr''), you can access your voice mail by calling an external number, see: https://www.howardforums.com/showthread.php/913346-Rogers-GSM-Voicemail-Retrieval-Numbers
 +
 
 +
In America, AT&T also has support for accessing your voicemail via an external phone number: https://www.att.com/support/article/wireless/KM1009101/
  
 
== Operating Systems ==
 
== Operating Systems ==
The PinePhone will automatically boot from microSD if a bootable card is inserted. Although it is technically possible to use any ARM distro (because the PinePhone uses the mainline kernel), there are a few that are designed specifically for phones:
 
* [[#postmarketOS|postmarketOS]]
 
* [[#Ubuntu Touch|Ubuntu Touch]]
 
* [[#Sailfish OS|Sailfish OS]]
 
* [[#Maemo Leste|Maemo Leste]]
 
* [[#LuneOS|LuneOS]]
 
* [[#Manjaro|Manjaro]]
 
  
=== postmarketOS ===
+
The PinePhone will automatically boot from microSD if a bootable card is inserted. Although it is technically possible to use any ARM distribution (because the PinePhone uses the mainline kernel), there are a few that are designed specifically for mobile use on devices like the PinePhone.
postmarketOS is a preconfigured version of [https://www.alpinelinux.org/ Alpine Linux] for mobile devices. The latest builds can be downloaded from the [https://images.postmarketos.org/pinephone/ images page] to be flashed to the PinePhone.
+
 
 +
=== Software releases ===
 +
 
 +
The [[PinePhone Software Releases]] page has a complete list of currently supported phone-optimized Operating System images that work with the PinePhone as well as other related software information. As soon as more patches get mainlined and distributions ship with the updated kernel, they will also be able to run unmodified on the device.
 +
 
 +
=== Installation instructions ===
 +
 
 +
For instructions on how to install the operating systems to the eMMC or SD card see [[PinePhone Installation Instructions]].
 +
 
 +
=== Flashing eMMC using Jumpdrive ===
 +
 
 +
[[File:jumpdrive.jpg|400px|thumb|right|Jumpdrive running on the PinePhone]]
 +
The internal eMMC flash storage can be flashed using the Jumpdrive utility by Danct12 and Martijn from postmarketOS.
 +
This utility boots from micro SD and exposes the internal eMMC flash storage when the PinePhone is connected to a computer.
 +
The process of flashing an OS to the exposed and mounted eMMC is identical to that of any other storage medium - e.g. a SD card. You can use the 'DD' command or a utility such as Etcher or Gnome Disks, etc.
 +
 
 +
Latest Jumpdrive can be found [https://github.com/dreemurrs-embedded/Jumpdrive/releases/ here].
 +
 
 +
==== Detailed usage instructions ====
 +
 
 +
# Download the Jumpdrive image
 +
# Flash the Jumpdrive image to a micro SD card
 +
# Boot the PinePhone from the Jumpdrive micro SD card
 +
# Connect the PinePhone to your computer using USB-A -> USB-C cable
 +
# Flash the exposed PinePhone drive (e.g. /dev/mm..., check for the right device in dmesg, GNOME disks, or similar, and make sure it's unmounted) with your chosen OS image
 +
# Once the flashing process is complete, disconnect the PinePhone from your PC, power it down and remove the Jumpdrive SD card
 +
# The process is now finished, and you can boot from eMMC
 +
 
 +
Jumpdrive also acts as a rescue image in case if you messed up your installation. To do so, you can telnet to '''172.16.42.1''', mount rootfs and fix it!
 +
 
 +
==== Resize file system ====
 +
 
 +
If you flash a 4GB image distribution (such as phosh+debian) to your eMMC, your eMMC will only have a 3.7GB partition on it. To use the entire 14.7GB on the eMMC, run the following commands:
 +
 
 +
# sudo cfdisk /dev/sdX
 +
# Change to [Resize] in the ncurses program, resize the 3.7GB partition to 14.7GB, and [Write]
 +
# sudo resize2fs /dev/sdXY
 +
 
 +
Replace X with your drive's name. Replace Y with the partition you resized in cfdisk.
 +
 
 +
==== Feedback ====
 +
 
 +
If you've found an issue or want to improve the tool consider these sites:
 +
 
 +
* Issues: https://github.com/dreemurrs-embedded/Jumpdrive/issues
 +
* Pull Requests: https://github.com/dreemurrs-embedded/Jumpdrive/pulls
 +
 
 +
== Frequently asked questions ==
 +
 
 +
For a list of frequently asked questions (including information regarding the shipping) see [[PinePhone FAQ]].
 +
 
 +
== Press ==
 +
 
 +
For an overview about media of the PinePhone you can use for the news, blogs, or similar see [[PinePhone Press]].
 +
 
 +
== PinePhone board information, schematics and certifications ==
 +
* PinePhone mainboard schematic:
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20v1.2a%20Released%20Schematic.pdf PinePhone mainboard Released Schematic ver 1.2a]
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20v1.2%20Released%20Schematic.pdf PinePhone mainboard Released Schematic ver 1.2]
 +
** [[PinePhone_v1.2|PinePhone schematic ver 1.2 change list]]
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20Schematic%20v1.1%2020191031.pdf "Braveheart" PinePhone mainboard Schematic ver 1.1]
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20mainboard%20top%20placement%20v1.1%2020191031.pdf "Braveheart" PinePhone mainboard component top placement drawing ver 1.1]
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20mainboard%20bottom%20placement%20v1.1%2020191031.pdf "Braveheart" PinePhone mainboard component bottom placement drawing ver 1.1]
 +
* PinePhone USB-C small board schematic:
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20USB-C%20small%20board%20schematic%20v1.0%2020190730.pdf PinePhone USB-C small board Schematic ver 1.0]
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20USB-C%20small%20board%20top%20placement%20v1.0%2020190730.pdf PinePhone USB-C small board component top placement drawing ver 1.0]
 +
** [http://files.pine64.org/doc/PinePhone/PinePhone%20USB-C%20small%20board%20bottom%20placement%20v1.0%2020190730.pdf PinePhone USB-C small board component bottom placement drawing ver 1.0]
 +
* PinePhone certifications:
 +
** [http://files.pine64.org/doc/cert/PinePhone%20FCC%20SDOC%20Certificate-S19112602605001.pdf PinePhone FCC Certificate]
 +
** [https://fcc.report/FCC-ID/2AWAG-PINEPHONE RF Exposure SAR Information from FCC ID site]
 +
** [http://files.pine64.org/doc/cert/PinePhone%20CE%20RED%20Certificate-S19112602602.pdf PinPhone CE RED Certificate]
 +
** [http://files.pine64.org/doc/cert/PinePhone%20ROHS%20Report.pdf PinePhone ROHS Report]
 +
** PinePhone's GSMA TAC (Type Allocation Code) is 86769804
 +
 
 +
== Datasheets for components and peripherals ==
 +
 
 +
* Allwinner A64 SoC information:
 +
** [http://files.pine64.org/doc/datasheet/pine64/A64%20brief%20v1.0%2020150323.pdf Allwinner A64 SoC brief introduction]
 +
** [http://files.pine64.org/doc/datasheet/pine64/A64_Datasheet_V1.1.pdf Allwinner A64 SoC Data Sheet V1.1 (Official Released Version)]
 +
** [http://files.pine64.org/doc/datasheet/pine64/Allwinner_A64_User_Manual_V1.0.pdf Allwinner A64 SoC User Manual V1.0 (Official Release Version)]
 +
 
 +
* X-Powers AXP803 PMU (Power Management Unit) information:
 +
** [http://files.pine64.org/doc/datasheet/pine64/AXP803_Datasheet_V1.0.pdf AXP803 PMIC datasheet]
 +
 
 +
* LPDDR3 (178 Balls) SDRAM:
 +
** [http://files.pine64.org/doc/datasheet/pinephone/ATL3A1632H12A_mobile_lpddr3_11x11.5_v1.0_1600.pdf Artmem LPDDR3 datasheet]
 +
 
 +
* eMMC information:
 +
** [http://files.pine64.org/doc/datasheet/pinephone/Kimtigo_fbga153_16_32_64_eMMC_datasheet_v1.3.pdf Kimtigo eMMC datasheet]
 +
 
 +
* CMOS camera module information:
 +
** [http://files.pine64.org/doc/datasheet/pinephone/QZ01-rear-2019-0717(HW)%20Model.pdf PinePhone 5M Pixel Real CMOS Image Sensor Module]
 +
** [http://files.pine64.org/doc/datasheet/pinephone/OV5640_datasheet.pdf OV5640 5MP CMOS Image Sensor SoC for Rear Module datasheet]
 +
** [http://files.pine64.org/doc/datasheet/pinephone/QZ01-front-2019-0717(HW)%20Model.pdf PinePhone 2M Pixel Front CMOS Image Sensor Module]
 +
** [http://files.pine64.org/doc/datasheet/pinephone/GC2145%20CSP%20DataSheet%20release%20V1.0_20131201.pdf GC2145 2MP CMOS Image Sensor SoC for Front Module datasheet]
 +
 
 +
* LCD touch screen panel information:
 +
** [http://files.pine64.org/doc/datasheet/pinephone/PinePhone%20LCD-QZ01.pdf 5.99" 1440x720 LCD IPS Panel specification]
 +
** [http://files.pine64.org/doc/datasheet/pinephone/ST7703_DS_v01_20160128.pdf ST7703 LCD Controller datasheet]
 +
** [http://files.pine64.org/doc/datasheet/pinephone/GT917S-Datasheet.pdf GOODiX GT917S Capacitive Touch Controller datasheet]
 +
 
 +
* Lithium battery information:
 +
** [http://files.pine64.org/doc/datasheet/pinephone/PinePhone%20QZ01%20Battery%20Specification.pdf PinePhone Lithium Battery specification]
 +
** [http://files.pine64.org/doc/datasheet/pinephone/PinePhone%20QZ01%20Battery%20ZCV%20Curve%20Chart.xlsx PinePhone Lithium Battery ZCV curve chart]
 +
 
 +
* WiFi/BT module information:
 +
** [http://files.pine64.org/doc/datasheet/pine64/RTL8723BS.pdf RTL8723BS/RTL8723CS specification]
  
More information is available at [https://postmarketos.org postmarketos.org] and on their [https://wiki.postmarketos.org/wiki/PINE64_PinePhone_(pine64-pinephone) dedicated PinePhone wiki page].
+
* LTE module information:
 +
** [https://www.quectel.com/UploadFile/Product/Quectel_EG25-G_LTE_Standard_Specification_V1.2.pdf Quectel EG25-G LTE Module specification]
 +
** [[Media:Quectel EC25EC21 AT Commands Manual V1.2.pdf|EC25&EC21 AT Commands Manual]]
  
=== Ubuntu Touch ===
+
* Sensors:
[https://ubuntu-touch.io/ Ubuntu touch] is a mobile version of Ubuntu developed by the UBports community. Images can be downloaded from [https://ci.ubports.com/job/rootfs/job/rootfs-pinephone/ here]. The default password is <code>phablet</code>. In the future, Ubuntu Touch will be able to be installed onto the PinePhone with the [https://ubuntu-touch.io/get-ut UBports installer] GUI tool.
+
** [https://www.st.com/en/mems-and-sensors/lis3mdl.html ST LIS3MDL 3-axis Magnetomater Datasheet]
 +
** [https://www.invensense.com/products/motion-tracking/6-axis/mpu-6050/ InvenSense MPU-6050 Six-Axis (Gyro + Accelerometer) MEMS datasheet]
 +
** [http://www.sensortek.com.tw/en/product/Proximity_Sensor_with_ALS.html SensorTek STK3335 Ambient Light Sensor and Proximity Sensor]
  
=== Sailfish OS ===
+
* Digital video to USB-C bridge:
The latest Sailfish OS image can be installed using the [https://raw.githubusercontent.com/sailfish-on-dontbeevil/flash-it/master/flash-it.sh flashing script].
+
** [https://www.analogix.com/en/system/files/AA-002281-PB-6-ANX7688_Product_Brief.pdf ANX7688 product brief]
  
The script downloads the image and bootloader, extracts everything and burns it onto the SD card. '''Note:''' The script will format and erase the SD card!
+
* Case information:
 +
** [http://files.pine64.org/doc/datasheet/pinephone/PinePhone%20Exploded%20Diagram%20ver%201.0.pdf PinePhone case exploded diagram]
 +
** [http://files.pine64.org/doc/datasheet/pinephone/PinePhone%20Back%20Cover.stp PinePhone back cover 3D file]
  
'''Instructions:'''
+
* Other components:
# Download the flashing script
+
** See links in the [[PinePhone_component_list|Component List]]
# Insert a microSD card in your device
 
# Make the script executable: <code>chmod +x flash-it.sh</code>
 
# Execute it: <code>./flash-it.sh</code>
 
# Follow the instructions. Some commands in the script require root permissions.
 
  
=== Nemo Mobile ===
+
== Developer works ==
Nemo Mobile is the open source build of Sailfish OS. The latest images for the PinePhone are released [https://github.com/neochapay/nemo-device-dont_be_evil/releases here].
+
=== Megous ===
  
=== Maemo Leste ===
+
* [https://xnux.eu/howtos/pine64-pinephone-getting-started.html Getting start with PinePhone Hardware]
[https://maemo-leste.github.io/ Maemo Leste] images can be downloaded [https://maedevu.maemo.org/images/pinephone-dontbeevil/ here]. The default username is <code>root</code> and the password is <code>toor</code>
+
* [https://xnux.eu/devices/pine64-pinephone.html#toc-pine64-pinephone State of development progress]
 +
* [https://xnux.eu/news.html PinePhone Technical News and Update, also applies to other Allwinner devices including PINE A64 SBC]
 +
* [https://xnux.eu/contribute.html#toc-contributing-to-pinephone-kernel-development Contributions to the kernel development]
  
=== LuneOS ===
+
== External links ==  
[https://www.webos-ports.org/wiki/Main_Page LuneOS] downloads are available [http://build.webos-ports.org/luneos-testing/images/pinephone/ here].
+
* [https://pine64.com/product-category/pinephone/ The PinePhone on the official Pine store]
 +
* [https://pine64.com/product-category/smarphone-spare-parts/ PinePhone spare parts on the official Pine store]
 +
* [https://pine64.com/product-category/smartphone-accessories/ PinePhone accessories on the official Pine store]
  
=== Manjaro ===
+
[[Category:PinePhone]] [[Category:Allwinner A64]]
[https://wiki.manjaro.org/index.php Manjaro] downloads are available [https://osdn.net/projects/manjaro-arm/storage/pinephone/ here].
 

Latest revision as of 12:06, 21 October 2020

The PinePhone is a smartphone created by Pine64, capable of running mainline Linux and supported by many partner projects. The BraveHeart Edition was the first publicly-available version of the phone, though it came without a fully functional OS (factory test image) and was geared specifically towards tinkerers and hackers. Its successor is the Community Edition, the first Community Edition started to ship in June 2020. The phone will be available for at least five years.

First time installation

PinePhone is capable of running a multitude of different Linux mobile OSes
Rendering of the back and front of PinePhone

From the factory the battery has a sticker on it that isolates the battery from the phone. The battery will not charge until this is removed.

Pinephone warning.png

After unboxing remove the back panel using the notch in the corner of the back panel. Then remove the battery and peel off the clear plastic sticker below it that isolates the charging contact. Then replace the battery, see Battery for more information.

The SIM card has to be placed in the lower slot, while the microSD has to be placed in the upper slot, as pictured here:

Pinephone backside.png

Specifications

Dimensions: 160.5 x 76.6 x 9.2mm
Weight: Between 180-200 grams
SIM Card: Micro-SIM
Display:

Size: 5.95 inches (151mm) diagonal
Type: HD IPS capacitive touchscreen, 16M colors
Resolution: 1440x720, 18:9 ratio

System on Chip: Allwinner A64
RAM: 2GB or 3GB LPDDR3 SDRAM
Internal Storage: 16GB or 32GB eMMC, extendable up to 2TB via microSD, supports SDHC and SDXC
Back Camera: Single 5MP, 1/4", LED Flash
Selfie Camera: Single 2MP, f/2.8, 1/5"
Sound: Loudspeaker, 3.5mm jack & mic (jack doubles as hardware UART if killswitch 6 is deactivated)
Communication: G25-G

LTE: B1, B2, B3, B4, B5, B7, B8, B12, B13, B18, B19, B20, B25, B26, B28, B38, B39, B40, B41
WCDMA: B1, B2, B4, B5, B6, B8, B19
GSM: 850, 900, 1800, 1900 (MHz)
WLAN: Wi-Fi 802.11 b/g/n, single-band, hotspot
Bluetooth: 4.0, A2DP
GNSS: GPS/GLONASS/BeiDou/Galileo/QZSS, with A-GPS

Sensors: Accelerometer, gyro, proximity, ambient light, compass
Killswitches: Modem, WiFi & Bluetooth, Microphone, Cameras
Battery: Lithium-ion, rated capacity 2800mAh (10.64Wh), typical capacity 3000mAh (11.40Wh) (nominally replaceable with any Samsung J7 form-factor battery)
I/O: USB Type-C, USB Host, DisplayPort Alternate Mode output, 15W 5V 3A Quick Charge, follows USB PD specification

Components

Component Model
Touchscreen Goodix GT917S
Rear camera OmniVision OV5640
Camera flash SGMICRO SGM3140
Front camera GalaxyCore GC2145
LCD Xingbangda XBD599
WiFi Realtek RTL8723CS
Bluetooth Realtek RTL8723CS
Modem Quectel EG25-G
GNSS/GPS Quectel EG25-G
Magnetometer ST LIS3MDL
Ambient light / Proximity SensorTek STK3335
Sixaxis InvenSense MPU-6050
Vibration motor Unknown model
Notification LED LED0603RGB
Volume buttons Buttons connected to the KEYADC
Power button X-Powers AXP803
Battery fuel gauge X-Powers AXP803

See the PinePhone Component List.

Hardware revisions

  1. Project Anakin
  2. "Project Don't Be Evil" devkit
  3. PinePhone v1.0 - Developer batch
  4. PinePhone v1.1 - Braveheart
  5. PinePhone v1.2‎ - Ubports Community Edition
  6. PinePhone v1.2a - Community Editions

Hardware accessory

PinePhone hardware accessory compatibility

See PinePhone Hardware Accessory Compatibility for a list of devices working with the PinePhone (depending on their OS support).

USB-C connector

The USB-C can be used to power the device, and offers USB2 host and OTG possibilities, and also can make use of the USB-C capability to integrate HDMI signals. Some USB-C hubs are available that offer power throughput, USB connection, HDMI port and Ethernet connection. The driver that would make this connection available is not supported at this time.

Pogo pins

The PinePhone has 6 pogo pins on the back allowing for custom hardware extensions such as wireless charging, an IR blaster, a keyboard extension or extended battery case. The pogo pins provide access to an interrupt line, power input to charge the battery, power source and an I2C interface.

Pinephone pogo.png
Interrupt SDA SCL
5V / VBUS VBAT GND

The VBUS pin is powered by USB and is 5V. The second power pin is VBAT, which connects to the battery voltage. The I2C and interrupt lines have pull-ups on the phone side. The I2C lines are pulled up to 3V3 by the phone.

For a breakout board see here. For an example project see Martijn's blog post "Making a backcover extension for the PinePhone".

Back cover

A step file for the back cover for creating custom cases is freely available here.

Serial console

The PinePhone has a serial port in the headphone connector, it's activated by the 6th contact on the dipswitch. If the switch is set to "on", the headphone connector is in audio mode, if it is set to "off" it's in UART mode. The UART serial connection can also be used for communication with other devices from the PinePhone.

The UART is 115200n8.

The pinout for the serial connector is:

  • Tip: RX
  • Ring: TX
  • Sleeve: GND
PinePhone Serial Cable.png

You can buy a serial debug cable from the Pine64 Store. The store cable uses a 4 ring plug, as seen in the here, but a 3 ring plug works just as well. The cable uses a CH340 chipset based serial to USB converter, but any 3.3v serial connection can be used. Because it is a "host"/DTE it means that you need a cross modem cable (Null Modem) with TX on Tip to be connected to RX. A cable like e.g. FTDI TTL-232R-3V3-AJ which has TX on Tip and RX on Ring fits perfectly.

Killswitch configuration

Detail of DIP switch

The PinePhone features six switches that can be used to configure its hardware. They are numbered 1-6, with switch 1 located nearest to the modem. Their "on" position is toward the top of the phone.

Number Name Explanation Description
1 Modem Pulls Q1501 gate up (FET killing modem power) "On" enables 2G/3G/4G communication and GNSS hardware, "off" disables it.
2 WiFi / Bluetooth Pulls up CHIP_EN "On" enables WiFi and Bluetooth communication hardware, "off" disables it.
3 Microphone Breaks microphone bias voltage from the SoC "On" enables audio input from on-board microphones (not 3.5mm jack), "off" disables it.
4 Rear camera Pulls up PWDN on OV5640 "On" enables the rear camera, "off" disables it.
5 Front camera Pulls up PWDN on GC2145 "On" enables the front camera, "off" disables it.
6 Headphone Pulls up IN2 on analog switch BCT4717ETB "On" enables audio input and output via the 3.5mm audio jack, "off" switches the jack to hardware UART mode.

Camera

Example picture taken on the PinePhone's rear camera by Martijn Braam.

Battery

The EG25 modem and RTL8723CS WiFi/bluetooth do not work without battery power, even if you are supplying enough power to the PinePhone with USB-C.

The phone ships with a plastic sticker between the battery and the phone. You need to open the back cover (gently), then remove the battery and finally remove the sticker and check that the pins aren't bent. This is to protect the device from turning on during shipping.

The supplied battery is meant to be compatible with Samsung part number EB-BJ700BBC / BBE / CBE from the 2015 J7 phone.

  • The extended life aftermarket BBU does fit, although it is a tight fit.
  • There is a report that the EB-BJ700CBE isn't quite the same size, causing the back not to fit the BraveHeart Edition properly.

The battery terminals, in order from nearest the edge to nearest the middle, are:

  1. +ve
  2. thermistor
  3. -ve
  4. not connected

The battery includes a protection circuit that isolates it in a number of fault conditions, including if it is discharged too far. The fully discharged battery can be recharged by connecting the phone to a charger. Once it has charged sufficiently you will be able to boot the phone.

If your battery is hard to remove from the phone, try loosening the screws around it. Possibly cutting up a piece of plastic and sliding it under the battery as a pull tab can work too.

Modem and carrier support

APN settings

For tested APN settings and how to apply them see PinePhone APN Settings.

Carrier support

The page PinePhone Carrier Support contains information about the frequency support of different carriers and hints on setting up cellular network connectivity.

Documents

There is a document about using the modem from January 18th 2020 by user megi here. The script at the end to disable the modem before power off is pretty essential to avoid corrupting your modem's flash memory.

Firmware modifications

See PineModems for more information regarding modem bootloader unlocking, building a custom modem firmware and modem recovery.

Voice mail

Some phone operating systems may not have support for accessing your voicemail by holding down the 1 key. If you are in Canada and using rogers or a rogers associated carrier (such as Chatr), you can access your voice mail by calling an external number, see: https://www.howardforums.com/showthread.php/913346-Rogers-GSM-Voicemail-Retrieval-Numbers

In America, AT&T also has support for accessing your voicemail via an external phone number: https://www.att.com/support/article/wireless/KM1009101/

Operating Systems

The PinePhone will automatically boot from microSD if a bootable card is inserted. Although it is technically possible to use any ARM distribution (because the PinePhone uses the mainline kernel), there are a few that are designed specifically for mobile use on devices like the PinePhone.

Software releases

The PinePhone Software Releases page has a complete list of currently supported phone-optimized Operating System images that work with the PinePhone as well as other related software information. As soon as more patches get mainlined and distributions ship with the updated kernel, they will also be able to run unmodified on the device.

Installation instructions

For instructions on how to install the operating systems to the eMMC or SD card see PinePhone Installation Instructions.

Flashing eMMC using Jumpdrive

Jumpdrive running on the PinePhone

The internal eMMC flash storage can be flashed using the Jumpdrive utility by Danct12 and Martijn from postmarketOS. This utility boots from micro SD and exposes the internal eMMC flash storage when the PinePhone is connected to a computer. The process of flashing an OS to the exposed and mounted eMMC is identical to that of any other storage medium - e.g. a SD card. You can use the 'DD' command or a utility such as Etcher or Gnome Disks, etc.

Latest Jumpdrive can be found here.

Detailed usage instructions

  1. Download the Jumpdrive image
  2. Flash the Jumpdrive image to a micro SD card
  3. Boot the PinePhone from the Jumpdrive micro SD card
  4. Connect the PinePhone to your computer using USB-A -> USB-C cable
  5. Flash the exposed PinePhone drive (e.g. /dev/mm..., check for the right device in dmesg, GNOME disks, or similar, and make sure it's unmounted) with your chosen OS image
  6. Once the flashing process is complete, disconnect the PinePhone from your PC, power it down and remove the Jumpdrive SD card
  7. The process is now finished, and you can boot from eMMC

Jumpdrive also acts as a rescue image in case if you messed up your installation. To do so, you can telnet to 172.16.42.1, mount rootfs and fix it!

Resize file system

If you flash a 4GB image distribution (such as phosh+debian) to your eMMC, your eMMC will only have a 3.7GB partition on it. To use the entire 14.7GB on the eMMC, run the following commands:

  1. sudo cfdisk /dev/sdX
  2. Change to [Resize] in the ncurses program, resize the 3.7GB partition to 14.7GB, and [Write]
  3. sudo resize2fs /dev/sdXY

Replace X with your drive's name. Replace Y with the partition you resized in cfdisk.

Feedback

If you've found an issue or want to improve the tool consider these sites:

Frequently asked questions

For a list of frequently asked questions (including information regarding the shipping) see PinePhone FAQ.

Press

For an overview about media of the PinePhone you can use for the news, blogs, or similar see PinePhone Press.

PinePhone board information, schematics and certifications

Datasheets for components and peripherals

Developer works

Megous

External links