<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.pine64.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dieselnutjob</id>
	<title>PINE64 - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.pine64.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Dieselnutjob"/>
	<link rel="alternate" type="text/html" href="https://wiki.pine64.org/wiki/Special:Contributions/Dieselnutjob"/>
	<updated>2026-04-29T23:12:03Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Quartz64&amp;diff=13002</id>
		<title>Quartz64</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Quartz64&amp;diff=13002"/>
		<updated>2022-05-06T21:13:11Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* pgwipeout's Quartz64 CI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Quartz64modelb.png|400px|thumb|right|The Quartz64 Model B]]&lt;br /&gt;
&lt;br /&gt;
The '''Quartz64''' is the most recent Single Board Computer offering from PINE64, with Model A initially released in June of 2021 and Model B in May of 2022. It is powered by a Rockchip RK3566 Quad-Core ARM Cortex A55 64-Bit Processor with a MALI G-52 GPU.&lt;br /&gt;
&lt;br /&gt;
Key features include a PCIe x4 open ended slot (model A) or m.2 (model B) using one Gen2 lane electrically, and the use of LPDDR4 RAM.&lt;br /&gt;
&lt;br /&gt;
The Quartz64 has three LPDDR4 system memory options: 2GB, 4GB or 8GB. For booting, there is an eMMC module socket (supporting up to 128GB) and microSD slot, as well as a footprint to solder on an SPI flash chip. The board is equipped with HDMI, 1x USB 3.0 type A Host, 3x USB 2.0 Host, Gigabit Ethernet, SATA (model A), GPIO Bus, MiPi DSI interface, e-ink interface (model A), eDP interface (model A), touch Panel interface (model A), MiPi CSI interface, as well as many other device interfaces such as UART, SPI, I&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;C, for makers to integrate with sensors and other peripherals. Many different Operating Systems (OS) are freely available from the open source community, such as Linux (Ubuntu, Debian, Arch), BSD, and Android.&lt;br /&gt;
&lt;br /&gt;
== Software releases ==&lt;br /&gt;
&lt;br /&gt;
{{warning|Software for the Quartz64 is still early in development, and therefore currently lacks features such as the ability to produce video output. You are strongly encouraged to procure a 3.3V UART serial adapter capable of running at 1.5 mbauds, such as [https://pine64.com/product/serial-console-woodpecker-edition/ the woodpecker] if you want to use a Quartz64 at this stage.}} &lt;br /&gt;
&lt;br /&gt;
=== Manjaro ARM ===&lt;br /&gt;
[[File:Manjaro.png|right|100px]]&lt;br /&gt;
&lt;br /&gt;
Manjaro ARM is a user friendly rolling release distribution, based on Arch Linux ARM.&lt;br /&gt;
&lt;br /&gt;
==== Manjaro ARM with no desktop ====&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/manjaro-arm/quartz64-bsp-images/releases Weekly images on Github]&lt;br /&gt;
Note, manjaro currently ships with the linux-rc kernel. Currently (and temporarily/as of writing), usb3, pcie and sata devices will not be found unless you swap to the linux-quartz64 kernel &amp;lt;code&amp;gt;pacman -S linux-quartz64&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Manjaro ARM with desktop environment ====&lt;br /&gt;
&lt;br /&gt;
Since '''Dev 20211117''' with hdmi output (linux-rc)&lt;br /&gt;
&lt;br /&gt;
* Gnome&lt;br /&gt;
* KDE Plasma&lt;br /&gt;
* Mate&lt;br /&gt;
* Sway&lt;br /&gt;
* XFCE&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/manjaro-arm/quartz64-bsp-images/releases Weekly images on Github]&lt;br /&gt;
&lt;br /&gt;
=== pgwipeout's Quartz64 CI ===&lt;br /&gt;
&lt;br /&gt;
pgwipeout provides continuously rebuilt set of images for Quartz64 devices which includes a Debian installer and a buildroot rescue environment. It is aimed at advanced users who generally know their way around a Linux system, and as a baseline for whether something is working or not. Works on both SD cards and eMMC, uses pgwipeout's patched kernel. Kernels aren't auto-updated on the installed system, so the user manually has to do this by mounting the actual correct boot partition.&lt;br /&gt;
&lt;br /&gt;
'''Download:''' https://gitlab.com/pgwipeout/quartz64_ci/-/pipelines (Click the three dots on the right, download the merge-job archive.)&lt;br /&gt;
&lt;br /&gt;
For Quartz64 Model A, flash &amp;lt;tt&amp;gt;rk3566-quartz64-a.dtb.img.xz&amp;lt;/tt&amp;gt;. On Linux, you can for example do this as follows, assuming your target device is &amp;lt;tt&amp;gt;/dev/sdX&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 sudo -i; xzcat /path/to/rk3566-quartz64-a.dtb.img.xz &amp;gt; /dev/sdX&lt;br /&gt;
&lt;br /&gt;
For Quartz64 Model B, use &amp;lt;tt&amp;gt;rk3566-quartz64-b.dtb.img.xz&amp;lt;/tt&amp;gt; instead.&lt;br /&gt;
&lt;br /&gt;
For line by line instructions to boot Quartz64 CI on a microSD card and use it to install Debian onto an eMMC follow these instructions https://wiki.pine64.org/wiki/Installing_Debian_on_the_Quartz64&lt;br /&gt;
&lt;br /&gt;
=== Arch Linux ARM (Unofficial, Highly Experimental) ===&lt;br /&gt;
&lt;br /&gt;
See [[Installing Arch Linux ARM On The Quartz64]] for detailed instructions. Users who are not feeling adventurous are advised to hold off until the official Arch Linux ARM kernel has its build config adjusted.&lt;br /&gt;
&lt;br /&gt;
=== Tianocore EDK II port by jmcneill ===&lt;br /&gt;
&lt;br /&gt;
This (as of 2021-12-30) is a work in progress to enable UEFI enabled systems, and is able to bring up SD, eMMC, USB, PCIe with SATA and NVMe, HDMI, thermal sensors, TRNG, as well as general Cortex A-55 features.  Known to work with NetBSD -current, and the ESXi Arm fling version 1.8.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/jaredmcneill/quartz64_uefi jmcneill's Quartz64 UEFI Github]&lt;br /&gt;
&lt;br /&gt;
The sdcard image should be written to an microSD card and installed.  Currently, using this card also for the OS may be problematic.&lt;br /&gt;
&lt;br /&gt;
=== NetBSD ===&lt;br /&gt;
&lt;br /&gt;
NetBSD relies upon the UEFI support in Tianocore.  Before NetBSD 10 is released, the latest version of NetBSD-current should be used:&lt;br /&gt;
&lt;br /&gt;
* [http://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/ NetBSD daily builds top level] from inside here, navigate to a date, and inside the images/ subdirectory are installable images. Use the one called &amp;quot;NetBSD-&amp;lt;version&amp;gt;-evbarm-aarch64-install.img.gz&amp;quot;.  This image can be written to a supported device, such as the eMMC interface, any USB storage device, NVMe, and PCIe AHCI SATA are all supported with builds after 2022-01-15.&lt;br /&gt;
&lt;br /&gt;
* Currently this can not be shared with the EDK2 port, ie, microSD for EDK2 and some other media for NetBSD.&lt;br /&gt;
&lt;br /&gt;
== SoC and Memory Specifications ==&lt;br /&gt;
* Based on [https://www.rock-chips.com/a/en/products/RK35_Series/2021/0113/1274.html Rockchip RK3566]&lt;br /&gt;
[[File:RK3566_icon.png|right]]&lt;br /&gt;
&lt;br /&gt;
=== CPU Architecture ===&lt;br /&gt;
* [https://developer.arm.com/ip-products/processors/cortex-a/cortex-a55 Quad-core ARM Cortex-A55@1.8GHz]&lt;br /&gt;
* AArch32 for full backwards compatibility with ARMv7&lt;br /&gt;
* ARM Neon Advanced SIMD (single instruction, multiple data) support for accelerated media and signal processing computation&lt;br /&gt;
* Includes VFP hardware to support single and double-precision operations&lt;br /&gt;
* ARMv8 Cryptography Extensions&lt;br /&gt;
* Integrated 32KB L1 instruction cache and 32KB L1 data cache per core&lt;br /&gt;
* 512KB unified system L3 cache&lt;br /&gt;
* [https://developer.arm.com/ip-products/security-ip/trustzone TrustZone] technology support&lt;br /&gt;
* [https://www.cnx-software.com/2020/12/01/rockchip-rk3568-processor-to-power-edge-computing-and-nvr-applications 22nm process, believed to be FD-SOI]&lt;br /&gt;
&lt;br /&gt;
=== GPU (Graphics Processing Unit) Capabilities ===&lt;br /&gt;
* [https://developer.arm.com/ip-products/graphics-and-multimedia/mali-gpus/mali-g52-gpu Mali-G52 2EE Bifrost GPU@800MHz]&lt;br /&gt;
* 4x Multi-Sampling Anti-Aliasing (MSAA) with minimal performance drop &lt;br /&gt;
* 128KB L2 Cache configurations&lt;br /&gt;
* Supports OpenGL ES 1.1, 2.0, and 3.2&lt;br /&gt;
* Supports Vulkan 1.0 and 1.1&lt;br /&gt;
* Supports OpenCL 2.0 Full Profile&lt;br /&gt;
* Supports 1600 Mpix/s fill rate when at 800MHz clock frequency&lt;br /&gt;
* Supports 38.4 GLOP/s when at 800MHz clock frequency   &lt;br /&gt;
&lt;br /&gt;
=== NPU (Neural Processing Unit) Capabilities ===&lt;br /&gt;
* Neural network acceleration engine with processing performance of up to 0.8 TOPS&lt;br /&gt;
* Supports integer 8 and integer 16 convolution operations&lt;br /&gt;
* Supports the following deep learning frameworks: TensorFlow, TF-lite, Pytorch, Caffe, ONNX, MXNet, Keras, Darknet&lt;br /&gt;
&lt;br /&gt;
=== System Memory ===&lt;br /&gt;
* RAM Memory Variants: 2GB (SOQuartz only), 4GB, 8GB LPDDR4.&lt;br /&gt;
&lt;br /&gt;
=== Network ===&lt;br /&gt;
* 10/100/1000Mbps Ethernet&lt;br /&gt;
* WiFi 802.11 b/g/n/ac with Bluetooth 5.0 (optional on model A, built in on model B)&lt;br /&gt;
&lt;br /&gt;
=== Storage ===&lt;br /&gt;
* microSD - bootable, supports SDHC and SDXC, storage up to 2TB&lt;br /&gt;
* USB&lt;br /&gt;
** Model A: 2 USB 2.0 host ports, 1 USB 2.0 OTG port, 1 USB 3.0 host port&lt;br /&gt;
** Model B: 1 USB 2.0 host port, 1 USB 2.0 OTG port, 1 USB 3.0 host port&lt;br /&gt;
* one native SATA 3.0 6Gb/s Port (only on model A, shared with USB 3.0 host port)&lt;br /&gt;
* optional eMMC module from 16GB up to 128GB&lt;br /&gt;
&lt;br /&gt;
==== eMMC Speeds ====&lt;br /&gt;
&lt;br /&gt;
On a 64 GB eMMC module:&lt;br /&gt;
&lt;br /&gt;
  $ sudo hdparm -tT /dev/mmcblk1 &lt;br /&gt;
  &lt;br /&gt;
  /dev/mmcblk1:&lt;br /&gt;
   Timing cached reads:   2368 MB in  2.00 seconds = 1184.46 MB/sec&lt;br /&gt;
   Timing buffered disk reads: 452 MB in  3.01 seconds = 149.98 MB/sec&lt;br /&gt;
&lt;br /&gt;
=== Expansion Ports ===&lt;br /&gt;
* HDMI&lt;br /&gt;
* eDP - 4 lanes of 2.7Gbps, up to 2560x1600@60Hz (only on model A)&lt;br /&gt;
* DSI - Display Serial Interface, 4 lanes MiPi, up to 1440P on model A, 2 lanes MiPi, up to 1080p on model B &lt;br /&gt;
* CSI - CMOS Camera Interface, 4 lanes MiPi up to 8 mega pixel on model A, 2 lanes MiPi up to 5 mega pixel on model B &lt;br /&gt;
* TP - Touch Panel Port, SPI with interrupt on model A&lt;br /&gt;
* RTC - Real Time Clock Battery Connector&lt;br /&gt;
* VBAT - Lithium Battery Connector with temperature sensor input on model A&lt;br /&gt;
* Wifi/BT Module Header - SDIO 3.0 and UART on model A, build in Wifi/BT Module on model B&lt;br /&gt;
* 2x20 pins &amp;quot;Pi2&amp;quot; GPIO Header on model B, 2x10 pins GPO header on model A&lt;br /&gt;
* PCIe x4 open ended slot on model A, m.2 slot on model B, one Gen2 lane due to SoC constraints&lt;br /&gt;
** On Model A, the slot provides 10W of power for the 3.3V supply and however much power your 12V input power supply provides on the 12V supply&lt;br /&gt;
&lt;br /&gt;
The PCIe implementation on the RK3566 is much more compatible with a wide range of devices compared to the one on the RK3399 used on the ROCKPro64. This means a lot more devices should work (excluding dGPUs due to a lack of cache snooping ability).&lt;br /&gt;
&lt;br /&gt;
==== Combo PHYs ====&lt;br /&gt;
&lt;br /&gt;
[[File:rk3566 phy.png]]&lt;br /&gt;
&lt;br /&gt;
Several of the I/O options on the RK3566 used in the Quartz64 are using the same I/O lines, meaning that they cannot be used at the same time. The above diagram illustrates how they are connected.&lt;br /&gt;
&lt;br /&gt;
In particular, USB 3.0 and the SATA connector on the board are mutually exclusive, and the PCI-e 2.0 lane can be reconfigured into a second SATA port, though an adapter cable needs to be fashioned for this to be useful.&lt;br /&gt;
&lt;br /&gt;
=== GPIO Pins (Quartz64 Model A) ===&lt;br /&gt;
&lt;br /&gt;
Attention! GPIOs are 3.3V!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable plainrowheaders&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:20em;&amp;quot; | Assigned To&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Pin Nr.&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Pin Nr.&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:20em;&amp;quot; | Assigned To&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| 3.3 V&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 2&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| 5 V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| I2C3_SDA_M0 &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a,b&amp;lt;/sup&amp;gt;&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 3&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 4&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| 5 V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| I2C3_SCL_M0 &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a,b&amp;lt;/sup&amp;gt;&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 5&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 6&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| GND&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| CPU_REFCLK_OUT&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 7&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 8&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART2_TX_M0_DEBUG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| GND&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 9&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 10&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART2_RX_M0_DEBUG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_MOSI_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 11&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 12&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART0_TX &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_MISO_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 13&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 14&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART0_RX &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_CLK_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 15&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 16&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| GND&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_CS0_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 17&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 18&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| SPDIF_OUT &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;c&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| GND&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 19&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 20&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| 3.3V&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Notes====&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type:lower-alpha&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;can be a PWM pin&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;pulled high to 3.3V through 2.2kOhm resistor&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;low-pass filtered with cutoff of 220 MHz&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Source: Page 28 of [https://wiki.pine64.org/images/3/31/Quartz64_model-A_schematic_v1.0_20201215.pdf the board schematics].&lt;br /&gt;
&lt;br /&gt;
== Quartz64 Board Information, Schematics, and Certifications ==&lt;br /&gt;
* Model &amp;quot;A&amp;quot; Baseboard Dimensions: 133mm x 80mm x 19mm&lt;br /&gt;
* Input Power: DC 12V @ 3A 5.5mmOD/2.1mmID center-positive Barrel DC Jack connector&lt;br /&gt;
&lt;br /&gt;
* Quartz64 Model &amp;quot;A&amp;quot; SBC Schematic and PCB Board Resource:&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Quartz64_model-A_schematic_v2.0_20210427.pdf Quartz64 Model &amp;quot;A&amp;quot; SBC Schematic ver 2.0 20210427 PDF file]&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Quartz64_model-A_V2.0_connector_placement.pdf Quartz64 Model &amp;quot;A&amp;quot; SBC PCB Connector placement PDF file]&lt;br /&gt;
&lt;br /&gt;
* Model &amp;quot;B&amp;quot; Baseboard Dimensions: 85mm x 56mm x 18.8mm&lt;br /&gt;
* Input Power: DC 5V @ 3A 3.5mmOD/1.35mmID Barrel DC Jack connector&lt;br /&gt;
&lt;br /&gt;
* Quartz64 Model &amp;quot;B&amp;quot; SBC Schematic and PCB Board Resource:&lt;br /&gt;
** Quartz64 Model &amp;quot;B&amp;quot; SBC Schematic not yet available&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Quartz64%20model-B%20PCB%20placement.pdf Quartz64 Model &amp;quot;B&amp;quot; SBC PCB Connector placement PDF file]&lt;br /&gt;
&lt;br /&gt;
* Certifications:&lt;br /&gt;
** Disclaimer: Please note that PINE64 SBC is not a &amp;quot;final&amp;quot; product and in general certification is not necessary. However, PINE64 still submit the SBC for FCC and CE certification and obtain the certificates to proof that SBC board is capable on passing the testing. Please note a final commercial product needs to performs its owns testing and obtains its owns certificates.&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Quartz64%20Model-A%20CE%20certification-S21051101701001.pdf Quartz64 model-A CE Certificate]&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Quartz64%20Model-A%20FCC%20certification-S21051101702001.pdf Quartz64 model-A FCC Certificate]&lt;br /&gt;
&lt;br /&gt;
== Datasheets for Components and Peripherals ==&lt;br /&gt;
* Rockchip RK3566 SoC information:&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Rockchip%20RK3566%20Datasheet%20V1.0-20201210.pdf Rockchip RK3566 ver 1.0 datasheet, already got release permission from Rockchip]&lt;br /&gt;
* Rockchip PMU (Power Management Unit) Information:&lt;br /&gt;
** [https://www.rockchip.fr/RK817%20datasheet%20V1.01.pdf Rockchip RK817 ver 1.01 datasheet for Quartz64 model A]&lt;br /&gt;
** [https://www.rockchip.fr/RK809%20datasheet%20V1.01.pdf Rockchip RK809 ver 1.01 datasheet for Quartz64 model B and SOQuartz]&lt;br /&gt;
* LPDDR4 (200 Balls) SDRAM:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/rockpro64/SM512M32Z01MD2BNP(200BALL).pdf Micron LPDDR4 Mobile LPDDR4 Datasheet]&lt;br /&gt;
* eMMC information:&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/PINE64_eMMC_Module_20170719.pdf PINE64 eMMC module schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/usb%20emmc%20module%20adapter%20v2.pdf PINE64 USB adapter for eMMC module V2 schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/USB%20adapter%20for%20eMMC%20module%20PCB.tar PINE64 USB adapter for eMMC module PCB in JPEG]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/E-00517%20FORESEE_eMMC_NCEMAM8B-16G%20SPEC.pdf 16GB Foresee eMMC Datasheet]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/SDINADF4-16-128GB-H%20data%20sheet%20v1.13.pdf 32GB/64GB/128GB SanDisk eMMC Datasheet]&lt;br /&gt;
* SPI NOR Flash information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/w25q128jv%20spi%20revc%2011162016.pdf WinBond 128Mb SPI Flash Datasheet]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/GD25Q128C-Rev2.5.pdf GigaDevice 128Mb SPI Flash Datasheet]&lt;br /&gt;
* E-ink Panel information:&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Eink%20P-511-754-V3_ES103TC1%20Specification%20V3.0(Signed)-20190702.pdf Eink 10.3&amp;quot; 1872x1404 ES103TC1 Flex Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Eink%20P-511-828-V1_ED103TC2%20Formal%20Spec%20V1.0_20190514.pdf Eink 10.3&amp;quot; 1872x1404 ES103TC1 Glass Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PineNote/TI%20PMU-TPS651851.pdf TPS65185x PMIC for E-Ink Enabled Electronic Paper Display Datasheet]&lt;br /&gt;
* LCD Touch Screen Panel information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/FY07024DI26A30-D_feiyang_LCD_panel.pdf 7.0&amp;quot; 1200x600 TFT-LCD Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/HK70DR2459-PG-V01.pdf Touch Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/GT911%20Capacitive%20Touch%20Controller%20Datasheet.pdf GOODiX GT911 5-Point Capacitive Touch Controller Datasheet]&lt;br /&gt;
* Ethernet PHY information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/rtl8211e(g)-vb(vl)-cg_datasheet_1.6.pdf Realtek RTL8211 10/100/1000M Ethernet Transceiver]&lt;br /&gt;
* WiFi/BT module info:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/rockpro64/AW-CM256SM_DS_DF_V1.9_STD.pdf Azurewave CM256SM 11AC WiFi + Bluetooth5.0 Datasheet]]&lt;br /&gt;
* Enclosure information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/case/playbox_enclosure_20160426.stp Playbox Enclosure 3D file]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/case/ABS_enclosure_20160426.stp ABS Enclosure 3D file]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/case/pine64%20Die%20Cast%20casing-final.jpg Outdoor Aluminum Cast Dust-proof IP67 Enclosure Drawing]&lt;br /&gt;
* Connector information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/ePH.pdf 2.0mm PH Type connector specification use in Lithium Battery (VBAT) port and RTC Battery port]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/0.5FPC%20Front%20Open%20Connector%20H=1.5.pdf 0.5mm Pitch cover type FPC connector specification use in DSI port, TP port and CSI port]&lt;br /&gt;
&lt;br /&gt;
== Development efforts ==&lt;br /&gt;
&lt;br /&gt;
{{SeeMainArticle|Quartz64 Development}}&lt;br /&gt;
&lt;br /&gt;
Information and resources of the ongoing development effort for the Quartz64 can be found on the [[Quartz64 Development]] page, where the current status of various board functions can be found, and whether they have landed in upstream.&lt;br /&gt;
&lt;br /&gt;
* [https://gitlab.com/pine64-org/quartz-bsp Quartz64 BSP Gitlab Page]&lt;br /&gt;
&lt;br /&gt;
== BSP Linux SDK ==&lt;br /&gt;
&lt;br /&gt;
=== BSP Linux SDK ver 4.19 for Quartz64 model A SBC  ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_BSP%20Linux.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 24554419aec29700add97167a3a4c9ed&lt;br /&gt;
** File Size: 32.67.00GB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Android SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC  ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Android 11 Production Test Build for Quartz64 model A SBC ===&lt;br /&gt;
&lt;br /&gt;
==== Android 11 Stock Image [eMMC Boot] using DD method [20210604] ====&lt;br /&gt;
* DD image to eMMC module using USB adapter for eMMC module and boot. Highly recommend using [https://etcher.io/ Etcher]&lt;br /&gt;
* This is test build that used during product testing&lt;br /&gt;
* Please allow 3-5 minutes boot up time on first time for initialization&lt;br /&gt;
* DD image for 8GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-8GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): e4365753e584d9fce1b8f10f095eede6&lt;br /&gt;
*** File Size: 819MB&lt;br /&gt;
* DD image for 16GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-16GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 491c5f7744b0ca0b74ae76e607051836&lt;br /&gt;
*** File Size: 1.10GB&lt;br /&gt;
* DD image for 32GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-32GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 47a6f0cdac8bad06cb920743849a8894&lt;br /&gt;
*** File Size: 846MB&lt;br /&gt;
* DD image for 64GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-64GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 4e2fed6f5db0d55afdc8a142fc0c4fe1&lt;br /&gt;
*** File Size: 884MB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Android 11 Production Test Build for Quartz64 model A SBC [eMMC Boot] using ROCKChip tools method [20210604] ====&lt;br /&gt;
* Please unzip first and then using [https://files.pine64.org/os/Quartz64//android/RKDevTool_Release_v2.84.zip Rockchip Android tool ver 2.84] to flash in&lt;br /&gt;
* For Windows OS environment, please install the [https://files.pine64.org/os/Quartz64/android/DriverAssitant_v5.1.1.zip DriverAssistant v5.11] driver first &lt;br /&gt;
* This is test build that used during product testing&lt;br /&gt;
* The OTG port located at top USB 2.0 port on top of USB 3.0 port, needs USB type A to type A cable.&lt;br /&gt;
* Please allow 3-5 minutes boot up time on first time for initialization&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_20210604_stock_android11_emmcboot.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 800f867fdd0d1b2bd7822c156b6067e3&lt;br /&gt;
*** File Size: 812MB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for Quartz64 model A SBC  ===&lt;br /&gt;
* The is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Enclosures ==&lt;br /&gt;
&lt;br /&gt;
All enclosures that fit the ROCKPro64 should fit the Quartz64, as the I/O has been laid out the same on purpose.&lt;br /&gt;
&lt;br /&gt;
* [[&amp;quot;Model A&amp;quot; Acrylic Open Enclosure]] - but see the troubleshooting section below.&lt;br /&gt;
* [[ROCKPro64 ABS Enclosure]]&lt;br /&gt;
* [[Quartz64PremiumAluminiumCase|RockPro64 Premium Aluminium Case]]&lt;br /&gt;
&lt;br /&gt;
(Please expand this section with more cases known to work.)&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Stability/Boot Issues With Missing Battery Shunt ===&lt;br /&gt;
&lt;br /&gt;
If there is no battery plugged into the board, the jumper labelled &amp;quot;ON/OFF_BATT&amp;quot; must be in place. If this is set wrong, stability issues such as failures to boot will occur.&lt;br /&gt;
&lt;br /&gt;
=== No Ethernet Connectivity ===&lt;br /&gt;
&lt;br /&gt;
Make sure the kernel is built with &amp;lt;code&amp;gt;CONFIG_MOTORCOMM_PHY&amp;lt;/code&amp;gt; set to &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;. Building it as a module (&amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt;) and then relying on module auto-loading is unlikely to work, because if the generic PHY driver is built in it will bind to the PHY first, unless you include the motorcomm module in your initramfs.&lt;br /&gt;
&lt;br /&gt;
=== &amp;quot;Model A&amp;quot; Acrylic Case Doesn't Fit ===&lt;br /&gt;
&lt;br /&gt;
The Quartz64 does not really fit onto the bottom plate of the [[&amp;quot;Model A&amp;quot; Acrylic Open Enclosure]]. This is because the &amp;quot;Mic&amp;quot; connector at the bottom of the board interferes with one of the posts. A workaround is to find out which post that is (you have a 50% chance of guessing it right, accounting for rotating the board) and then filing away the corner of the post pointing inwards by a few millimetres.&lt;br /&gt;
&lt;br /&gt;
[[File:Quartz64-audio-jack-spacer-issue.jpg]]&lt;br /&gt;
&lt;br /&gt;
An alternate solution may be to place plastic spacers with a smaller outer diameter in between the acrylic bottom plate posts and the SBC board.&lt;br /&gt;
&lt;br /&gt;
=== No GPU Acceleration with Debian &amp;quot;Bullseye&amp;quot; Userland ===&lt;br /&gt;
&lt;br /&gt;
Debian Bullseye ships a Mesa version that is too old to contain the required patches for the RK356x SoC's GPU. You can (at your own risk) [https://wiki.debian.org/DebianTesting use the current Debian Testing version ], called &amp;quot;Bookworm&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Quartz64]]&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Quartz64_Premium_Aluminium_Case&amp;diff=12552</id>
		<title>Quartz64 Premium Aluminium Case</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Quartz64_Premium_Aluminium_Case&amp;diff=12552"/>
		<updated>2022-02-16T09:33:10Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A nice aluminium case is available on the Pine64 store listed as &amp;quot;ROCKPro64 PREMIUM ALUMINUM CASING&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The Quartz64 model A can be made to fit this case, however some filing of one of the holes is necessary because one of the RockPro64 ports is a type-C, whereas on the Quartz64 model A all of the ports are type As.&lt;br /&gt;
&lt;br /&gt;
Interference between Quartz64 model A and the case as supplied:-&lt;br /&gt;
&lt;br /&gt;
[[File:quartz64a-rockpro64case-1.jpg]]&lt;br /&gt;
&lt;br /&gt;
Fitment once the case has been filed:-&lt;br /&gt;
&lt;br /&gt;
[[File:quartz64a-rockpro64case-2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Fitment of the other end (no modification necessary):-&lt;br /&gt;
&lt;br /&gt;
[[File:quartz64a-rockpro64case-3.jpg]]&lt;br /&gt;
&lt;br /&gt;
Also note that the SoC in the Quartz64-A is slightly lower than the Rock64 Pro one (apparently about 0.6mm).  This case includes an internal post which (using a thermal pad) touches the SoC to transfer heat from the SoC to the case.  However it does not make good contact with the RK3566.  The best solution is probably to source a thicker thermal pad.&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Talk:Quartz64_Installing_Arch_Linux_ARM&amp;diff=12441</id>
		<title>Talk:Quartz64 Installing Arch Linux ARM</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Talk:Quartz64_Installing_Arch_Linux_ARM&amp;diff=12441"/>
		<updated>2022-02-04T12:20:21Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: Created page with &amp;quot;Where you have instructions like   parted -s /dev/sdb mkpart  please can you change it to  parted -s /dev/sdX mkpart  I (like an idiot) started copy and pasting and tried to o...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Where you have instructions like &lt;br /&gt;
&lt;br /&gt;
parted -s /dev/sdb mkpart&lt;br /&gt;
&lt;br /&gt;
please can you change it to&lt;br /&gt;
&lt;br /&gt;
parted -s /dev/sdX mkpart&lt;br /&gt;
&lt;br /&gt;
I (like an idiot) started copy and pasting and tried to overwrite one of the disks on my desktop instead of the sdcard for the quartz64&lt;br /&gt;
Changing it to an X prevents this&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Quartz64&amp;diff=12411</id>
		<title>Quartz64</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Quartz64&amp;diff=12411"/>
		<updated>2022-01-30T11:09:18Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Enclosures */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:Quartz64modelb.png|400px|thumb|right|The Quartz64 Model B]]&lt;br /&gt;
&lt;br /&gt;
The '''Quartz64''' is the most recent Single Board Computer offering from PINE64, initially released in June of 2021. It is powered by a Rockchip RK3566 Quad-Core ARM Cortex A55 64-Bit Processor with a MALI G-52 GPU.&lt;br /&gt;
&lt;br /&gt;
Key features include a PCIe x4 open ended slot (model A) or m.2 (model B) using one Gen2 lane electrically, and the use of LPDDR4 RAM.&lt;br /&gt;
&lt;br /&gt;
The Quartz64 has three LPDDR4 system memory options: 2GB, 4GB or 8GB. For booting, there is an eMMC module socket (supporting up to 128GB) and microSD slot, as well as a footprint to solder on an SPI flash chip. The board is equipped with HDMI, 1x USB 3.0 type A Host, 3x USB 2.0 Host, Gigabit Ethernet, SATA (model A), GPIO Bus, MiPi DSI interface, e-ink interface (model A), eDP interface (model A), touch Panel interface (model A), MiPi CSI interface, as well as many other device interfaces such as UART, SPI, I&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;C, for makers to integrate with sensors and other peripherals. Many different Operating Systems (OS) are freely available from the open source community, such as Linux (Ubuntu, Debian, Arch), BSD, and Android.&lt;br /&gt;
&lt;br /&gt;
== Software releases ==&lt;br /&gt;
&lt;br /&gt;
{{warning|Software for the Quartz64 is still early in development, and therefore currently lacks features such as the ability to produce video output. You are strongly encouraged to procure a 3.3V UART serial adapter capable of running at 1.5 mbauds, such as [https://pine64.com/product/serial-console-woodpecker-edition/ the woodpecker] if you want to use a Quartz64 at this stage.}} &lt;br /&gt;
&lt;br /&gt;
=== Manjaro ARM ===&lt;br /&gt;
[[File:Manjaro.png|right|100px]]&lt;br /&gt;
&lt;br /&gt;
Manjaro ARM is a user friendly rolling release distribution, based on Arch Linux ARM.&lt;br /&gt;
&lt;br /&gt;
==== Manjaro ARM with no desktop ====&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/manjaro-arm/quartz64-bsp-images/releases Weekly images on Github]&lt;br /&gt;
Note, manjaro currently ships with the linux-rc kernel. Currently (and temporarily/as of writing), usb3, pcie and sata devices will not be found unless you swap to the linux-quartz64 kernel &amp;lt;code&amp;gt;pacman -S linux-quartz64&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Manjaro ARM with desktop environment ====&lt;br /&gt;
&lt;br /&gt;
Since '''Dev 20211117''' with hdmi output (linux-rc)&lt;br /&gt;
&lt;br /&gt;
* Gnome&lt;br /&gt;
* KDE Plasma&lt;br /&gt;
* Mate&lt;br /&gt;
* Sway&lt;br /&gt;
* XFCE&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/manjaro-arm/quartz64-bsp-images/releases Weekly images on Github]&lt;br /&gt;
&lt;br /&gt;
Note: Video out only working on 4 GB boards with 1080p monitors right now as the VOP2 patches are very early.&lt;br /&gt;
&lt;br /&gt;
=== pgwipeout's Quartz64 CI ===&lt;br /&gt;
&lt;br /&gt;
pgwipeout provides continuously rebuilt set of images for Quartz64 devices which includes a Debian installer and a buildroot rescue environment. It is aimed at advanced users who generally know their way around a Linux system, and as a baseline for whether something is working or not. Works on both SD cards and eMMC, uses pgwipeout's patched kernel. Kernels aren't auto-updated on the installed system, so the user manually has to do this by mounting the actual correct boot partition.&lt;br /&gt;
&lt;br /&gt;
'''Download:''' https://gitlab.com/pgwipeout/quartz64_ci/-/pipelines (Click the three dots on the right, download the merge-job archive.)&lt;br /&gt;
&lt;br /&gt;
For Quartz64 Model A, flash &amp;lt;tt&amp;gt;rk3566-quartz64-a.dtb.img.xz&amp;lt;/tt&amp;gt;. On Linux, you can for example do this as follows, assuming your target device is &amp;lt;tt&amp;gt;/dev/sdb&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 sudo -i; xzcat /path/to/rk3566-quartz64-a.dtb.img.xz &amp;gt; /dev/sdb&lt;br /&gt;
&lt;br /&gt;
=== Arch Linux ARM (Unofficial, Highly Experimental) ===&lt;br /&gt;
&lt;br /&gt;
See [[Installing Arch Linux ARM On The Quartz64]] for detailed instructions. Users who are not feeling adventurous are advised to hold off until kernel 5.16 is released and packaged.&lt;br /&gt;
&lt;br /&gt;
=== Tianocore EDK II port by jmcneill ===&lt;br /&gt;
&lt;br /&gt;
This (as of 2021-12-30) is a work in progress to enable UEFI enabled systems, and is able to bring up SD, eMMC, USB, PCIe with SATA and NVMe, HDMI, thermal sensors, TRNG, as well as general Cortex A-55 features.  Known to work with NetBSD -current, and the ESXi Arm fling version 1.8.&lt;br /&gt;
&lt;br /&gt;
* [https://github.com/jaredmcneill/quartz64_uefi jmcneill's Quartz64 UEFI Github]&lt;br /&gt;
&lt;br /&gt;
The sdcard image should be written to an microSD card and installed.  Currently, using this card also for the OS may be problematic.&lt;br /&gt;
&lt;br /&gt;
=== NetBSD ===&lt;br /&gt;
&lt;br /&gt;
NetBSD relies upon the UEFI support in Tianocore.  Before NetBSD 10 is released, the latest version of NetBSD-current should be used:&lt;br /&gt;
&lt;br /&gt;
* [http://nycdn.netbsd.org/pub/NetBSD-daily/HEAD/ NetBSD daily builds top level] from inside here, navigate to a date, and inside the images/ subdirectory are installable images. Use the one called &amp;quot;NetBSD-&amp;lt;version&amp;gt;-evbarm-aarch64-install.img.gz&amp;quot;.  This image can be written to a supported device, such as the eMMC interface, any USB storage device, NVMe, and PCIe AHCI SATA are all supported with builds after 2022-01-15.&lt;br /&gt;
&lt;br /&gt;
== SoC and Memory Specifications ==&lt;br /&gt;
* Based on [https://www.rock-chips.com/a/en/products/RK35_Series/2021/0113/1274.html Rockchip RK3566]&lt;br /&gt;
[[File:RK3566_icon.png|right]]&lt;br /&gt;
&lt;br /&gt;
=== CPU Architecture ===&lt;br /&gt;
* [https://developer.arm.com/ip-products/processors/cortex-a/cortex-a55 Quad-core ARM Cortex-A55@1.8GHz]&lt;br /&gt;
* AArch32 for full backwards compatibility with ARMv7&lt;br /&gt;
* ARM Neon Advanced SIMD (single instruction, multiple data) support for accelerated media and signal processing computation&lt;br /&gt;
* Includes VFP hardware to support single and double-precision operations&lt;br /&gt;
* ARMv8 Cryptography Extensions&lt;br /&gt;
* Integrated 32KB L1 instruction cache and 32KB L1 data cache per core&lt;br /&gt;
* 512KB unified system L3 cache&lt;br /&gt;
* [https://developer.arm.com/ip-products/security-ip/trustzone TrustZone] technology support&lt;br /&gt;
* [https://www.cnx-software.com/2020/12/01/rockchip-rk3568-processor-to-power-edge-computing-and-nvr-applications 22nm process, believed to be FD-SOI]&lt;br /&gt;
&lt;br /&gt;
=== GPU (Graphics Processing Unit) Capabilities ===&lt;br /&gt;
* [https://developer.arm.com/ip-products/graphics-and-multimedia/mali-gpus/mali-g52-gpu Mali-G52 2EE Bifrost GPU@800MHz]&lt;br /&gt;
* 4x Multi-Sampling Anti-Aliasing (MSAA) with minimal performance drop &lt;br /&gt;
* 128KB L2 Cache configurations&lt;br /&gt;
* Supports OpenGL ES 1.1, 2.0, and 3.2&lt;br /&gt;
* Supports Vulkan 1.0 and 1.1&lt;br /&gt;
* Supports OpenCL 2.0 Full Profile&lt;br /&gt;
* Supports 1600 Mpix/s fill rate when at 800MHz clock frequency&lt;br /&gt;
* Supports 38.4 GLOP/s when at 800MHz clock frequency   &lt;br /&gt;
&lt;br /&gt;
=== NPU (Neural Processing Unit) Capabilities ===&lt;br /&gt;
* Neural network acceleration engine with processing performance of up to 0.8 TOPS&lt;br /&gt;
* Supports integer 8 and integer 16 convolution operations&lt;br /&gt;
* Supports the following deep learning frameworks: TensorFlow, TF-lite, Pytorch, Caffe, ONNX, MXNet, Keras, Darknet&lt;br /&gt;
&lt;br /&gt;
=== System Memory ===&lt;br /&gt;
* RAM Memory Variants: 2GB (SOQuartz only), 4GB, 8GB LPDDR4.&lt;br /&gt;
&lt;br /&gt;
=== Network ===&lt;br /&gt;
* 10/100/1000Mbps Ethernet&lt;br /&gt;
* WiFi 802.11 b/g/n/ac with Bluetooth 5.0 (optional on model A, built in on model B)&lt;br /&gt;
&lt;br /&gt;
=== Storage ===&lt;br /&gt;
* microSD - bootable, supports SDHC and SDXC, storage up to 2TB&lt;br /&gt;
* USB&lt;br /&gt;
** Model A: 2 USB 2.0 host ports, 1 USB 2.0 OTG port, 1 USB 3.0 host port&lt;br /&gt;
** Model B: 1 USB 2.0 host port, 1 USB 2.0 OTG port, 1 USB 3.0 host port&lt;br /&gt;
* one native SATA 3.0 6Gb/s Port (only on model A, shared with USB 3.0 host port)&lt;br /&gt;
* optional eMMC module from 16GB up to 128GB&lt;br /&gt;
&lt;br /&gt;
==== eMMC Speeds ====&lt;br /&gt;
&lt;br /&gt;
On a 64 GB eMMC module:&lt;br /&gt;
&lt;br /&gt;
  $ sudo hdparm -tT /dev/mmcblk1 &lt;br /&gt;
  &lt;br /&gt;
  /dev/mmcblk1:&lt;br /&gt;
   Timing cached reads:   2368 MB in  2.00 seconds = 1184.46 MB/sec&lt;br /&gt;
   Timing buffered disk reads: 452 MB in  3.01 seconds = 149.98 MB/sec&lt;br /&gt;
&lt;br /&gt;
=== Expansion Ports ===&lt;br /&gt;
* HDMI&lt;br /&gt;
* eDP - 4 lanes of 2.7Gbps, up to 2560x1600@60Hz (only on model A)&lt;br /&gt;
* DSI - Display Serial Interface, 4 lanes MiPi, up to 1440P on model A, 2 lanes MiPi, up to 1080p on model B &lt;br /&gt;
* CSI - CMOS Camera Interface, 4 lanes MiPi up to 8 mega pixel on model A, 2 lanes MiPi up to 5 mega pixel on model B &lt;br /&gt;
* TP - Touch Panel Port, SPI with interrupt on model A&lt;br /&gt;
* RTC - Real Time Clock Battery Connector&lt;br /&gt;
* VBAT - Lithium Battery Connector with temperature sensor input on model A&lt;br /&gt;
* Wifi/BT Module Header - SDIO 3.0 and UART on model A, build in Wifi/BT Module on model B&lt;br /&gt;
* 2x20 pins &amp;quot;Pi2&amp;quot; GPIO Header on model B, 2x10 pins GPO header on model A&lt;br /&gt;
* PCIe x4 open ended slot on model A, m.2 slot on model B, one Gen2 lane due to SoC constraints&lt;br /&gt;
** On Model A, the slot provides 10W of power for the 3.3V supply and however much power your 12V input power supply provides on the 12V supply&lt;br /&gt;
&lt;br /&gt;
The PCIe implementation on the RK3566 is much more compatible with a wide range of devices compared to the one on the RK3399 used on the ROCKPro64. This means a lot more devices should work (excluding dGPUs due to a lack of cache snooping ability). As an example, PCIe-to-PCI bridges work, whereas they didn't on the ROCKPro64.&lt;br /&gt;
&lt;br /&gt;
==== Combo PHYs ====&lt;br /&gt;
&lt;br /&gt;
[[File:rk3566 phy.png]]&lt;br /&gt;
&lt;br /&gt;
Several of the I/O options on the RK3566 used in the Quartz64 are using the same I/O lines, meaning that they cannot be used at the same time. The above diagram illustrates how they are connected.&lt;br /&gt;
&lt;br /&gt;
In particular, USB 3.0 and the SATA connector on the board are mutually exclusive, and the PCI-e 2.0 lane can be reconfigured into a second SATA port, though an adapter cable needs to be fashioned for this to be useful.&lt;br /&gt;
&lt;br /&gt;
=== GPIO Pins (Quartz64 Model A) ===&lt;br /&gt;
&lt;br /&gt;
Attention! GPIOs are 3.3V!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable plainrowheaders&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:20em;&amp;quot; | Assigned To&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Pin Nr.&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Pin Nr.&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; style=&amp;quot;width:20em;&amp;quot; | Assigned To&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| 3.3 V&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 2&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| 5 V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| I2C3_SDA_M0 &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a,b&amp;lt;/sup&amp;gt;&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 3&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 4&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| 5 V&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| I2C3_SCL_M0 &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a,b&amp;lt;/sup&amp;gt;&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 5&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 6&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| GND&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| CPU_REFCLK_OUT&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 7&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 8&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART2_TX_M0_DEBUG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| GND&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 9&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 10&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART2_RX_M0_DEBUG&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_MOSI_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 11&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 12&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART0_TX &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_MISO_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 13&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 14&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| UART0_RX &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;a&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_CLK_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 15&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 16&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| GND&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| SPI1_CS0_M1&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 17&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 18&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| SPDIF_OUT &amp;lt;sup style=&amp;quot;font-style:italic;color:green&amp;quot;&amp;gt;c&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:right;&amp;quot;| GND&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 19&lt;br /&gt;
| style=&amp;quot;text-align:center; background-color:black; color:gold; font-weight:bold;&amp;quot;| 20&lt;br /&gt;
| style=&amp;quot;text-align:left;&amp;quot;| 3.3V&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Notes====&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type:lower-alpha&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;can be a PWM pin&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;pulled high to 3.3V through 2.2kOhm resistor&amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;low-pass filtered with cutoff of 220 MHz&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Source: Page 28 of [https://wiki.pine64.org/images/3/31/Quartz64_model-A_schematic_v1.0_20201215.pdf the board schematics].&lt;br /&gt;
&lt;br /&gt;
== Quartz64 Board Information, Schematics, and Certifications ==&lt;br /&gt;
* Model &amp;quot;A&amp;quot; Baseboard Dimensions: 133mm x 80mm x 19mm&lt;br /&gt;
* Input Power: DC 12V @ 3A 5.5mmOD/2.1mmID center-positive Barrel DC Jack connector&lt;br /&gt;
&lt;br /&gt;
* Quartz64 Model &amp;quot;A&amp;quot; SBC Schematic and PCB Board Resource:&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Quartz64_model-A_schematic_v2.0_20210427.pdf Quartz64 Model &amp;quot;A&amp;quot; SBC Schematic ver 2.0 20210427 PDF file]&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Quartz64_model-A_V2.0_connector_placement.pdf Quartz64 Model &amp;quot;A&amp;quot; SBC PCB Connector placement PDF file]&lt;br /&gt;
&lt;br /&gt;
* Model &amp;quot;B&amp;quot; Baseboard Dimensions: 85mm x 56mm x 18.8mm&lt;br /&gt;
* Input Power: DC 5V @ 3A 3.5mmOD/1.35mmID Barrel DC Jack connector&lt;br /&gt;
&lt;br /&gt;
* Quartz64 Model &amp;quot;B&amp;quot; SBC Schematic and PCB Board Resource:&lt;br /&gt;
** Quartz64 Model &amp;quot;B&amp;quot; SBC Schematic not yet available&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Quartz64%20model-B%20PCB%20placement.pdf Quartz64 Model &amp;quot;B&amp;quot; SBC PCB Connector placement PDF file]&lt;br /&gt;
&lt;br /&gt;
* Certifications:&lt;br /&gt;
** Disclaimer: Please note that PINE64 SBC is not a &amp;quot;final&amp;quot; product and in general certification is not necessary. However, PINE64 still submit the SBC for FCC and CE certification and obtain the certificates to proof that SBC board is capable on passing the testing. Please note a final commercial product needs to performs its owns testing and obtains its owns certificates.&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Quartz64%20Model-A%20CE%20certification-S21051101701001.pdf Quartz64 model-A CE Certificate]&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Quartz64%20Model-A%20FCC%20certification-S21051101702001.pdf Quartz64 model-A FCC Certificate]&lt;br /&gt;
&lt;br /&gt;
== Datasheets for Components and Peripherals ==&lt;br /&gt;
* Rockchip RK3566 SoC information:&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Rockchip%20RK3566%20Datasheet%20V1.0-20201210.pdf Rockchip RK3566 ver 1.0 datasheet, already got release permission from Rockchip]&lt;br /&gt;
* Rockchip PMU (Power Management Unit) Information:&lt;br /&gt;
** [https://www.rockchip.fr/RK817%20datasheet%20V1.01.pdf Rockchip RK817 ver 1.01 datasheet for Quartz64 model A]&lt;br /&gt;
** [https://www.rockchip.fr/RK809%20datasheet%20V1.01.pdf Rockchip RK809 ver 1.01 datasheet for Quartz64 model B and SOQuartz]&lt;br /&gt;
* LPDDR4 (200 Balls) SDRAM:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/rockpro64/SM512M32Z01MD2BNP(200BALL).pdf Micron LPDDR4 Mobile LPDDR4 Datasheet]&lt;br /&gt;
* eMMC information:&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/PINE64_eMMC_Module_20170719.pdf PINE64 eMMC module schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/usb%20emmc%20module%20adapter%20v2.pdf PINE64 USB adapter for eMMC module V2 schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/USB%20adapter%20for%20eMMC%20module%20PCB.tar PINE64 USB adapter for eMMC module PCB in JPEG]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/E-00517%20FORESEE_eMMC_NCEMAM8B-16G%20SPEC.pdf 16GB Foresee eMMC Datasheet]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/SDINADF4-16-128GB-H%20data%20sheet%20v1.13.pdf 32GB/64GB/128GB SanDisk eMMC Datasheet]&lt;br /&gt;
* SPI NOR Flash information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/w25q128jv%20spi%20revc%2011162016.pdf WinBond 128Mb SPI Flash Datasheet]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/GD25Q128C-Rev2.5.pdf GigaDevice 128Mb SPI Flash Datasheet]&lt;br /&gt;
* E-ink Panel information:&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Eink%20P-511-754-V3_ES103TC1%20Specification%20V3.0(Signed)-20190702.pdf Eink 10.3&amp;quot; 1872x1404 ES103TC1 Flex Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/quartz64/Eink%20P-511-828-V1_ED103TC2%20Formal%20Spec%20V1.0_20190514.pdf Eink 10.3&amp;quot; 1872x1404 ES103TC1 Glass Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PineNote/TI%20PMU-TPS651851.pdf TPS65185x PMIC for E-Ink Enabled Electronic Paper Display Datasheet]&lt;br /&gt;
* LCD Touch Screen Panel information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/FY07024DI26A30-D_feiyang_LCD_panel.pdf 7.0&amp;quot; 1200x600 TFT-LCD Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/HK70DR2459-PG-V01.pdf Touch Panel Specification]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/GT911%20Capacitive%20Touch%20Controller%20Datasheet.pdf GOODiX GT911 5-Point Capacitive Touch Controller Datasheet]&lt;br /&gt;
* Ethernet PHY information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/rtl8211e(g)-vb(vl)-cg_datasheet_1.6.pdf Realtek RTL8211 10/100/1000M Ethernet Transceiver]&lt;br /&gt;
* WiFi/BT module info:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/rockpro64/AW-CM256SM_DS_DF_V1.9_STD.pdf Azurewave CM256SM 11AC WiFi + Bluetooth5.0 Datasheet]]&lt;br /&gt;
* Enclosure information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/case/playbox_enclosure_20160426.stp Playbox Enclosure 3D file]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/case/ABS_enclosure_20160426.stp ABS Enclosure 3D file]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/case/pine64%20Die%20Cast%20casing-final.jpg Outdoor Aluminum Cast Dust-proof IP67 Enclosure Drawing]&lt;br /&gt;
* Connector information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/ePH.pdf 2.0mm PH Type connector specification use in Lithium Battery (VBAT) port and RTC Battery port]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/0.5FPC%20Front%20Open%20Connector%20H=1.5.pdf 0.5mm Pitch cover type FPC connector specification use in DSI port, TP port and CSI port]&lt;br /&gt;
&lt;br /&gt;
== Development efforts ==&lt;br /&gt;
&lt;br /&gt;
{{SeeMainArticle|Quartz64 Development}}&lt;br /&gt;
&lt;br /&gt;
Information and resources of the ongoing development effort for the Quartz64 can be found on the [[Quartz64 Development]] page, where the current status of various board functions can be found, and whether they have landed in upstream.&lt;br /&gt;
&lt;br /&gt;
* [https://gitlab.com/pine64-org/quartz-bsp Quartz64 BSP Gitlab Page]&lt;br /&gt;
&lt;br /&gt;
== BSP Linux SDK ==&lt;br /&gt;
&lt;br /&gt;
=== BSP Linux SDK ver 4.19 for Quartz64 model A SBC  ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_BSP%20Linux.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 24554419aec29700add97167a3a4c9ed&lt;br /&gt;
** File Size: 32.67.00GB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Android SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC  ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Android 11 Production Test Build for Quartz64 model A SBC ===&lt;br /&gt;
&lt;br /&gt;
==== Android 11 Stock Image [eMMC Boot] using DD method [20210604] ====&lt;br /&gt;
* DD image to eMMC module using USB adapter for eMMC module and boot. Highly recommend using [https://etcher.io/ Etcher]&lt;br /&gt;
* This is test build that used during product testing&lt;br /&gt;
* Please allow 3-5 minutes boot up time on first time for initialization&lt;br /&gt;
* DD image for 8GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-8GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): e4365753e584d9fce1b8f10f095eede6&lt;br /&gt;
*** File Size: 819MB&lt;br /&gt;
* DD image for 16GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-16GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 491c5f7744b0ca0b74ae76e607051836&lt;br /&gt;
*** File Size: 1.10GB&lt;br /&gt;
* DD image for 32GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-32GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 47a6f0cdac8bad06cb920743849a8894&lt;br /&gt;
*** File Size: 846MB&lt;br /&gt;
* DD image for 64GB eMMC module&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_dd_20210604_stock_android11_emmcboot-64GB.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 4e2fed6f5db0d55afdc8a142fc0c4fe1&lt;br /&gt;
*** File Size: 884MB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Android 11 Production Test Build for Quartz64 model A SBC [eMMC Boot] using ROCKChip tools method [20210604] ====&lt;br /&gt;
* Please unzip first and then using [https://files.pine64.org/os/Quartz64//android/RKDevTool_Release_v2.84.zip Rockchip Android tool ver 2.84] to flash in&lt;br /&gt;
* For Windows OS environment, please install the [https://files.pine64.org/os/Quartz64/android/DriverAssitant_v5.1.1.zip DriverAssistant v5.11] driver first &lt;br /&gt;
* This is test build that used during product testing&lt;br /&gt;
* The OTG port located at top USB 2.0 port on top of USB 3.0 port, needs USB type A to type A cable.&lt;br /&gt;
* Please allow 3-5 minutes boot up time on first time for initialization&lt;br /&gt;
** [https://files.pine64.org/os/Quartz64/android/Quartz64_model-A_20210604_stock_android11_emmcboot.img.gz Direct download from pine64.org]&lt;br /&gt;
*** MD5 (GZip file): 800f867fdd0d1b2bd7822c156b6067e3&lt;br /&gt;
*** File Size: 812MB&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for Quartz64 model A SBC  ===&lt;br /&gt;
* The is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Enclosures ==&lt;br /&gt;
&lt;br /&gt;
All enclosures that fit the ROCKPro64 should fit the Quartz64, as the I/O has been laid out the same on purpose.&lt;br /&gt;
&lt;br /&gt;
* [[&amp;quot;Model A&amp;quot; Acrylic Open Enclosure]] - but see the troubleshooting section below.&lt;br /&gt;
* [[ROCKPro64 ABS Enclosure]]&lt;br /&gt;
* [[Quartz64PremiumAluminiumCase|RockPro64 Premium Aluminium Case]]&lt;br /&gt;
&lt;br /&gt;
(Please expand this section with more cases known to work.)&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
&lt;br /&gt;
=== Stability/Boot Issues With Missing Battery Shunt ===&lt;br /&gt;
&lt;br /&gt;
If there is no battery plugged into the board, the jumper labelled &amp;quot;ON/OFF_BATT&amp;quot; must be in place. If this is set wrong, stability issues such as failures to boot will occur.&lt;br /&gt;
&lt;br /&gt;
=== No Ethernet Connectivity ===&lt;br /&gt;
&lt;br /&gt;
Make sure the kernel is built with &amp;lt;code&amp;gt;CONFIG_MOTORCOMM_PHY&amp;lt;/code&amp;gt; set to &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt;. Building it as a module (&amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt;) and then relying on module auto-loading is unlikely to work as the PHY chip lacks its manufacturer ID.&lt;br /&gt;
&lt;br /&gt;
=== &amp;quot;Model A&amp;quot; Acrylic Case Doesn't Fit ===&lt;br /&gt;
&lt;br /&gt;
The Quartz64 does not really fit onto the bottom plate of the [[&amp;quot;Model A&amp;quot; Acrylic Open Enclosure]]. This is because the &amp;quot;Mic&amp;quot; connector at the bottom of the board interferes with one of the posts. A workaround is to find out which post that is (you have a 50% chance of guessing it right, accounting for rotating the board) and then filing away the corner of the post pointing inwards by a few millimetres.&lt;br /&gt;
&lt;br /&gt;
[[File:Quartz64-audio-jack-spacer-issue.jpg]]&lt;br /&gt;
&lt;br /&gt;
An alternate solution may be to place plastic spacers with a smaller outer diameter in between the acrylic bottom plate posts and the SBC board.&lt;br /&gt;
&lt;br /&gt;
=== No GPU Acceleration with Debian &amp;quot;Bullseye&amp;quot; Userland ===&lt;br /&gt;
&lt;br /&gt;
Debian Bullseye ships a Mesa version that is too old to contain the required patches for the RK356x SoC's GPU. You can (at your own risk) [https://wiki.debian.org/DebianTesting use the current Debian Testing version ], called &amp;quot;Bookworm&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Quartz64]]&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Quartz64_Premium_Aluminium_Case&amp;diff=12410</id>
		<title>Quartz64 Premium Aluminium Case</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Quartz64_Premium_Aluminium_Case&amp;diff=12410"/>
		<updated>2022-01-30T11:05:43Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: Quartz64 Model A fitting in RockPro64 Premium Aluminium Case&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A nice aluminium case is available on the Pine64 store listed as &amp;quot;ROCKPro64 PREMIUM ALUMINUM CASING&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The Quartz64 model A can be made to fit this case, however some filing of one of the holes is necessary because one of the RockPro64 ports is a type-C, whereas on the Quartz64 model A all of the ports are type As.&lt;br /&gt;
&lt;br /&gt;
Interference between Quartz64 model A and the case as supplied:-&lt;br /&gt;
&lt;br /&gt;
[[File:quartz64a-rockpro64case-1.jpg]]&lt;br /&gt;
&lt;br /&gt;
Fitment once the case has been filed:-&lt;br /&gt;
&lt;br /&gt;
[[File:quartz64a-rockpro64case-2.jpg]]&lt;br /&gt;
&lt;br /&gt;
Fitment of the other end (no modification necessary):-&lt;br /&gt;
&lt;br /&gt;
[[File:quartz64a-rockpro64case-3.jpg]]&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=File:Quartz64a-rockpro64case-3.jpg&amp;diff=12409</id>
		<title>File:Quartz64a-rockpro64case-3.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=File:Quartz64a-rockpro64case-3.jpg&amp;diff=12409"/>
		<updated>2022-01-30T11:05:03Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD|PD}}&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=File:Quartz64a-rockpro64case-2.jpg&amp;diff=12408</id>
		<title>File:Quartz64a-rockpro64case-2.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=File:Quartz64a-rockpro64case-2.jpg&amp;diff=12408"/>
		<updated>2022-01-30T11:04:22Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD|PD}}&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=File:Quartz64a-rockpro64case-1.jpg&amp;diff=12407</id>
		<title>File:Quartz64a-rockpro64case-1.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=File:Quartz64a-rockpro64case-1.jpg&amp;diff=12407"/>
		<updated>2022-01-30T11:03:36Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{PD|PD}}&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11778</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11778"/>
		<updated>2021-11-05T17:49:33Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Manjaro packages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
* Use a POSIX compliant shell such as bash, not zsh (in Manjaro &amp;quot;chsh -s /bin/bash username&amp;quot;)&lt;br /&gt;
==== Manjaro packages ====&lt;br /&gt;
The following packages are needed (install with &amp;quot;sudo pacman -S packagename&amp;quot;):-&lt;br /&gt;
* make&lt;br /&gt;
* gcc&lt;br /&gt;
* python-pip&lt;br /&gt;
* dtc&lt;br /&gt;
* bison&lt;br /&gt;
* flex&lt;br /&gt;
* cpio&lt;br /&gt;
* unzip&lt;br /&gt;
* zip&lt;br /&gt;
&lt;br /&gt;
Once this is done run&lt;br /&gt;
* pip install pyelftools&lt;br /&gt;
** sudo isn't needed&lt;br /&gt;
&lt;br /&gt;
You will also need libncurses.so.5. The easiest way to install this appears to be using an Arch AUR package.&lt;br /&gt;
* Enable AUR&lt;br /&gt;
* pamac install ncurses5-compat-libs&lt;br /&gt;
** don't use sudo&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566 (for non eink)&lt;br /&gt;
* cd rk3566_ebook (for eink)&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11777</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11777"/>
		<updated>2021-11-05T17:44:05Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Build machine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
* Use a POSIX compliant shell such as bash, not zsh (in Manjaro &amp;quot;chsh -s /bin/bash username&amp;quot;)&lt;br /&gt;
==== Manjaro packages ====&lt;br /&gt;
The following packages are needed:-&lt;br /&gt;
* make&lt;br /&gt;
* gcc&lt;br /&gt;
* python-pip&lt;br /&gt;
* dtc&lt;br /&gt;
* bison&lt;br /&gt;
* flex&lt;br /&gt;
* cpio&lt;br /&gt;
* unzip&lt;br /&gt;
* zip&lt;br /&gt;
&lt;br /&gt;
Once this is done run&lt;br /&gt;
* pip install pyelftools&lt;br /&gt;
&lt;br /&gt;
You will also need libncurses.so.5. The easiest way to install this appears to be using an Arch AUR package.&lt;br /&gt;
* Enable AUR&lt;br /&gt;
* pamac install ncurses5-compat-libs&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566 (for non eink)&lt;br /&gt;
* cd rk3566_ebook (for eink)&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11776</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11776"/>
		<updated>2021-11-04T22:24:50Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Compilation process */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
* Use a POSIX compliant shell such as bash, not zsh (in Manjaro &amp;quot;chsh -s /bin/bash username&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566 (for non eink)&lt;br /&gt;
* cd rk3566_ebook (for eink)&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11775</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11775"/>
		<updated>2021-11-04T22:13:21Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Build machine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
* Use a POSIX compliant shell such as bash, not zsh (in Manjaro &amp;quot;chsh -s /bin/bash username&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11774</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11774"/>
		<updated>2021-11-04T22:11:09Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Build machine */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
* Use a POSIX compliant shell such as bash, not zsh&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11773</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11773"/>
		<updated>2021-11-04T21:35:36Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* QUARTZ64-model-A_eink.android11_SDK */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11772</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11772"/>
		<updated>2021-11-04T21:33:07Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Android 11 eink SDK for PineNote and Quart64 model A SBC */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11771</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11771"/>
		<updated>2021-11-04T21:32:19Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: Undo revision 11770 by Dieselnutjob (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11770</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11770"/>
		<updated>2021-11-04T21:30:52Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Android 11 eink SDK for PineNote and Quart64 model A SBC */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK ===&lt;br /&gt;
for PineNote and Quart64 model A SBC &lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11769</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11769"/>
		<updated>2021-11-04T21:30:29Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Android 11 SDK for Quartz64 model A SBC and SOQuartz */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK ===&lt;br /&gt;
for Quartz64 model A SBC and SOQuartz&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version:&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11768</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11768"/>
		<updated>2021-11-04T21:24:52Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* QUARTZ64-model-A_eink.android11_SDK */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC and SOQuartz ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
* Only the PineNote target has been tested at this time.&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11767</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11767"/>
		<updated>2021-11-04T21:24:11Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Compilation process */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC and SOQuartz ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11766</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11766"/>
		<updated>2021-11-04T21:23:39Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Compilation process */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC and SOQuartz ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;br /&gt;
* Only the PineNote target has been compiled using these instructions at this time.&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11765</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11765"/>
		<updated>2021-11-04T21:22:23Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* QUARTZ64-model-A_eink.android11_SDK */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC and SOQuartz ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* Download link [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11764</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11764"/>
		<updated>2021-11-04T21:21:51Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC and SOQuartz ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
* [https://wiki.pine64.org/images/c/ca/QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar]&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=File:QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar&amp;diff=11763</id>
		<title>File:QUARTZ64-model-A eink.android11 SDK.patches.04112021.tar</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=File:QUARTZ64-model-A_eink.android11_SDK.patches.04112021.tar&amp;diff=11763"/>
		<updated>2021-11-04T21:20:03Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: k3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py
rk3566_ebook/u-boot/arch/arm/dts/Makefile
rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l
rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c
rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
k3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py&lt;br /&gt;
rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
&lt;br /&gt;
== Licensing ==&lt;br /&gt;
{{subst:Unknown_copyright}}&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11762</id>
		<title>Android SDK for RK3566</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Android_SDK_for_RK3566&amp;diff=11762"/>
		<updated>2021-11-04T21:10:54Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: Android SDK for RK3566&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two Android SDKs are available from Pine64 for RK3566 devices:-&lt;br /&gt;
&lt;br /&gt;
== QUARTZ64_SDK_android11 ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 SDK for Quartz64 model A SBC and SOQuartz ===&lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64_SDK_android11.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 77c2ff57ea3372fb04da7fb49e17d12b&lt;br /&gt;
** File Size: 79.00GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== QUARTZ64-model-A_eink.android11_SDK ==&lt;br /&gt;
&lt;br /&gt;
=== Android 11 eink SDK for PineNote and Quart64 model A SBC  ===&lt;br /&gt;
* This is the Android SDK build for 10.3&amp;quot; eink panel on Quartz64 model A SBC. &lt;br /&gt;
* [http://files.pine64.org/SDK/Quartz64/QUARTZ64-model-A_eink.android11_SDK.tar.gz Direct Download from pine64.org]&lt;br /&gt;
** MD5 (TAR-GZip file): 293a550584298de4fb95ceae18103672&lt;br /&gt;
** File Size: 72.88GB&lt;br /&gt;
** Just the boot blobs (&amp;lt;1MB): [[File:Rk35-blobs.tar.gz]]&lt;br /&gt;
** Android build version: &lt;br /&gt;
&lt;br /&gt;
== Compiling ==&lt;br /&gt;
&lt;br /&gt;
=== Build machine ===&lt;br /&gt;
* 64 bit Linux (Manjaro tested)&lt;br /&gt;
* At least 16G RAM&lt;br /&gt;
* At least 250G free storage, preferably SSD based&lt;br /&gt;
&lt;br /&gt;
=== Patches ===&lt;br /&gt;
&lt;br /&gt;
==== QUARTZ64-model-A_eink.android11_SDK ====&lt;br /&gt;
For QUARTZ64-model-A_eink.android11_SDK the following files will need to be updated:-&lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/mach-rockchip/decode_bl31.py                                                                                    &lt;br /&gt;
* rk3566_ebook/u-boot/arch/arm/dts/Makefile&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.l&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c&lt;br /&gt;
* rk3566_ebook/u-boot/scripts/dtc/dtc-lexer.lex.c_shipped&lt;br /&gt;
&lt;br /&gt;
=== Compilation process ===&lt;br /&gt;
* cd rk3566&lt;br /&gt;
* source build/envsetup.sh&lt;br /&gt;
* lunch&lt;br /&gt;
* ./build.sh -UCKAu&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Veracrypt_on_Manjaro&amp;diff=8955</id>
		<title>User:Dieselnutjob/Pinebook Pro/Veracrypt on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Veracrypt_on_Manjaro&amp;diff=8955"/>
		<updated>2021-01-13T18:02:43Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: removed instructions about loop interface because after testing it seems it isn't needed&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You can install Veracrypt on the Pinebook Pro, but you have to (at this time) compile it from source.&lt;br /&gt;
This is how to do it,&lt;br /&gt;
You need to install the following packages:-&lt;br /&gt;
&lt;br /&gt;
sudo pacman -Syu&lt;br /&gt;
gcc&lt;br /&gt;
binutils&lt;br /&gt;
fakeroot&lt;br /&gt;
yasm&lt;br /&gt;
wxgtk3&lt;br /&gt;
patch&lt;br /&gt;
asp&lt;br /&gt;
make&lt;br /&gt;
dracut&lt;br /&gt;
&lt;br /&gt;
Create a new folder and cd into it.&lt;br /&gt;
&lt;br /&gt;
asp checkout veracrypt&lt;br /&gt;
&lt;br /&gt;
cd into the folder with the PKGBUILD (./veracrypt/trunk)&lt;br /&gt;
&lt;br /&gt;
makepkg --ignorearch --skippgpcheck&lt;br /&gt;
&lt;br /&gt;
If you are in luck  you will find this file appearing in the trunk folder&lt;br /&gt;
&lt;br /&gt;
veracrypt-1.24.update4-1-aarch64.pkg.tar.xz&lt;br /&gt;
&lt;br /&gt;
you can install it with this command&lt;br /&gt;
&lt;br /&gt;
sudo pamac install veracrypt-1.24.update4-1-aarch64.pkg.tar.xz&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Veracrypt_on_Manjaro&amp;diff=8954</id>
		<title>User:Dieselnutjob/Pinebook Pro/Veracrypt on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Veracrypt_on_Manjaro&amp;diff=8954"/>
		<updated>2021-01-13T17:55:24Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You can install Veracrypt on the Pinebook Pro, but you have to (at this time) compile it from source.&lt;br /&gt;
This is how to do it,&lt;br /&gt;
You need to install the following packages:-&lt;br /&gt;
&lt;br /&gt;
sudo pacman -Syu&lt;br /&gt;
gcc&lt;br /&gt;
binutils&lt;br /&gt;
fakeroot&lt;br /&gt;
yasm&lt;br /&gt;
wxgtk3&lt;br /&gt;
patch&lt;br /&gt;
asp&lt;br /&gt;
make&lt;br /&gt;
dracut&lt;br /&gt;
&lt;br /&gt;
Create a new folder and cd into it.&lt;br /&gt;
&lt;br /&gt;
asp checkout veracrypt&lt;br /&gt;
&lt;br /&gt;
cd into the folder with the PKGBUILD (./veracrypt/trunk)&lt;br /&gt;
&lt;br /&gt;
makepkg --ignorearch --skippgpcheck&lt;br /&gt;
&lt;br /&gt;
If you are in luck  you will find this file appearing in the trunk folder&lt;br /&gt;
&lt;br /&gt;
veracrypt-1.24.update4-1-aarch64.pkg.tar.xz&lt;br /&gt;
&lt;br /&gt;
you can install it with this command&lt;br /&gt;
&lt;br /&gt;
sudo pamac install veracrypt-1.24.update4-1-aarch64.pkg.tar.xz&lt;br /&gt;
&lt;br /&gt;
if you need a loop interface to make it work do this:-&lt;br /&gt;
&lt;br /&gt;
sudo echo &amp;quot;loop&amp;quot; &amp;gt;&amp;gt; /etc/modules-load.d/veracrypt.conf&lt;br /&gt;
&lt;br /&gt;
sudo echo &amp;quot;options loop max_loop=8&amp;quot; &amp;gt;&amp;gt; /etc/modprobe.d/eightloop.conf&lt;br /&gt;
&lt;br /&gt;
Make it permanent by rebuilding initrd&lt;br /&gt;
&lt;br /&gt;
dracut --force&lt;br /&gt;
&lt;br /&gt;
reboot&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Truecrypt_on_Manjaro&amp;diff=8953</id>
		<title>User:Dieselnutjob/Pinebook Pro/Truecrypt on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Truecrypt_on_Manjaro&amp;diff=8953"/>
		<updated>2021-01-13T16:22:11Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;At least on the default Manjaro build on Pinebook Pro, as of August 2020 Truecrypt is available in Add/Remove Software.&lt;br /&gt;
&lt;br /&gt;
However it does not work out of the box due to the lack of a loop device needed to mount a Truecrypt volume.&lt;br /&gt;
&lt;br /&gt;
First you need to install dracut&lt;br /&gt;
&lt;br /&gt;
sudo pacman -Syu dracut&lt;br /&gt;
&lt;br /&gt;
Configure loop&lt;br /&gt;
&lt;br /&gt;
sudo echo &amp;quot;loop&amp;quot; &amp;gt;&amp;gt; /etc/modules-load.d/truecrypt.conf&lt;br /&gt;
&lt;br /&gt;
sudo echo &amp;quot;options loop max_loop=8&amp;quot; &amp;gt;&amp;gt; /etc/modprobe.d/eightloop.conf&lt;br /&gt;
&lt;br /&gt;
Make it permanent by rebuilding initrd&lt;br /&gt;
&lt;br /&gt;
dracut --force&lt;br /&gt;
&lt;br /&gt;
reboot&lt;br /&gt;
&lt;br /&gt;
You are probably better off installing Veracrypt as described here:-&lt;br /&gt;
&lt;br /&gt;
https://wiki.pine64.org/wiki/Pinebook_Pro/Veracrypt_on_Manjaro&lt;br /&gt;
&lt;br /&gt;
Original sources of information:-&lt;br /&gt;
&lt;br /&gt;
https://bbs.archlinux.org/viewtopic.php?id=136879&lt;br /&gt;
&lt;br /&gt;
https://forum.manjaro.org/t/using-dracut-on-manjaro/136310&lt;br /&gt;
&lt;br /&gt;
[[Category:PineBook Pro]]&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Veracrypt_on_Manjaro&amp;diff=8952</id>
		<title>User:Dieselnutjob/Pinebook Pro/Veracrypt on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Veracrypt_on_Manjaro&amp;diff=8952"/>
		<updated>2021-01-13T16:19:52Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: Created page with &amp;quot;You can install Veracrypt on the Pinebook Pro, but you have to (at this time) compile it from source. This is how to do it, You need to install the following packages:-  subve...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;You can install Veracrypt on the Pinebook Pro, but you have to (at this time) compile it from source.&lt;br /&gt;
This is how to do it,&lt;br /&gt;
You need to install the following packages:-&lt;br /&gt;
&lt;br /&gt;
subversion (possibly)&lt;br /&gt;
gcc&lt;br /&gt;
binutils&lt;br /&gt;
fakeroot&lt;br /&gt;
yasm&lt;br /&gt;
wxgtk3&lt;br /&gt;
patch&lt;br /&gt;
asp&lt;br /&gt;
make&lt;br /&gt;
dracut&lt;br /&gt;
&lt;br /&gt;
Create a new folder and cd into it.&lt;br /&gt;
&lt;br /&gt;
asp checkout veracrypt&lt;br /&gt;
&lt;br /&gt;
cd into the folder with the PKGBUILD (./veracrypt/trunk)&lt;br /&gt;
&lt;br /&gt;
makepkg --ignorearch --skippgpcheck&lt;br /&gt;
&lt;br /&gt;
If you are in luck  you will find this file appearing in the trunk folder&lt;br /&gt;
&lt;br /&gt;
veracrypt-1.24.update4-1-aarch64.pkg.tar.xz&lt;br /&gt;
&lt;br /&gt;
you can install it with this command&lt;br /&gt;
&lt;br /&gt;
sudo pamac install veracrypt-1.24.update4-1-aarch64.pkg.tar.xz&lt;br /&gt;
&lt;br /&gt;
if you need a loop interface to make it work do this:-&lt;br /&gt;
&lt;br /&gt;
sudo echo &amp;quot;loop&amp;quot; &amp;gt;&amp;gt; /etc/modules-load.d/veracrypt.conf&lt;br /&gt;
&lt;br /&gt;
sudo echo &amp;quot;options loop max_loop=8&amp;quot; &amp;gt;&amp;gt; /etc/modprobe.d/eightloop.conf&lt;br /&gt;
&lt;br /&gt;
Make it permanent by rebuilding initrd&lt;br /&gt;
&lt;br /&gt;
dracut --force&lt;br /&gt;
&lt;br /&gt;
reboot&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Pinebook_Pro&amp;diff=8465</id>
		<title>Pinebook Pro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Pinebook_Pro&amp;diff=8465"/>
		<updated>2020-12-17T13:29:59Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Other Resources */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= User Guide =&lt;br /&gt;
== Introducing PineBook Pro == &lt;br /&gt;
[[File:PBP.jpg|400px|thumb|right|Pinebook Pro running Debian with MATE]]&lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro is a Linux and *BSD ARM laptop from [https://www.pine64.org/ PINE64]&lt;br /&gt;
&lt;br /&gt;
It is built to be a compelling alternative to mid-ranged Chromebooks that people convert into Linux laptops. It features an IPS 1080p 14″ LCD panel, a premium magnesium alloy shell, high capacity eMMC storage, a 10,000 mAh capacity battery, and the modularity that only an open source project can deliver. &lt;br /&gt;
&lt;br /&gt;
It's compact and slim dimensions are 329mm x 220mm x 12mm (WxDxH).&lt;br /&gt;
&lt;br /&gt;
Key features include: the RK3399 SOC; USB-C for data, video-out and power-in (3A 5V); privacy switches for the microphone, BT/WiFi module, and camera; and expandable storage via NVMe (PCIe 4x) with an optional adapter. &lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro is equipped with 4GB LPDDR4 system memory, high capacity eMMC flash storage, and 128Mb SPI boot Flash. The I/O includes: 1x micro SD card reader (bootable), 1x USB 2.0, 1x USB 3.0, 1x USB type C Host with DP 1.2 and power-in, PCIe 4x for an NVMe SSD drive (requires an optional adapter), and UART (via the headphone jack by setting an internal switch). &lt;br /&gt;
&lt;br /&gt;
The keyboard and trackpad both use the USB 2.0 protocol.  The LCD panel uses eDP MiPi display protocol.&lt;br /&gt;
&lt;br /&gt;
Many different Operating Systems (OS) are freely available from the open source community and partner projects.  These include various flavors of Linux (Ubuntu, Debian, Manjaro, etc.) and *BSD.&lt;br /&gt;
&lt;br /&gt;
== Software and OS Image Downloads ==&lt;br /&gt;
&lt;br /&gt;
=== Default Manjaro KDE Desktop Quick Start ===&lt;br /&gt;
&lt;br /&gt;
When you first get your Pinebook Pro and boot it up for the first time, it'll come with Manjaro using the KDE desktop. The Pinebook Pro is officially supported by the Manjaro ARM project, and support can be found on the [https://forum.manjaro.org/c/manjaro-arm/78 Manjaro ARM forums.]&lt;br /&gt;
&lt;br /&gt;
On first boot, it will ask for certain information such as your timezone location, keyboard layout, username, password, and hostname. Most of these should be self-explanatory. Note that the hostname it asks for should be thought of as the &amp;quot;codename&amp;quot; of your machine, and if you don't know what it's about, you can make something up (use a single word, all lower case, no punctuation; e.g. &amp;quot;pbpro&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
After you're on the desktop, be sure to update it as soon as possible and reboot after updates are finished installing. If nothing appears when you click on the Networking icon in your system tray to connect to your Wi-Fi, ensure the Wi-Fi [https://wiki.pine64.org/index.php/Pinebook_Pro#ANSI_Fn_.2B_F_keys_wrong_for_F9.2C_F10.2C_F11_and_F12  privacy switch] is not disabled.&lt;br /&gt;
&lt;br /&gt;
=== [[Pinebook Pro_Software_Release|Pinebook Pro images]] ===&lt;br /&gt;
Under [[Pinebook Pro Software Release|'Pinebook Pro Software Release/OS Image Download Section']] you will find a complete list of currently supported Operating System images that work with the Pinebook as well as other related software. &lt;br /&gt;
&lt;br /&gt;
The list includes OS images and descriptions of:&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#elementary OS|'''elementary OS 6 (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Manjaro ARM|'''Manjaro ARM (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Debian Desktop|'''Debian Desktop (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Bionic LXDE|'''Bionic LXDE (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Bionic Mate|'''Bionic Mate (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Fedora|'''Fedora (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#OpenSUSE|'''OpenSUSE (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Q4OS|'''Q4OS (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Armbian|'''Armbian (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#NetBSD|'''NetBSD (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[Pinebook_Pro_Software_Release#OpenBSD|'''OpenBSD release for ARM64''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Chromium|'''Chromium (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Arch_Linux|'''Arch Linux ARM installer (microSD and USB boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Android_7.1_microSD|'''Android 7.1 (microSD Boot)''']] &lt;br /&gt;
&lt;br /&gt;
[[File:Android_7.png|125px]]] [[PinebookPro_Software_Release#Android_7.1_eMMC|'''Android 7.1 (eMMC)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Daniel_Thompson.27s_Debian_Installer_for_the_Pinebook_Pro|'''Debian Installer for Pinebook Pro''']]&lt;br /&gt;
&lt;br /&gt;
[[Pinebook_Pro_Software_Release#Gentoo_Script_for_Pinebook_Pro|'''Gentoo Script for Pinebook Pro''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Kali_Linux_for_Pinebook_Pro|'''Kali Script for Pinebook Pro (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
=== Quick Links to OS Images Build Sources===&lt;br /&gt;
'''Some of the provided OS images are still in &amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;beta or nightly build&amp;lt;/span&amp;gt; and only fit for testing purposes. These images ought to be avoided for normal usage - use them at &amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;your own risk&amp;lt;/span&amp;gt;'''&lt;br /&gt;
* [https://github.com/ayufan-rock64/linux-build/releases/ ayufan's Linux build repo] (Includes Ubuntu 20.04 Focal Fossa and Debian Buster images. Click 'Assets' at the end of the releases text to view images) &lt;br /&gt;
* [https://github.com/ayufan-rock64/chromiumos-build/releases ayufan's Chromium OS build repo]&lt;br /&gt;
* [https://github.com/mrfixit2001/debian_desktop/releases mrfixit2001's Linux debian desktop build repo]&lt;br /&gt;
&lt;br /&gt;
== Keyboard ==&lt;br /&gt;
The Pinebook Pro is available in two keyboard configurations: ISO and ANSI. Both the keyboard and trackpad in the Pinebook Pro use the USB 2.0 protocol and show up as such in xinput. The keyboard features function (Fn) keys in the F-key row, which include display brightness controls, sound volume, trackpad lock, and other functionality. There is also a custom PINE64 logo key that functions as Menu/Super key. It has also a secondary functionality for setting the privacy switches.   &lt;br /&gt;
&lt;br /&gt;
The keyboard firmware binary can be flashed from userspace using the provided open source utility. &lt;br /&gt;
&lt;br /&gt;
Documentation for the keyboard can be found in [[#Datasheets for Components and Peripherals|Datasheets for Components and Peripherals]]. &lt;br /&gt;
&lt;br /&gt;
=== Typing special characters ===&lt;br /&gt;
The [[Wikipedia:British_and_American_keyboards#Other_keyboard_layouts|UK ISO Layout]] does not have dedicated keys for characters like the German umlauts (Ä,Ö,Ü, etc). Certain characters can still be generated by means of either key combinations or key sequences. &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Character&lt;br /&gt;
!Key combination/sequence&lt;br /&gt;
|-&lt;br /&gt;
|Ä, Ö, Ü, ä, ö, ü&lt;br /&gt;
|[[Wikipedia:AltGr_key|[AltGr]]]+'[' followed by [A], [O], [U], [a], [o] or [u]&lt;br /&gt;
|-&lt;br /&gt;
|µ&lt;br /&gt;
|[AltGr]+[m]&lt;br /&gt;
|-&lt;br /&gt;
|Ø, ø&lt;br /&gt;
|[AltGr]+[O], [AltGr]+[o]&lt;br /&gt;
|-&lt;br /&gt;
|@&lt;br /&gt;
|[AltGr]+[q] (as on the German layout)&lt;br /&gt;
|-&lt;br /&gt;
|ß&lt;br /&gt;
|[AltGr]+[s]&lt;br /&gt;
|-&lt;br /&gt;
|§&lt;br /&gt;
|[AltGr]+[S]&lt;br /&gt;
|-&lt;br /&gt;
|°&lt;br /&gt;
|[AltGr]+[)]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Privacy Switches ===&lt;br /&gt;
There are three privacy switches mapped to the F10, F11 and F12 keys on the Pinebook Pro keyboard. They de/activate the following:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Privacy switch function and description&lt;br /&gt;
! Combination&lt;br /&gt;
! Effect&lt;br /&gt;
! Description&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | PINE64 logo key+F10&lt;br /&gt;
| Microphone Privacy switch&lt;br /&gt;
| CAPs lock LED blinks. 2 blinks = enabled, 3 blinks = disabled&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | PINE64 logo key+F11&lt;br /&gt;
| WiFi Privacy switch&lt;br /&gt;
| NUM lock LED blinks. 2 blinks = WiFi enabled / killswitch disabled, 3 blinks = WiFi disabled / killswitch enabled.&lt;br /&gt;
| '''Re-enabling requires reboot''' (or a [//forum.pine64.org/showthread.php?tid=8313&amp;amp;pid=52645#pid52645 command line hack to bind/unbind]).&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | PINE64 logo key+F12&lt;br /&gt;
| Camera privacy switch&lt;br /&gt;
| CAPs lock and NUM lock LEDs blink together. 2 blinks = enabled, 3 blinks = disabled&lt;br /&gt;
| Can use tools like '''&amp;lt;code&amp;gt;lsusb&amp;lt;/code&amp;gt;''' to detect camera's presence. If not detected, check privacy switch.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''(Press the PINE64 logo key plus F10/F11/F12) for 3 seconds)'''&lt;br /&gt;
&lt;br /&gt;
The keyboard operates on firmware independant of the operating system.  It detects if one of the F10, F11 or F12 keys is pressed in combination with the Pine key for 3 seconds. Doing so disables power to the appropriate peripheral, thereby disabling it.  This has the same effect as cutting off the power to each peripheral with a physical switch. This implementation is very secure, since the firmware that determines whether a peripheral gets power is not part of the Pinebook Pro’s operating system. So the power state value for each peripheral cannot be overridden or accessed from the operating system. The power state setting for each peripheral is stored across reboots inside the keyboard's firmware flash memory.&lt;br /&gt;
&lt;br /&gt;
== Trackpad ==&lt;br /&gt;
The trackpad is a reasonable size, has a matte finish that that your finger can slide along easily, and two actuating buttons. It is the only component of the Pinebook Pro held in place with strong adhesive tape. It supports multi-touch functionality. &lt;br /&gt;
Documentation for the trackpad can be found in [[#Datasheets for Components and Peripherals|Datasheets for Components and Peripherals]].&lt;br /&gt;
The trackpad firmware binary can be flashed from userspace using the provided open source utility (https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater). A fork with more recent changes is also available (https://github.com/jackhumbert/pinebook-pro-keyboard-updater) and may want to be considered instead while feature parity is different.&lt;br /&gt;
&lt;br /&gt;
The trackpad controller is connected to the keyboard controller. All trackpad events go through the keyboard controller and it's software, then to the keyboard controller's USB port. Note that the trackpad does have separate firmware, (which has to be written through the keyboard controller).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Everyone with a Pinebook Pro produced in 2019 should update their keyboard and trackpad firmware.''' &lt;br /&gt;
&lt;br /&gt;
Before you start:&lt;br /&gt;
&lt;br /&gt;
Please refer to original documentation for details.&lt;br /&gt;
&lt;br /&gt;
Your Pinebook Pro should be either fully charged or, preferably, running off of mains. This utility will be writing chips on the keyboard and trackpad, so a loss of power during any stage of the update can result in irrecoverable damage to your trackpad or keyboard.&lt;br /&gt;
&lt;br /&gt;
The scripts ought to work on all OSs available for the Pinebook Pro. Some OSs may, however, require installation of relevant dependencies. The instructions below assume a Debian desktop. Newer Pinebook Pro models that come with Manjaro will require a different command to install the proper dependencies.&lt;br /&gt;
&lt;br /&gt;
There are two keyboard versions of the Pinebook Pro: ISO and ANSI. You need to know which model you have prior to running the updater. &lt;br /&gt;
Firmware update steps for both models are listed below.  &lt;br /&gt;
&lt;br /&gt;
What you will need:&lt;br /&gt;
&lt;br /&gt;
*Your Pinebook Pro fully charged or running off of mains power&lt;br /&gt;
*Connection to WiFi&lt;br /&gt;
*An external USB keyboard &amp;amp; mouse (or access to the Pinebook Pro via SSH)&lt;br /&gt;
&lt;br /&gt;
'''ISO Model''' &lt;br /&gt;
&lt;br /&gt;
From the terminal command line: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo apt-get install build-essential libusb-1.0-0-dev xxd&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 1&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-1 iso&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 (after reboot)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-2 iso&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''ANSI Model''' &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;NOTE:&amp;lt;/b&amp;gt; Running step 1 on the ANSI keyboard model will make the keyboard and trackpad inaccessible until step 2 is ran, so an external keyboard must be connected to complete the update on this model!&lt;br /&gt;
&lt;br /&gt;
From the terminal command line: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo apt-get install build-essential libusb-1.0-0-dev xxd&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 1&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-1 ansi&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 (after reboot)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-2 ansi&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
When done, if some of the keys produce incorrect characters, please check your OS’s language settings. For ANSI users, the default OS shipped with English UK as the default language. You can change it to English US if desired.&lt;br /&gt;
&lt;br /&gt;
=== X-Windows &amp;amp; trackpad settings ===&lt;br /&gt;
Some forum members have found that an adjustment to X-Windows will allow finer motion in the trackpad. If you use the '''Synaptic''' mouse/trackpad driver, use this command to make the change live:&lt;br /&gt;
&amp;lt;pre&amp;gt;synclient MinSpeed=0.25&amp;lt;/pre&amp;gt;&lt;br /&gt;
You may experiment with different settings, but 0.25 was tested as helping noticeably.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To make the change persist across reboots, change the file &amp;lt;code&amp;gt;/etc/X11/xorg.conf&amp;lt;/code&amp;gt; similar to below:&lt;br /&gt;
&amp;lt;pre&amp;gt;    Section &amp;quot;InputClass&amp;quot;&lt;br /&gt;
        Identifier &amp;quot;touchpad catchall&amp;quot;&lt;br /&gt;
        Driver &amp;quot;synaptics&amp;quot;&lt;br /&gt;
        MatchIsTouchpad &amp;quot;on&amp;quot;&lt;br /&gt;
        MatchDevicePath &amp;quot;/dev/input/event*&amp;quot;&lt;br /&gt;
        Option &amp;quot;MinSpeed&amp;quot; &amp;quot;0.25&amp;quot;&lt;br /&gt;
    EndSection&amp;lt;/pre&amp;gt;&lt;br /&gt;
The line &amp;lt;code&amp;gt;Option &amp;quot;MinSpeed&amp;quot; &amp;quot;0.25&amp;quot;&amp;lt;/code&amp;gt; is the change.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Another forum user built on the above settings a little, and have found these to be very good:&lt;br /&gt;
&amp;lt;pre&amp;gt;synclient MinSpeed=0.25&lt;br /&gt;
synclient TapButton1=1&lt;br /&gt;
synclient TapButton2=3&lt;br /&gt;
synclient TapButton3=2&lt;br /&gt;
synclient FingerLow=30&lt;br /&gt;
synclient PalmDetect=1&lt;br /&gt;
synclient VertScrollDelta=64&lt;br /&gt;
synclient HorizScrollDelta=64&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;FingerLow&amp;lt;/code&amp;gt; has the same value as 'FingerHigh' in one config (30). It is believed to help reduce mouse movement as you lift your finger, but it's unknown whether synaptic works like this.&lt;br /&gt;
You may find this config to be comfortable for daily use.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;TabButton&amp;lt;/code&amp;gt; allows to just tab the touchpad instead of physically pressing it down (to get this click noise).&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;right mouse click&amp;lt;/code&amp;gt; is emulated by tapping with two fingers on the trackpad. If you feel that this is not very responsive you can try this value:&lt;br /&gt;
&amp;lt;pre&amp;gt; synclient MaxTapTime=250 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Power Supply ==&lt;br /&gt;
* Input Power: 5V DC @ 3A&lt;br /&gt;
* Mechanical: 3.5mm OD / 1.35mm ID, Barrel jack&lt;br /&gt;
* USB-C 5V, 15W PD quickcharge&lt;br /&gt;
* Only use one power input at a time, barrel jack OR USB-C&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
In total, there are four LEDs on the Pinebook Pro, three of which are placed in the top-left side of the keyboard, and one near the barrel port: &lt;br /&gt;
&lt;br /&gt;
# The red LED next to the barrel port indicates charging, in three ways.  First, it will illuminate steadily when either the factory power supply or a USB Type-C charger is connected to the Pinebook Pro, and the battery is getting charged.  Second, if the battery is at 100%, the LED will remain turned off regardless of the connected power input; however, this is [https://forum.pine64.org/showthread.php?tid=10899 rather rarely achieved].  Third, this LED will flash at 0.5&amp;amp;nbsp;Hz if there are any problems that prevent charging, such as the battery becoming too hot.&lt;br /&gt;
# The power indicator LED, above the keyboard, supports three different colours: green, amber and red. It is also capable of flashing to indicate eMMC activity. In the default Debian with MATE build, green LED means power and red means suspend (amber is unused). &lt;br /&gt;
# The green NumLock LED, above the keyboard.&lt;br /&gt;
# The green CapsLock LED, above the keyboard.&lt;br /&gt;
&lt;br /&gt;
The NumLock and CapsLock LEDs serve their usual purposes on a keyboard, but they also have a secondary function. When the privacy switches get activated they blink to confirm that the switch has been activated.&lt;br /&gt;
&lt;br /&gt;
== Webcam ==&lt;br /&gt;
* Streaming video resolutions supported, (un-compressed):&lt;br /&gt;
** 320 x 240 &lt;br /&gt;
** 640 x 480&lt;br /&gt;
** 800 x 600&lt;br /&gt;
** 1280 x 720&lt;br /&gt;
** 1600 x 1200&lt;br /&gt;
* Still frame resolutions supported:&lt;br /&gt;
** 160 x 120&lt;br /&gt;
** 176 x 144&lt;br /&gt;
** 320 x 240&lt;br /&gt;
** 352 x 288 &lt;br /&gt;
** 640 x 480&lt;br /&gt;
** 800 x 600&lt;br /&gt;
** 1280 x 720&lt;br /&gt;
** 1600 x 1200&lt;br /&gt;
* Some people test with the application Cheese&lt;br /&gt;
WIP&lt;br /&gt;
&lt;br /&gt;
== Microphones ==&lt;br /&gt;
While it has been said that some Pinebook Pro units contain only one microphone despite having two labeled microphone holes on the outer casing, other units do indeed contain two microphones. It is presently unclear which batches have either configuration; units from the initial community batch of 1000 units (following the initial 100) are believed to contain two, populating both labeled holes.&lt;br /&gt;
&lt;br /&gt;
The wires leading to both microphones connect to the mainboard with a small white plastic connector, located directly adjacent to the ribbon cable attachment point for the keyboard interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Microphones not working?'''&lt;br /&gt;
&lt;br /&gt;
If pavucontrol input doesn't show microphone activity try the [[Pinebook_Pro#Privacy_Switches]]; once that is set to on do the below; if that still hasn't fixed it you may want to check that the microphone connector is plugged in (see the [[Pinebook_Pro#Technical_Reference]]).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
run alsamixer from the command line &amp;gt; hit F6 and select the es8316 &amp;gt; hit F4 to get to the capture screen &amp;gt; select the bar labeled ADC &amp;gt;&lt;br /&gt;
&amp;gt; increase the gain to 0dB &amp;gt; change the audio profile in pavucontrol to another with input&lt;br /&gt;
&lt;br /&gt;
Additionally:&lt;br /&gt;
you may want to modify ADC PGA to get the levels to where you want them&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bluetooth and WiFi ==&lt;br /&gt;
[[File:PinebookPro_WirelessIC_Location.jpg|400px|thumb|right|The Pinebook Pro's AP6256 wireless module]]&lt;br /&gt;
===Hardware Overview===&lt;br /&gt;
The Pinebook Pro contains an AMPAK AP6256 wireless module to provide Wi-Fi (compliant to IEEE 802.11ac) and Bluetooth (compliant to Bluetooth SIG revision 5.0). The module contains a Broadcom transceiver IC, believed to be the BCM43456, as well as the support electronics needed to allow the Wi-Fi and Bluetooth modes to share a single antenna. &lt;br /&gt;
&lt;br /&gt;
The wireless module interfaces with the Pinebook Pro’s system-on-chip using a combination of three interfaces: Bluetooth functionality is operated by serial UART and PCM, while the Wi-Fi component uses SDIO. It is unknown if the module’s Bluetooth capabilites are usable under operating systems that do not support SDIO.&lt;br /&gt;
&lt;br /&gt;
The module’s RF antenna pin is exposed on the mainboard via a standard Hirose U.FL connector, where a coaxial feedline links it to a flexible adhesive antenna situated near the upper right corner of the Pinebook Pro’s battery. As the RF connector is fragile and easily damaged, it should be handled carefully during connection and disconnection, and should not be reconnected frequently.&lt;br /&gt;
&lt;br /&gt;
===Issues===&lt;br /&gt;
Problems have been reported with the Wi-Fi transceiver’s reliability during extended periods of high throughput, especially on the 2.4 GHz band. While the cause of this has yet to be determined, switching to the 5 GHz band may improve stability.&lt;br /&gt;
&lt;br /&gt;
Since the Bluetooth transceiver shares both its spectrum and antenna with 2.4 GHz Wi-Fi, simultaneous use of these modes may cause interference, especially when listening to audio over Bluetooth. If Bluetooth audio cuts out frequently, switching to the 5 GHz band – or deactivating Wi-Fi – may help.&lt;br /&gt;
&lt;br /&gt;
===Wi-Fi Capabilities===&lt;br /&gt;
Wi-Fi on the Pinebook Pro is capable of reaching a maximum data transfer rate of approximately 433 megabits per second, using one spatial stream. The transceiver does not support multiple spatial streams or 160-MHz channel bandwidths.&lt;br /&gt;
&lt;br /&gt;
The Wi-Fi transceiver supports the lower thirteen standard channels on the 2.4 GHz band, using a bandwidth of 20 MHz. At least twenty-four channels are supported on the 5 GHz band, spanning frequencies from 5180 to 5320 MHz, 5500 to 5720 MHz, and 5745 to 5825 MHz, with bandwidths of 20, 40, or 80 MHz.&lt;br /&gt;
&lt;br /&gt;
Maximum reception sensitivity for both bands is approximately -92 dBm. The receiver can tolerate input intensities of no more than -20 dBm on the 2.4 GHz band, and no more than -30 dBm on the 5 GHz band. Maximum transmission power is approximately +15 dBm for either band, falling further to approximately +10 dBm at higher data transfer rates on the 5 GHz band.&lt;br /&gt;
&lt;br /&gt;
With current available drivers and firmware, the Wi-Fi interface supports infrastructure, ad-hoc, and access-point modes with satisfactory reliability. Monitor mode is not presently supported. Wi-Fi Direct features may be available, but it is unclear how to make use of them under Linux.&lt;br /&gt;
&lt;br /&gt;
Be aware that Linux userspace utilities, such as &amp;lt;code&amp;gt;iw&amp;lt;/code&amp;gt;, may report inaccurate information about the capabilities of wireless devices. Parameter values derived from vendor datasheets, or direct testing, should be preferred to the outputs of hardware-querying tools.&lt;br /&gt;
&lt;br /&gt;
===Bluetooth Capabilities===&lt;br /&gt;
Bluetooth data transfer speeds have an indicated maximum of 3 megabits per second, but it is unclear what practical data rates can be expected. Audio streaming over Bluetooth is functioning normally, as is networking. Bluetooth Low-Energy functions, such as interacting with Bluetooth beacons, have not yet been tested conclusively.&lt;br /&gt;
&lt;br /&gt;
The Bluetooth transceiver supports all 79 channel allocations, spanning frequencies from 2402 MHz to 2480 MHz. Reception sensitivity is approximately -85 dBm, with a maximum tolerable reception intensity of -20 dBm. Bluetooth transmission power is limited to +10 dBm.&lt;br /&gt;
&lt;br /&gt;
===Disabling Bluetooth===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#disable bluetooth once&lt;br /&gt;
sudo rfkill block bluetooth &amp;amp;&amp;amp; &lt;br /&gt;
&lt;br /&gt;
#confirm&lt;br /&gt;
rfkill&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#disable bluetooth on boot**&lt;br /&gt;
sudo systemctl enable rfkill-block@bluetooth&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;**This does not do what one might want on certain distros, Manjaro XFCE for example. Try the below.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
right click on the bluetooth panel icon &amp;gt; select 'plugins' &amp;gt; PowerManager &amp;gt; configuration &amp;gt; deselect the auto power on option&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== LCD Panel ==&lt;br /&gt;
* Model: BOE NV140FHM-N49&lt;br /&gt;
* 14.0&amp;quot; (35.56cm) diagonal size&lt;br /&gt;
* 1920x1080 resolution&lt;br /&gt;
* 60hz refresh rate&lt;br /&gt;
* IPS&lt;br /&gt;
* 1000:1 contrast&lt;br /&gt;
* 250nt brightness&lt;br /&gt;
* 63% sRGB coverage&lt;br /&gt;
* 6 bit colour&lt;br /&gt;
* 30 pin eDP connection&lt;br /&gt;
&lt;br /&gt;
Some people have tested hardware video decode using the following;&lt;br /&gt;
&amp;lt;pre&amp;gt;ffmpeg -benchmark -c:v h264_rkmpp -i file.mp4 -f null -&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== External ports list ==&lt;br /&gt;
Here are a list of the external ports. See [[Pinebook_Pro#Expansion_Ports|Technical Reference - Expansion Ports]] for port specifications.&lt;br /&gt;
* Left side&lt;br /&gt;
** Barrel jack for power, (with LED)&lt;br /&gt;
** USB 3, Type A&lt;br /&gt;
** USB 3, Type C&lt;br /&gt;
* Right side&lt;br /&gt;
** USB 2, Type A&lt;br /&gt;
** Standard headset jack&lt;br /&gt;
** MicroSD card slot&lt;br /&gt;
&lt;br /&gt;
== Using the UART ==&lt;br /&gt;
[[File:PBPUART.jpeg|400px|thumb|right|Headphone jack UART wiring reference.&lt;br /&gt;
&amp;lt;br&amp;gt; Swapping the tx and rx around from this also works and is more traditional.&lt;br /&gt;
&amp;lt;br&amp;gt; See [https://files.pine64.org/doc/pinebook/guide/Pinebook_Earphone_Serial_Console_Developer_Guide.pdf this] official Pine64 .pdf.]]&lt;br /&gt;
&lt;br /&gt;
UART output is enabled by flipping the UART switch to the ON position (item 9). To do so you need to remove the Pinebook Pro's bottom cover - please follow [https://wiki.pine64.org/index.php/Pinebook_Pro_Main_Page#Accessing_the_Internals_-_Disassembly_and_Reassembly proper disassembly and reassembly protocol]. The OFF position is towards the touchpad, the ON position is towards the display hinges.&lt;br /&gt;
&lt;br /&gt;
With the UART switch in the ON position, console is relayed via the audiojack and the laptop's sound is turned OFF. Please ensure that you are using a 3.3v interface (such as the CH340, FTDI-232R, or PL2303, which are sold in both 3.3v and 5v variants) to avoid damage to the CPU. &lt;br /&gt;
&lt;br /&gt;
Insert the USB plug of the cable into an open USB port on the machine which will monitor. Run the following in a terminal:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ lsusb&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
you should find a line similar to this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Bus 001 Device 058: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may have to clean the USB contacts of the Serial cable to get a good connection if you do not find that line.&lt;br /&gt;
&lt;br /&gt;
The audio jack of the Serial cable should be fully inserted into the Pinebook Pro audio port.&lt;br /&gt;
&lt;br /&gt;
Serial output should now be accessible using screen, picocom or minicom (and others).&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
screen /dev/ttyUSB0 1500000&lt;br /&gt;
&lt;br /&gt;
picocom /dev/ttyUSB0 -b 1500000&lt;br /&gt;
&lt;br /&gt;
minicom -D /dev/ttyUSB0 -b 1500000&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Old versions of U-Boot do not use the UART for console output. &amp;lt;strike&amp;gt;The console function is activated by the Linux kernel. Thus, if you use a non-Pinebook Pro Linux distro and want the UART as a console, you have to manually enable it.&amp;lt;/strike&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using the optional NVMe adapter ==&lt;br /&gt;
The optional NVMe adapter allows the use of M.2 cards that support the NVMe standard, (but not SATA standard). The optional NVMe M.2 adapter supports '''M''' &amp;amp; '''M'''+'''B''' keyed devices, in both 2242 &amp;amp; 2280 physical sizes, the most common ones available. In addition, 2230 &amp;amp; 2260 are also supported, though NVMe devices that use those sizes are rare.&lt;br /&gt;
&lt;br /&gt;
Once you have fitted and tested your NVMe drive, please add a note to this page [[Pinebook_Pro_Hardware_Accessory_Compatibility]] to help build a list of tried and tested devices.&lt;br /&gt;
&lt;br /&gt;
=== Installing the adapter ===&lt;br /&gt;
The V2.1-2019-0809 SSD adapter that shipped with the initial Pinebook Pro batches had significant issues. A repair kit will be shipped to address those issues.&lt;br /&gt;
(If necessary, it can be modified to work. There is [https://forum.pine64.org/showthread.php?tid=8322&amp;amp;pid=52700#pid52700 an unofficial tutorial on the forums] describing these modifications.)&lt;br /&gt;
&lt;br /&gt;
The updated SSD adapter, labeled V2-2019-1107, takes into account the prior problems with trackpad interference. New orders as of Feb. 22nd, 2020 will be the updated adapter.&lt;br /&gt;
&lt;br /&gt;
This is the link to the PBPro accessories in the store: [[https://pine64.com/?v=0446c16e2e66]]&lt;br /&gt;
&lt;br /&gt;
Actual installation instructions are a work in progress. Unofficial instructions for installing V2-2019-1107 can be found [https://eli.gladman.cc/blog/2020/06/23/pine-book-pro-nvme.html here].&lt;br /&gt;
&lt;br /&gt;
=== Post NVMe install power limiting ===&lt;br /&gt;
Some NVMe SSDs allow reducing the maximum amount of power. Doing so may reduce the speed, but it may be needed in the Pinebook Pro to both improve reliability at lower battery levels. And to reduce power used, to maintain battery life.&lt;br /&gt;
Here are the commands to obtain and change the power settings. The package 'nvme-cli' is required to run these commands. The example shows how to find the available power states, and then sets it to the lowest, non-standby setting, (which is 3.8 watts for the device shown);&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo nvme id-ctrl /dev/nvme0&lt;br /&gt;
NVME Identify Controller:&lt;br /&gt;
...&lt;br /&gt;
ps    0 : mp:9.00W operational enlat:0 exlat:0 rrt:0 rrl:0&lt;br /&gt;
         rwt:0 rwl:0 idle_power:- active_power:-&lt;br /&gt;
ps    1 : mp:4.60W operational enlat:0 exlat:0 rrt:1 rrl:1&lt;br /&gt;
         rwt:1 rwl:1 idle_power:- active_power:-&lt;br /&gt;
ps    2 : mp:3.80W operational enlat:0 exlat:0 rrt:2 rrl:2&lt;br /&gt;
         rwt:2 rwl:2 idle_power:- active_power:-&lt;br /&gt;
ps    3 : mp:0.0450W non-operational enlat:2000 exlat:2000 rrt:3 rrl:3&lt;br /&gt;
         rwt:3 rwl:3 idle_power:- active_power:-&lt;br /&gt;
ps    4 : mp:0.0040W non-operational enlat:6000 exlat:8000 rrt:4 rrl:4&lt;br /&gt;
         rwt:4 rwl:4 idle_power:- active_power:-&lt;br /&gt;
&lt;br /&gt;
$ sudo nvme get-feature /dev/nvme0 -f 2&lt;br /&gt;
get-feature:0x2 (Power Management), Current value:00000000&lt;br /&gt;
$ sudo nvme set-feature /dev/nvme0 -f 2 -v 2 -s&lt;br /&gt;
set-feature:02 (Power Management), value:0x000002&amp;lt;/pre&amp;gt;&lt;br /&gt;
Some NVMe SSDs don't appear to allow saving the setting with &amp;quot;-s&amp;quot; option. In those cases, leave off the &amp;quot;-s&amp;quot; and use a startup script to set the non-default power state at boot.&amp;lt;br&amp;gt;&lt;br /&gt;
If you want to test performance without saving the new power setting semi-permanantly, then leave off the &amp;quot;-s&amp;quot; option.&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
There is another power saving feature for NVMes, APST, (Autonomous Power State Transitions). This performs the power saving &amp;amp; transitions based on usage. To check if you have a NVMe SSD with this feature;&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo nvme get-feature -f 0x0c -H /dev/nvme0&amp;lt;/pre&amp;gt;&lt;br /&gt;
Information for this feature, (on a Pinebook Pro), is a work in progress.&lt;br /&gt;
&lt;br /&gt;
=== Using as data drive ===&lt;br /&gt;
As long as the kernel in use has both the PCIe and NVMe drivers, you should be able to use a NVMe drive as a data drive. It can automatically mount when booting from either the eMMC or an SD card. This applies to Linux, FreeBSD, and Chromium, using the normal partitioning and file system creation tools. Android requires testing.&lt;br /&gt;
&lt;br /&gt;
=== Using as OS root drive ===&lt;br /&gt;
The SoC does not include the NVMe boot code, so the NVMe is not in the SoC's boot order. However, using the [https://github.com/mrfixit2001/updates_repo/blob/v1.1/pinebook/filesystem/mrfixit_update.sh U-Boot update script] from the mrfixit2001 Debian or [https://pastebin.com/raw/EeK074XB Arglebargle's modified script], and [https://github.com/pcm720/rockchip-u-boot/releases the modified u-boot images] provided by forum user pcm720, you can now add support to boot from an NVMe drive. Binary images are useable with SD, eMMC, and [[Pinebook_Pro_SPI|SPI flash]]. For OS images using the mainline kernel, there are a few variants of U-Boot available that also support NVMe as the OS drive. Though these may require writing the U-Boot to the SPI flash for proper use of the NVMe as the OS drive.&lt;br /&gt;
&lt;br /&gt;
The current boot order, per last testing, for this modified U-Boot is:&lt;br /&gt;
*MicroSD&lt;br /&gt;
*eMMC&lt;br /&gt;
*NVMe&lt;br /&gt;
&lt;br /&gt;
For more information, please refer to [https://forum.pine64.org/showthread.php?tid=8439&amp;amp;pid=53764#pid53764 the forum post.]&lt;br /&gt;
&lt;br /&gt;
It is also possible to initially boot off an eMMC or SD card, then transfer to a root file system on the NVMe. Currently, it is necessary to have the U-Boot code on an eMMC or SD card.  (A forum member [https://forum.pine64.org/showthread.php?tid=8439 posted here] about using a modified version of U-Boot with NVMe drivers, that uses &amp;lt;code&amp;gt;/boot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; off the NVMe drive. So this may change in the future.)&lt;br /&gt;
&lt;br /&gt;
Please see [[Pinebook_Pro#Bootable Storage|Bootable Storage]].&lt;br /&gt;
&lt;br /&gt;
== Caring for the PineBook Pro ==&lt;br /&gt;
=== Bypass Cables ===&lt;br /&gt;
The mainboard features two (disconnected by default) bypass cables that are only to be used with the battery disconnected. The female (10) male (6) ends of the bypass cables can be connected to provide power to the mainboard if you need to run the laptop without a battery. Please refer to this [https://files.pine64.org/doc/PinebookPro/PinebookPro_Engineering_Notice.pdf engineering notice].  &lt;br /&gt;
&lt;br /&gt;
'''Note that despite the bypass cable being a two conductor cable, it is only used as one. Both wires being soldered together on either side is normal!'''&lt;br /&gt;
&lt;br /&gt;
WARNING: Do not connect the bypass cables with the battery connected.  Using the bypass cables with the battery connected can permanently damage the computer.&lt;br /&gt;
&lt;br /&gt;
=== [[Pinebook_Service_Step_by_Step_Guides|Pinebook Service Step-by-Step Guides]] ===&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;Placeholder for Pinebook Pro specific guides&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Under [[Pinebook_Service_Step_by_Step_Guides|'Service Guides for Pinebook']] you can find instructions guides concerning disassembly of:&lt;br /&gt;
&lt;br /&gt;
'''Note: The installation process on Pinebook Pro similar to 14&amp;quot; Pinebook'''&lt;br /&gt;
&lt;br /&gt;
'''Note: The installation process is the reverse order of removal guide'''&lt;br /&gt;
&lt;br /&gt;
* 14″ Pinebook Lithium Battery Pack Removal Guide&lt;br /&gt;
* 14″ Pinebook LCD Panel Screen Removal Guide&lt;br /&gt;
* 14″ Pinebook eMMC Module Removal Guide&lt;br /&gt;
&lt;br /&gt;
== Using the SPI flash device ==&lt;br /&gt;
&lt;br /&gt;
See [[Pinebook_Pro_SPI]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro comes with a 128Mbit, (16MByte), flash device suitable for initial boot target, to store the bootloader. The SoC used on the Pinebook Pro boots from this SPI flash device first, before eMMC or SD card. At present, April 19, 2020, the Pinebook Pros ship without anything programmed in the SPI flash device. So the SoC moves on to the next potential boot device, the eMMC. ARM/ARM64 computers do not have a standardized BIOS, yet.&lt;br /&gt;
&lt;br /&gt;
Here is some information on using the SPI flash device:&lt;br /&gt;
&lt;br /&gt;
* You need the kernel built with SPI flash device support, which will supply a device similar to:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;/dev/mtd0&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* The Linux package below, will need to be available:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;mtd-utils&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* You can then use this program from the package to write the SPI device:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;flashcp &amp;amp;lt;filename&amp;amp;gt; /dev/mtd0&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Even if you need to recover from a defective bootloader written to the SPI flash, you can simply short pin 6 of the SPI flash to GND and boot. This will render the SoC bootrom unable to read from the SPI flash and have it fall back to reading the bootloader from other boot media like the eMMC or Micro SD card.&lt;br /&gt;
&lt;br /&gt;
The procedures described above are a lot less risky than attaching an external SPI flasher and do not require any additional hardware.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
At present, April 19th, 2020, there is no good bootloader image to flash into the SPI flash device. This is expected to change, as there are people working on issue.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
What cool software works out of the box? [[Pinebook Pro OTB Experience]]&lt;br /&gt;
&lt;br /&gt;
= Software tuning guide =&lt;br /&gt;
Details on how to get the most out of a Pinebook Pro &amp;amp; its RK3399 SoC.&lt;br /&gt;
&lt;br /&gt;
== Customizing the Pinebook Pro's default Manjaro KDE system ==&lt;br /&gt;
=== Watching DRM content (Netflix, etc.) ===&lt;br /&gt;
Most paid online streaming services use Widevine DRM to make their content more difficult to pirate. Widevine is not directly supported on Manjaro KDE, however it is still possible to watch DRM content via the &amp;quot;chromium-docker&amp;quot; package which downloads a 32-bit ARM container and installs Chromium with Widevine inside of that. While not space-efficient, or efficient in general, it's the recommended solution for watching this content on your Pinebook Pro. You can install this package with:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo pacman -Sy chromium-docker&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== Checking GPU capabilities ===&lt;br /&gt;
To see what versions of OpenGL and OpenGL ES are supported by the Pinebook Pro, what driver is in use, and what version of the driver is loaded, install the &amp;quot;mesa-demos&amp;quot; package with:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo pacman -Sy mesa-demos&amp;lt;/pre&amp;gt;&lt;br /&gt;
And then run:&lt;br /&gt;
&amp;lt;pre&amp;gt;glxinfo | grep OpenGL&amp;lt;/pre&amp;gt;&lt;br /&gt;
This will give detailed information about your graphics card and driver, useful for debugging.&lt;br /&gt;
&lt;br /&gt;
=== Better GPU compatibility and performance ===&lt;br /&gt;
For better graphics performance, you may install the &amp;quot;mesa-git&amp;quot; package, built and supplied in the Manjaro ARM repos. This lets you bring in the latest features, optimizations, and bugfixes for the graphics driver used by the Pinebook Pro. Installation is as simple as:&lt;br /&gt;
&amp;lt;pre&amp;gt;pacman -Sy mesa-git&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then you may reboot to load the newer driver.&lt;br /&gt;
&lt;br /&gt;
With Mesa 20.2 there is no longer much reason to use this over the standard mesa package, and applications may occasionally break with mesa-git.&lt;br /&gt;
&lt;br /&gt;
[https://docs.mesa3d.org/bugs.html Reporting bugs] to the Mesa project will help make sure any problems are quickly fixed.&lt;br /&gt;
&lt;br /&gt;
=== OpenGL 3.3 support ===&lt;br /&gt;
By default, with the current state of the Panfrost GPU driver, the Pinebook Pro supports OpenGL 2.1 and OpenGL ES 3.0. If you want to use OpenGL 3.3, you need to set the system-wide environment variable, open the '''/etc/environment''' file with:&lt;br /&gt;
&amp;lt;pre&amp;gt;kate /etc/environment&amp;lt;/pre&amp;gt;&lt;br /&gt;
And then at the bottom of the file, on a new line, add:&lt;br /&gt;
&amp;lt;pre&amp;gt;PAN_MESA_DEBUG=&amp;quot;gl3&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then save the file, entering your password when prompted, and reboot the system. When you check your GPU capabilities, it should report OpenGL 3.3 and applications that rely on it should function properly. Note that GL 3.3 support is incomplete and some rendering features do not work yet, notably geometry shaders.&lt;br /&gt;
== Customizing the Pinebook Pro's previously-default Debian system ==&lt;br /&gt;
Here are some hints on what you can do to customize the Pinebook Pro's previous factory image (aka [https://github.com/mrfixit2001/debian_desktop mrfixit2001 debian build])&lt;br /&gt;
&lt;br /&gt;
=== Initial user changes, password, name, etc ===&lt;br /&gt;
When you first get your Pinebook Pro, you should consider setting strong passwords and making the default account your own.&lt;br /&gt;
&lt;br /&gt;
* Reboot (this is just to ensure all background processes belong to the user are not running... there are other ways to achieve this but this way is easy)&lt;br /&gt;
* Once the machine reboots press Alt-Ctrl-F1 to bring up a text terminal&lt;br /&gt;
* Login as root (login: root, password: root)&lt;br /&gt;
* Set a strong password for the root user using the following command and it's prompts:&lt;br /&gt;
&amp;lt;pre&amp;gt;# passwd (and follow prompts)&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Rename the rock user to your prefered username (replace myself with whatever you like):&lt;br /&gt;
&amp;lt;pre&amp;gt;# usermod -l myself -d /home/myself -m rock&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Rename the rock group to match your preferred username:&lt;br /&gt;
&amp;lt;pre&amp;gt;# groupmod -n myself rock&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Put your name in the account, (replace &amp;quot;John A Doe&amp;quot; with your name):&lt;br /&gt;
&amp;lt;pre&amp;gt;# chfn -f &amp;quot;John A Doe&amp;quot; myself&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Set a strong password for the normal user:&lt;br /&gt;
&amp;lt;pre&amp;gt;# passwd myself&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Log out of the text terminal:&lt;br /&gt;
&amp;lt;pre&amp;gt;# logout&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Press Alt-Ctrl-F7 to go back to the login screen and then login as the normal user&lt;br /&gt;
* Open text terminal to fix login error: &amp;quot;Configured directory for incoming files does not exist&amp;quot;;&lt;br /&gt;
&amp;lt;pre&amp;gt;$ blueman-services&amp;lt;/pre&amp;gt;&lt;br /&gt;
Select &amp;quot;Transfer&amp;quot; tab and set &amp;quot;Incoming Folder&amp;quot; to myself&lt;br /&gt;
OR&lt;br /&gt;
If adduser is in distro, this is MUCH easier&lt;br /&gt;
sudo adduser $USER ,, fill out requested data&lt;br /&gt;
Then,, sudo adduser $USER $GROUP,,, 1 group at a time&lt;br /&gt;
To see which groups to add,,, id $USER,  id rock&lt;br /&gt;
&lt;br /&gt;
=== Changing the default hostname ===&lt;br /&gt;
Debian 9 has a command to allow you to change the hostname. You can see the current settings using;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;gt; sudo hostnamectl&lt;br /&gt;
   Static hostname: Debian-Desktop&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
        Machine ID: dccbddccbdccbdccbdccbdccbdccbccb&lt;br /&gt;
           Boot ID: ea99ea99ea99ea99ea99ea99ea99ea99&lt;br /&gt;
  Operating System: Debian GNU/Linux 9 (stretch)&lt;br /&gt;
            Kernel: Linux 4.4.210&lt;br /&gt;
      Architecture: arm64&amp;lt;/pre&amp;gt;&lt;br /&gt;
To change, use this, (with &amp;quot;My_Hostname&amp;quot; used as the example);&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;gt; sudo hostnamectl set-hostname My_Hostname&amp;lt;/pre&amp;gt;&lt;br /&gt;
Whence done, you can re-verify using the first example.&lt;br /&gt;
&lt;br /&gt;
Then you should backup and edit your &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; entry's name;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;gt; sudo cp -p /etc/hosts /etc/hosts.`date +%Y%m%d`&lt;br /&gt;
&amp;gt; sudo vi /etc/hosts&lt;br /&gt;
127.0.0.1	localhost&lt;br /&gt;
127.0.0.1	My_Hostname&lt;br /&gt;
::1		localhost ip6-localhost ip6-loopback&lt;br /&gt;
fe00::0		ip6-localnet&lt;br /&gt;
ff00::0		ip6-mcastprefix&lt;br /&gt;
ff02::1		ip6-allnodes&lt;br /&gt;
ff02::2		ip6-allrouters&lt;br /&gt;
127.0.1.1       linaro-alip&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Disable Chromium browser's prompt for passphrase &amp;amp; password storage ===&lt;br /&gt;
&lt;br /&gt;
Perform the following steps:&lt;br /&gt;
&lt;br /&gt;
* On the tool bar, hover over the Chromium icon&lt;br /&gt;
* Using the right mouse button, select '''Properties'''&lt;br /&gt;
* In the '''Command:''' line section, add &amp;lt;code&amp;gt;--password-store=basic&amp;lt;/code&amp;gt; before the &amp;lt;code&amp;gt;%U&amp;lt;/code&amp;gt;&lt;br /&gt;
* Use the '''x Close''' button to save the change&lt;br /&gt;
This will of course, use basic password storage, meaning any saved passwords are not encrypted. Perfectly fine if you never use password storage.&lt;br /&gt;
&lt;br /&gt;
=== Changing the boot splash picture ===&lt;br /&gt;
&lt;br /&gt;
The default boot splash picture can be replaced using the following instructions:&lt;br /&gt;
&lt;br /&gt;
* Install '''ImageMagick''' which will do the conversion&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo apt-get install imagemagick&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Create a 1920 x 1080 picture. For the best results, use a PNG image (It supports lossless compression).&lt;br /&gt;
* From the directory in which your new image is stored run the following commands&lt;br /&gt;
* Convert your image to the bootsplash raw format using imagemagick convert.&lt;br /&gt;
&amp;lt;pre&amp;gt;$ convert yoursplashimage.png -separate +channel -swap 0,2 -combine -colorspace sRGB RGBO:splash.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Create a backup copy of your current splash screen&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo cp /usr/share/backgrounds/splash.fb /usr/share/backgrounds/splash_original.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Copy your new splash screen into place&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo cp splash.fb /usr/share/backgrounds/splash.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Set the correct permissions on the splash.fb file&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo chmod 644 /usr/share/backgrounds/splash.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* If you do not want to see kernel console text messages, make sure you don't have '''Plymouth''' installed&lt;br /&gt;
&lt;br /&gt;
=== Watching Amazon Prime videos with Chromium ===&lt;br /&gt;
When you create a new user, it will be necessary to launch the Chromium browswer with a specific user agent like below;&lt;br /&gt;
&amp;lt;pre&amp;gt;chromium-browser --user-agent=&amp;quot;Mozilla/5.0 (X11; CrOS armv7l 6946.63.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
There may be more tweaks needed.&lt;br /&gt;
&lt;br /&gt;
=== Enabling text boot time messages ===&lt;br /&gt;
&lt;br /&gt;
By default, most Linux distros have a boot screen with a picture. To see all the boot time messages, use one of the following;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;Default Debian&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
* Backup and edit the U-Boot configuration file:&lt;br /&gt;
&amp;lt;pre&amp;gt;cp -p /etc/default/u-boot /etc/default/u-boot.`date +%Y%m%d`&lt;br /&gt;
chmod a-w /etc/default/u-boot.`date +%Y%m%d`&lt;br /&gt;
vi /etc/default/u-boot&amp;lt;/pre&amp;gt;&lt;br /&gt;
Remove the '''quiet''' and '''splash''' parameters. Leave everything else alone.&lt;br /&gt;
* Update the U-Boot configuration:&lt;br /&gt;
&amp;lt;pre&amp;gt;u-boot-update&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Test and verify you get what you think you should be seeing.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;Manjaro&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
* Backup and edit the U-Boot configuration file:&lt;br /&gt;
&amp;lt;pre&amp;gt;cp -p /boot/extlinux/extlinux.conf /boot/extlinux/extlinux.conf.`date +%Y%m%d`&lt;br /&gt;
chmod a-w /boot/extlinux/extlinux.conf.`date +%Y%m%d`&lt;br /&gt;
vi /boot/extlinux/extlinux.conf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Change '''console=ttyS2,1500000''' to '''console=tty1'''&amp;lt;br&amp;gt; &lt;br /&gt;
Remove the '''bootsplash.bootfile''' option and it's parameter.&amp;lt;br&amp;gt;&lt;br /&gt;
You can add verbose logging by appending '''ignore_loglevel''' to the line where boot splash was.&amp;lt;br&amp;gt;&lt;br /&gt;
Leave everything else alone.&amp;lt;br&amp;gt;&lt;br /&gt;
* Test and verify you get what you think you should be seeing.&lt;br /&gt;
&lt;br /&gt;
== Improving readability ==&lt;br /&gt;
&lt;br /&gt;
Some people find that a 14&amp;quot; LCD screen with 1080p, (1920 x 1080), has text and icons a bit too small. There are things you can do to make the screen easier to use and read.&amp;lt;br&amp;gt;&lt;br /&gt;
* Increase the font size&lt;br /&gt;
* Use a font with more pronounced features&lt;br /&gt;
* Increase the various window manager sizes (e.g. increase the height of the tool bar)&lt;br /&gt;
* Change the color scheme to be easier on the eyes. Higher contrast can help usability.&lt;br /&gt;
* Change the window manager's decorations (e.g. use larger icons)&lt;br /&gt;
* Use a workspace manager, with one application per workspace&lt;br /&gt;
* When at home or office, use an external monitor&lt;br /&gt;
* Change the X-Windows DPI&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
However, do not change the resolution of the LCD screen, otherwise you may end up with a blank / black screen. If that happens, see this troubleshooting section for the fix:&amp;lt;br&amp;gt;&lt;br /&gt;
[[Pinebook_Pro#After_changing_builtin_LCD_resolution.2C_blank_screen|Blank screen after changing builtin LCD resolution]]&lt;br /&gt;
&lt;br /&gt;
== Chromium tweaks ==&lt;br /&gt;
&lt;br /&gt;
=== Flags ===&lt;br /&gt;
&lt;br /&gt;
From the [https://github.com/mrfixit2001/updates_repo/blob/v1.8/pinebook/filesystem/default official Debian image]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--disable-low-res-tiling \&lt;br /&gt;
--num-raster-threads=6 \&lt;br /&gt;
--profiler-timing=0 \&lt;br /&gt;
--disable-composited-antialiasing \&lt;br /&gt;
--test-type \&lt;br /&gt;
--show-component-extension-options \&lt;br /&gt;
--ignore-gpu-blacklist \&lt;br /&gt;
--use-gl=egl \&lt;br /&gt;
--ppapi-flash-path=/usr/lib/chromium-browser/pepper/libpepflashplayer.so \&lt;br /&gt;
--ppapi-flash-version=32.0.0.255 \&lt;br /&gt;
--enable-pinch \&lt;br /&gt;
--flag-switches-begin \&lt;br /&gt;
--enable-gpu-rasterization \&lt;br /&gt;
--enable-oop-rasterization \&lt;br /&gt;
--flag-switches-end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that in some cases, this may also decrease performance substantially, as observed when using these flags on the Manjaro KDE desktop. Feel free to experiment to find what is smoothest for you personally.&lt;br /&gt;
&lt;br /&gt;
== gVim has performance issue ==&lt;br /&gt;
It appears that using GTK3 can cause very slow scrolling, while Vim in a terminal window works fine.&amp;lt;br/&amp;gt;&lt;br /&gt;
Simply revert back to using GTK2, (how to do so is somewhat Linux distro-specific).&lt;br /&gt;
&lt;br /&gt;
Another solution may be to run gVim with &lt;br /&gt;
&lt;br /&gt;
 GDK_RENDERING=image&lt;br /&gt;
&lt;br /&gt;
environment variable set. It seems that this improves the performance by reverting back to software-only rendering.&lt;br /&gt;
&lt;br /&gt;
== Kernel options ==&lt;br /&gt;
Here are some Pinebook Pro &amp;amp; its RK3399 SoC Linux specific options. If kernel version, (or version range specific), it should list that information in the description.&lt;br /&gt;
&lt;br /&gt;
To see if a specific feature is enabled in the current kernel, you can use something like this;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ zgrep -i rockchip_pcie /proc/config.gz&lt;br /&gt;
# CONFIG_ROCKCHIP_PCIE_DMA_OBJ is not set&lt;br /&gt;
CONFIG_PHY_ROCKCHIP_PCIE=m&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If it's listed as &amp;lt;code&amp;gt;=m&amp;lt;/code&amp;gt;, then it's a module. You can see if the module is loaded with;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lsmod | grep -i rockchip_pcie&lt;br /&gt;
phy_rockchip_pcie      16384  0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note modules are not loaded until needed. Thus, we sometimes check the kernel configuration instead to see if a feature is configured first, then see if it's a module.&lt;br /&gt;
&lt;br /&gt;
=== Hardware video decoding ===&lt;br /&gt;
Here is a method to check for hardware video decoding by the VPU. There are special Linux kernel modules that perform this function.&amp;lt;br&amp;gt;&lt;br /&gt;
Older systems, such as the previously-default Debian desktop, use the Rockchip-supplied kernel module &amp;lt;code&amp;gt;rk-vcodec&amp;lt;/code&amp;gt;. To check, something like this can be used:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lsmod | grep rk-vcodec&lt;br /&gt;
    or&lt;br /&gt;
$ zgrep RK_VCODEC /proc/config.gz&lt;br /&gt;
CONFIG_RK_VCODEC=y&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note that in the above example, the Rockchip video CODEC is not built as a module, but included into the kernel. Thus, it does not show up in the list modules check.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Newer systems may use a different option as in the configuration below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ zgrep HANTRO /proc/config.gz&lt;br /&gt;
CONFIG_VIDEO_HANTRO=m&lt;br /&gt;
CONFIG_VIDEO_HANTRO_ROCKCHIP=y&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;amp;nbsp;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting guide =&lt;br /&gt;
&lt;br /&gt;
The important thing is not to panic and if something goes wrong, to stop and consider carefully how to undo something, or, to redo it. This particularly applies when flashing a new operating system or new firmware to the touchpad.&lt;br /&gt;
&lt;br /&gt;
[[Pinebook_Pro_Troubleshooting_Guide]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Hardware Compatibility =&lt;br /&gt;
Please contribute to the [[Pinebook Pro Hardware Accessory Compatibility|hardware compatibility page]], which lists the status of hardware tested with the Pinebook Pro.  Available hardware categories include the following:&lt;br /&gt;
&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#NVMe SSD drives|NVMe SSD drives]]&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#USB hardware|USB hardware]]&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#USB C alternate mode DP|USB-C alternate mode DP]]&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#Other hardware|Other hardware]]&lt;br /&gt;
&lt;br /&gt;
Please note that many users have reported issues with NVMe SSD drives, including random Linux lockups and crashes.  Some of these issues are related to the [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=712fa1777207 RK3399's errata] that disables Gen2 (5&amp;amp;nbsp;GT/s) speed for the PCI Express link used by the NVMe SSD, reducing it down to Gen1 speed (2.5&amp;amp;nbsp;GT/s).  However, as of December 17, 2020, Linux distributions that use mainline Linux kernel still configure the PCI Express link to run at Gen2 speed, which requires [https://forum.pine64.org/showthread.php?tid=11683 manual reconfiguration] to Gen1 speed in case system instability is experienced.  See also this [https://patchwork.kernel.org/project/linux-rockchip/patch/20200423150510.6216-1-pgwipeout@gmail.com/ related discussion].&lt;br /&gt;
&lt;br /&gt;
= Technical Reference =&lt;br /&gt;
== Disassembly and Reassembly  == &lt;br /&gt;
[[File:Standoffs.png|400px|thumb|right|Pinebook Screw stand-offs correct placement and location]]&lt;br /&gt;
&lt;br /&gt;
There are a few '''mandatory''' precautions to be taken:&lt;br /&gt;
&lt;br /&gt;
* Do not open the laptop by lifting the lid while the Pinebook Pro bottom cover is removed - this can cause structural damage to the hinges and/or other plastic components of the chassis such as the IO port cut-outs.&lt;br /&gt;
* When removing the back cover plate, use care if sliding fingertips between back cover plate and palm rest assembly. The back cover plate edges are sharp.&lt;br /&gt;
* When removing the back cover plate, use care to avoid damaging the speakers. They are stuck to the back cover with double-sided tape, and the thin wires are very delicate.&lt;br /&gt;
&lt;br /&gt;
When disassembling the laptop make sure that it is powered off and folded closed. To remove the bottom cover of the Pinebook Pro, first remove the ten (10) Phillips head screws that hold the bottom section of the laptop in place. Remove the cover from the back where the hinges are situated by lifting it up and away from the rest of the chassis.&lt;br /&gt;
&lt;br /&gt;
During reassembly, make sure that the back-screw standoffs are in place and seated correctly. To reassemble the Pinebook Pro, slide the bottom section into place so it meets the front lip of the keyboard section. Secure the front section (where the trackpad is located) in place using the short screws in the front left and right corners. Then proceed to pop in the bottom panel into place. Secure the bottom section (where hinges are located) by screwing in the left and right corners. Then screw in the remaining screws and run your finger though the rim on the chassis to make sure its fitted correctly. Note that the front uses the remaining 2 short screws.&lt;br /&gt;
&lt;br /&gt;
The screws are small and should only be finger tight. Too much force will strip the threads. If after installing screws the back cover plate has not seated properly on one side, open the display and hold the base on either side of the keyboard and gently flex the base with both hands in opposing directions. Once the side pops further in, then recheck the screws on that side. If it does not pop back in, just let it be.&lt;br /&gt;
&lt;br /&gt;
A basic 3D model to print replacement standoffs for the back cover screws is [https://www.thingiverse.com/thing:4226648 available on Thingiverse], until the official drawings or 3D models are made available.&lt;br /&gt;
&lt;br /&gt;
== Internal Layout ==&lt;br /&gt;
&lt;br /&gt;
=== Main chips ===&lt;br /&gt;
* RK3399 system-on-chip (1)&lt;br /&gt;
* LPDDR4 SDRAM (21)&lt;br /&gt;
* SPI NOR flash memory (29)&lt;br /&gt;
* eMMC flash memory (26)&lt;br /&gt;
* WiFi/BT module (27)&lt;br /&gt;
&lt;br /&gt;
=== Mainboard Switches and Buttons ===&lt;br /&gt;
There are two switches on the main board: disabling the eMMC (24), and enabling UART (9) via headphone jack. &lt;br /&gt;
&lt;br /&gt;
The Reset and Recovery buttons (28): the reset button performs an immediate reset of the laptop. The Recovery button is used to place the device in maskrom mode; this mode allows flashing eMMC using Rockchip tools (e.g. rkflashtools). &lt;br /&gt;
&lt;br /&gt;
[[File:PBPL_S.jpg]]&lt;br /&gt;
&lt;br /&gt;
=== Key Internal Parts ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Numbered parts classification and description&lt;br /&gt;
! Number&lt;br /&gt;
! Type&lt;br /&gt;
! Descriptor&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 1&lt;br /&gt;
| Component || RK3399 System-On-Chip&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 2&lt;br /&gt;
| Socket || PCIe 4X socket for optional NVMe adapter&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 3&lt;br /&gt;
| Socket || Speakers socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 4&lt;br /&gt;
| Socket || Trackpad socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 5&lt;br /&gt;
| Component || Left speaker &lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 6&lt;br /&gt;
| Connector || Power bridge connector &lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 7&lt;br /&gt;
| Socket || Keyboard Socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 8&lt;br /&gt;
| Component || Optional NVMe SSD adapter&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 9&lt;br /&gt;
| Switch || UART/Audio switch - outputs UART via headphone jack&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 10&lt;br /&gt;
| Socket || Power bridge socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 11&lt;br /&gt;
| Socket || Battery socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 12&lt;br /&gt;
| Component || Trackpad&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 13&lt;br /&gt;
| Component || Battery&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 14&lt;br /&gt;
| Component || Right speaker&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 15&lt;br /&gt;
| Socket || MicroSD card slot&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 16&lt;br /&gt;
| Socket || Headphone / UART jack&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 17&lt;br /&gt;
| Socket || USB 2.0 Type A&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 18&lt;br /&gt;
| Socket || Daughterboard-to-mainboard ribbon cable socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 19&lt;br /&gt;
| Cable || Daughterboard-to-mainboard ribbon cable&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 20&lt;br /&gt;
| Component || microphone&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 21&lt;br /&gt;
| Component || LPDDR4 RAM&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 22&lt;br /&gt;
| Socket || Mainboard-to-daughterboard ribbon cable socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 23&lt;br /&gt;
| Socket || Microphone socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 24&lt;br /&gt;
| Switch || Switch to hardware disable eMMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 25&lt;br /&gt;
| Antenna || BT/WiFI antenna&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 26&lt;br /&gt;
| Component || eMMC flash memory module &lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 27&lt;br /&gt;
| Component ||BT/WiFi module chip&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 28&lt;br /&gt;
| Buttons || Reset and recovery buttons&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 29&lt;br /&gt;
| Component || SPI flash storage&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 30&lt;br /&gt;
| Socket || eDP LCD socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 31&lt;br /&gt;
| Socket || Power in barrel socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 32&lt;br /&gt;
| Socket || USB 3.0 Type A&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 33&lt;br /&gt;
| Socket || USB 3.0 Type C &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Smallboard detailed picture ===&lt;br /&gt;
&lt;br /&gt;
[[File:Pinebook_pro_smallboard.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Bootable Storage ==&lt;br /&gt;
&lt;br /&gt;
=== Boot sequence details ===&lt;br /&gt;
The RK3399's mask 32KB ROM boot code looks for the next stage of code at byte off-set 32768, (sector 64 if using 512 byte sectors). This is where U-Boot code would reside on any media that is bootable.&amp;lt;br&amp;gt;&lt;br /&gt;
[[RK3399_boot_sequence|RK3399 boot sequence]]&lt;br /&gt;
&lt;br /&gt;
=== Boot devices ===&lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro is capable of booting from eMMC, USB 2.0, USB 3.0, or an SD card. It cannot boot from USB-C.  The boot order of the hard-coded ROM of its RK3399 SoC is: SPI NOR, eMMC, SD, USB OTG. &lt;br /&gt;
&lt;br /&gt;
At this time, the Pinebook Pro ships with a Manjaro + KDE build with [https://www.denx.de/wiki/U-Boot/ uboot] on the eMMC.  Its boot order is: SD, USB, then eMMC.&lt;br /&gt;
&lt;br /&gt;
(An update has been pushed for the older Debian + MATE build that improves compatibility with booting other OSs from an SD card. In order to update, fully charge the battery, establish an internet connection, click the update icon in the toolbar, and then reboot your Pinebook Pro.  Please see [https://forum.pine64.org/showthread.php?tid=7830 this log] for details.)&lt;br /&gt;
&lt;br /&gt;
Please note that PCIe, the interface used for NVMe SSD on the Pinebook Pro, is not bootable on the RK3399 and therefore is not a part of the boot hierarchy. It is possible to run the desired OS from NVMe by pointing extlinux on the eMMC to rootfs on the SSD. This requires uboot, the Kernel image, DTB, and extlinux.conf&lt;br /&gt;
in a /boot partition on the eMMC.&lt;br /&gt;
&lt;br /&gt;
=== eMMC information ===&lt;br /&gt;
The eMMC appears to be hot-pluggable. This can be useful if trying to recover data or a broken install. Best practice is probably to turn the eMMC switch to off position before changing modules.&lt;br /&gt;
&lt;br /&gt;
The eMMC storage will show up as multiple block devices:&lt;br /&gt;
*mmcblk1boot0 - eMMC standard boot0 partition, may be 4MB&lt;br /&gt;
*mmcblk1boot1 - eMMC standard boot1 partition, may be 4MB&lt;br /&gt;
*mmcblk1rpmb - eMMC standard secure data partition, may be 16MB&lt;br /&gt;
*mmcblk1 - This block contains the user areas&lt;br /&gt;
&lt;br /&gt;
Only the last is usable as regular storage device in the Pinebook Pro.&lt;br /&gt;
The device number of &amp;quot;1&amp;quot; shown above may vary, depending on kernel.&lt;br /&gt;
&lt;br /&gt;
If the eMMC module is enabled after boot from an SD card, you can detect this change with the following commands as user &amp;quot;root&amp;quot;;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo fe330000.sdhci &amp;gt;/sys/bus/platform/drivers/sdhci-arasan/unbind&lt;br /&gt;
echo fe330000.sdhci &amp;gt;/sys/bus/platform/drivers/sdhci-arasan/bind&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Case Dimensions and Data ==&lt;br /&gt;
* Dimensions: 329mm x 220mm x 12mm (WxDxH)&lt;br /&gt;
* Weight: 1.26Kg&lt;br /&gt;
* Screws&lt;br /&gt;
** Philips head type screws&lt;br /&gt;
** M2 flat head machine screws (measurements in mm)&lt;br /&gt;
** 4 x Small screws (used along the front edge): Head - 3.44, Thread Diameter - 1.97, Thread Length - 2.1,  Overall length - 3.05&lt;br /&gt;
** 6 x Large screws: Head - 3.44, Thread Diameter - 1.97, Thread Length - 4.41, Overall Length - 5.85&lt;br /&gt;
* Rubber Feet&lt;br /&gt;
** 18mm diameter&lt;br /&gt;
** 3mm height&lt;br /&gt;
** Dome shaped&lt;br /&gt;
&lt;br /&gt;
== SoC and Memory Specification ==&lt;br /&gt;
[[File:Rockchip_RK3399.png|right]]&lt;br /&gt;
* Based on Rockchip RK3399&lt;br /&gt;
&lt;br /&gt;
=== CPU Architecture ===&lt;br /&gt;
* big.LITTLE architecture: Dual Cortex-A72 + Quad Cortex-A53, 64-bit CPU&lt;br /&gt;
** Full implementation of the ARM architecture v8-A instruction set (both AArch64 and AArch32)&lt;br /&gt;
** ARM Neon Advanced SIMD (single instruction, multiple data) support for accelerated media and signal processing computation&lt;br /&gt;
** ARMv8 Cryptography Extensions&lt;br /&gt;
** VFPv4 floating point unit supporting single and double-precision operations&lt;br /&gt;
** Hardware virtualization support&lt;br /&gt;
** TrustZone technology support&lt;br /&gt;
** Full CoreSight debug solution&lt;br /&gt;
** One isolated voltage domain to support DVFS&lt;br /&gt;
* Cortex-A72 (big cluster):&lt;br /&gt;
** [https://developer.arm.com/products/processors/cortex-a/cortex-a72 Dual-core Cortex-A72 up to 2.0GHz CPU]&lt;br /&gt;
** Superscalar, variable-length, out-of-order pipeline&lt;br /&gt;
** L1 cache 48KB Icache and 32KB Dcache for each A72 &lt;br /&gt;
** L2 cache 1024KB for big cluster &lt;br /&gt;
* Cortex-A53 (little cluster):&lt;br /&gt;
** [https://developer.arm.com/products/processors/cortex-a/cortex-a53 Quad-core Cortex-A53 up to 1.5GHz CPU]&lt;br /&gt;
** In-order pipeline with symmetric dual-issue of most instructions &lt;br /&gt;
** L1 cache 32KB Icache and 32KB Dcache for each A53&lt;br /&gt;
** L2 cache 512KB for little cluster&lt;br /&gt;
* Cortex-M0 (control processors):&lt;br /&gt;
** [https://developer.arm.com/ip-products/processors/cortex-m/cortex-m0 Cortex-M0 CPU]&lt;br /&gt;
** Two Cortex-M0 cooperate with the central processors&lt;br /&gt;
** Architecture: Armv6-M&lt;br /&gt;
** Thumb/Thumb2 instruction set&lt;br /&gt;
** 32 bit only&lt;br /&gt;
&lt;br /&gt;
=== GPU Architecture ===&lt;br /&gt;
* [https://developer.arm.com/products/graphics-and-multimedia/mali-gpus/mali-t860-and-mali-t880-gpus ARM Mali-T860MP4 Quad-core GPU]&lt;br /&gt;
* The highest performance GPUs built on Arm Mali’s famous Midgard architecture, the Mali-T860 GPU is designed for complex graphics use cases and provide stunning visuals for UHD content.&lt;br /&gt;
* Frequency 	650MHz &lt;br /&gt;
* Throughput 	1300Mtri/s, 10.4Gpix/s&lt;br /&gt;
* Graphic interface standards:&lt;br /&gt;
** OpenGL® ES 1.1, 1.2, 2.0, 3.0, 3.1, 3.2. (Panfrost has initial support of 3.0 beginning 2020/02/27)&lt;br /&gt;
** Vulkan 1.0, using the Mali binary blob. (Panfrost does not support Vulkan as of 2020/06/24)&lt;br /&gt;
** OpenCL™ 1.1, 1.2&lt;br /&gt;
** DirectX® 11 FL11_1&lt;br /&gt;
** RenderScript™&lt;br /&gt;
&lt;br /&gt;
=== System Memory ===&lt;br /&gt;
* RAM Memory:&lt;br /&gt;
** LPDDR4&lt;br /&gt;
** 800MHz, (limited by RK3399)&lt;br /&gt;
** Dual memory channels on the CPU, each 32 bits wide&lt;br /&gt;
** Quad memory channels on the RAM chip, each 16 bits wide, 2 bonded together for each CPU channel&lt;br /&gt;
** 4GB as a single 366 pin mobile RAM chip&lt;br /&gt;
* Storage Memory: &lt;br /&gt;
** 64GB eMMC module, can be upgraded to an 128GB eMMC module. (The initial PINE64 community build version shipped with a 128GB eMMC.)&lt;br /&gt;
** eMMC version 5.1, HS400, 8 bit on RK3399 side&lt;br /&gt;
** Bootable&lt;br /&gt;
* SPI flash:&lt;br /&gt;
** [[Pinebook Pro SPI]]&lt;br /&gt;
** 128Mbit / 16MByte&lt;br /&gt;
** 1 bit interface&lt;br /&gt;
** Bootable, (first boot device, ahead of eMMC &amp;amp; SD card)&lt;br /&gt;
** U-Boot images can be made to work, but as of 2020/06/24 there is no standardized image available.&lt;br /&gt;
&lt;br /&gt;
=== Video out ===&lt;br /&gt;
* USB-C Alt mode DP&lt;br /&gt;
* Up to 3840x2160 p60, dependant on adapter, (2 lanes verses 4 lanes)&lt;br /&gt;
&lt;br /&gt;
=== Expansion Ports ===&lt;br /&gt;
* MicroSD card:&lt;br /&gt;
** Bootable&lt;br /&gt;
** Supports SD, SDHC and SDXC cards, up to 512GB tested. SDXC standard says 2TB is the maximum.&lt;br /&gt;
** Version SD3.0, (MMC 4.5), up to 50MB/s&lt;br /&gt;
** SD card Application Performance Class 1 (A1), (or better), recommended by some users, for better IOPS&lt;br /&gt;
* USB ports:&lt;br /&gt;
** 1 x USB 2.0 Type-A Host Port, bootable&lt;br /&gt;
** 1 x USB 3.0 Type-A Host Port, 5Gbps, is not bootable&lt;br /&gt;
** 1 x USB 3.0 Type-C OTG Port, 5Gbps, (includes laptop charging function), is not bootable&lt;br /&gt;
** Note that high power USB devices may not work reliably on a PBP. Or they may draw enough power to drain the battery even when the PBP is plugged into A.C. One alternative is externally powered USB devices.&lt;br /&gt;
* Headphone jack switchable to UART console mux circuit&lt;br /&gt;
&lt;br /&gt;
== Additional hardware ==&lt;br /&gt;
Hardware that is not part of the SoC.&lt;br /&gt;
&lt;br /&gt;
=== Battery ===&lt;br /&gt;
* Lithium Polymer Battery (10,000 mAH)&lt;br /&gt;
&lt;br /&gt;
=== Display ===&lt;br /&gt;
* 14.0&amp;quot; 1920x1080 IPS LCD panel&lt;br /&gt;
=== Lid closed magnet ===&lt;br /&gt;
There is a magnet to detect when the laptop lid is closed, so action can be taken like sleep. This meets up with the Hall sensor on the daughter / small board to detect lid closed.&lt;br /&gt;
* The magnet is located on the LCD panel right side, around 1.5 inches up measure from bottom edge.&lt;br /&gt;
&lt;br /&gt;
=== Webcam ===&lt;br /&gt;
* Internal USB attached Webcam&lt;br /&gt;
&lt;br /&gt;
=== Audio ===&lt;br /&gt;
* 3.5mm stereo earphone/microphone plug&lt;br /&gt;
* Built-in microphone&lt;br /&gt;
* Built-in stereo speakers:&lt;br /&gt;
** Oval in design&lt;br /&gt;
** 3 mm high x 20 mm x 30 mm&lt;br /&gt;
&lt;br /&gt;
=== Network ===&lt;br /&gt;
* WiFi:&lt;br /&gt;
** 802.11 b/g/n/ac&lt;br /&gt;
** Dual band: 2.4Ghz &amp;amp; 5Ghz&lt;br /&gt;
** Single antenna&lt;br /&gt;
* Bluetooth 5.0&lt;br /&gt;
&lt;br /&gt;
=== Optional NVMe adapter ===&lt;br /&gt;
* PCIe 2.x, 5GT/s per lane&lt;br /&gt;
* 4 PCIe lanes, can not be bifurcated, (however, can be used with 1 or 2 lane NVMe cards)&lt;br /&gt;
* '''M''' keyed, though '''M'''+'''B''' keyed devices will work too&lt;br /&gt;
* Maximum length for M.2 card is 80mm (M.2 2280). The following sizes will also work: 2230, 2242, 2260&lt;br /&gt;
* Power: 2.5W continuous, 8.25W peak momentary&lt;br /&gt;
* Does not support SATA M.2 cards&lt;br /&gt;
* Does not support USB M.2 cards&lt;br /&gt;
&lt;br /&gt;
== Pinebook Pro Schematics and Certifications ==&lt;br /&gt;
* Pinebook Pro Main Board Schematic And Silkscreen:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/pinebookpro_v2.1_mainboard_schematic.pdf Pinebook Pro Main Board ver 2.1 Schematic]&lt;br /&gt;
** [https://wiki.pine64.org/images/3/30/Pinebookpro-v2.1-top-ref.pdf Pinebook Pro ver 2.1 Top Layer Silkscreen]&lt;br /&gt;
** [https://wiki.pine64.org/images/b/b7/Pinebookpro-v2.1-bottom-ref.pdf Pinebook Pro ver 2.1 Bottom Layer Silkscreen]&lt;br /&gt;
* Pinebook Pro Daughter Board Schematic:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/pinebookpro_v2.1_daughterboard_schematic.pdf Pinebook Pro Daughter Board ver 2.1 Schematic]&lt;br /&gt;
* Optional Pinebook Pro NVMe Adapter Schematic:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/pinebookpro_v2.1_NVMe-adapter_schematic.pdf Pinebook Pro NVMe Adapter Board ver 2.1 Schematic]&lt;br /&gt;
* Serial Console Earphone Jack Pinout:&lt;br /&gt;
** [https://files.pine64.org/doc/pinebook/guide/Pinebook_Earphone_Serial_Console_Developer_Guide.pdf Pinkbook Serial Console Earphone Jack Pinout]&lt;br /&gt;
* Pinebook Pro Case:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/drawings/Pinebook%20Pro%20Principle%20Views.pdf AutoCAD PDF File ]&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/drawings/Pinebook%20Pro%20Principle%20Views.ai AutoCAD AI File ]&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/drawings/Pinebook%20Pro%20Principle%20Views.dwg AutoCAD DWG File ]&lt;br /&gt;
* Pinebook Pro Certifications:&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Pinebook%20Pro%20FCC%20Certificate-S19071103501001.pdf Pinebook Pro FCC Certificate]&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Pinebook%20Pro%20CE%20RED%20Certificate-S19051404304.pdf Pinebook Pro CE Certificate]&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Pinebook%20Pro%20ROHS%20Compliance%20Certificate.pdf Pinebook Pro RoHS Certificate]&lt;br /&gt;
&lt;br /&gt;
== Datasheets for Components and Peripherals ==&lt;br /&gt;
* Rockchip RK3399 SoC information:&lt;br /&gt;
** [https://www.rock-chips.com/a/en/products/RK33_Series/2016/0419/758.html Rockchip RK3399 SoC Brief]&lt;br /&gt;
** [https://opensource.rock-chips.com/images/d/d7/Rockchip_RK3399_Datasheet_V2.1-20200323.pdf Rockchip RK3399 Datasheet v2.1]&lt;br /&gt;
** [https://opensource.rock-chips.com/images/e/ee/Rockchip_RK3399TRM_V1.4_Part1-20170408.pdf Rockchip RK3399 Technical Reference Manual, part 1]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/rockpro64/RK808%20datasheet%20V0.8.pdf Rockchip RK808 Datasheet v0.8]&lt;br /&gt;
* LPDDR4 SDRAM (366-pin BGA):&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/micron%20SM512M64Z01MD4BNK-053FT%20LPDDR4%20(366Ball).pdf Micron 366 balls Mobile LPDDR4 Datasheet]&lt;br /&gt;
* eMMC information:&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/PINE64_eMMC_Module_20170719.pdf PINE64 eMMC module schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/usb%20emmc%20module%20adapter%20v2.pdf PINE64 USB adapter for eMMC module V2 schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/USB%20adapter%20for%20eMMC%20module%20PCB.tar PINE64 USB adapter for eMMC module PCB in JPEG]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/SDINADF4-16-128GB-H%20data%20sheet%20v1.13.pdf 64GB/128GB SanDisk eMMC Datasheet]&lt;br /&gt;
* SPI NOR Flash information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/w25q128jv%20spi%20revc%2011162016.pdf WinBond 128Mb SPI Flash Datasheet]&lt;br /&gt;
** [https://wiki.pine64.org/images/b/b9/Ds-00220-gd25q127c-rev1-df2f4.pdf GigaDevice 128Mb SPI Flash Datasheet (updated)]&lt;br /&gt;
* Wireless and Bluetooth information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/AP6256%20datasheet_V1.7_12282018.pdf AMPAK AP6256 11AC Wi-Fi + Bluetooth5 Datasheet]&lt;br /&gt;
* Audio codec:&lt;br /&gt;
** [https://everest-semi.com/pdf/ES8316%20PB.pdf Everest ES8316 Audio Codec Datasheet]&lt;br /&gt;
* LCD panel:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/NV140FHM-N49_Rev.P0_20160804_201710235838.pdf 14&amp;quot; 1920x1080 IPS LCD Panel datasheet]&lt;br /&gt;
* USB-related information:&lt;br /&gt;
** Internal USB 2.0 hub: [https://wiki.pine64.org/images/3/39/GL850G_USB_Hub_1.07.pdf GL850G USB Hub Datasheet]&lt;br /&gt;
** USB Type-C Controller: [https://www.onsemi.com/pub/Collateral/FUSB302-D.PDF ON Semiconductor FUSB302 Datasheet]&lt;br /&gt;
* Touchpad information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/YX%20HK-9562%20HID%20I2C%20Specification.pdf PineBook Pro Touchpad Specification]&lt;br /&gt;
* Keyboard information:&lt;br /&gt;
** [https://wiki.pine64.org/images/b/b0/SH68F83V2.0.pdf Sinowealth SH68F83 Datasheet]&lt;br /&gt;
** US ANSI: XK-HS002 MB27716023&lt;br /&gt;
* Full HD camera sensor:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/HK-2145-263.pdf Full HD Camera module specification (in Chinese)]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/GC2145%20CSP%20DataSheet%20release%20V1.0_20131201.pdf GalaxyCore GC2145 Full HD Camera Sensor Datasheet]&lt;br /&gt;
* Battery-related information:&lt;br /&gt;
** Battery charging IC: [https://www.ti.com/lit/ds/symlink/bq24171.pdf?ts=1607068456825&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FBQ24171 Texas Instruments BQ24171 Datasheet]&lt;br /&gt;
** Battery monitoring IC: [https://cdn.datasheetspdf.com/pdf-down/C/W/2/CW2015-Cellwise.pdf Cellwise CW2015 Datasheet]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pinebook/40110175P%203.8V%2010000mAh规格书-14.pdf 10000mAH Lithium Battery Specification]&lt;br /&gt;
* Power path device:&lt;br /&gt;
** [https://wiki.pine64.org/images/9/99/Sis412dn.pdf N-MOS / MOSFET]&lt;br /&gt;
* NVMe adapter:&lt;br /&gt;
** [https://wiki.pine64.org/images/d/d0/Hirose-FH26W-35S-0.3SHW%2860%29-datasheet.pdf FH26-35S-0.3SHW flat flex connector (compatible, not OEM)]&lt;br /&gt;
&lt;br /&gt;
== Versions ==&lt;br /&gt;
Pinebook Pro v1 and v2 were prototype models that did not make it to the public. The &amp;quot;first batch&amp;quot; (First 100 forum preorders) onward are v2.1. [https://forum.pine64.org/showthread.php?tid=8111] &lt;br /&gt;
&lt;br /&gt;
=Skinning and Case Customization=&lt;br /&gt;
* Template files for creating custom skins. Each includes template layers for art placement, and CUT lines.&lt;br /&gt;
**[https://drive.google.com/open?id=1UKFlC53DO0GJm3Hz1E_669n_HhI45e4n Case Lid Template]&lt;br /&gt;
**[https://drive.google.com/open?id=1Q6bKGarMDhvWz3HdGvhL5qDhyHb546ve Case Bottom Template]&lt;br /&gt;
**[https://drive.google.com/open?id=1ugI74ygNJ3EN5jXks5jKvdpEAoxIzHo4 Case Palmrest Template]&lt;br /&gt;
&lt;br /&gt;
= Other Resources =&lt;br /&gt;
* [https://forum.pine64.org/forumdisplay.php?fid=111 Pinebook Pro Forum]&lt;br /&gt;
* [https://forum.pine64.org/forumdisplay.php?fid=98 ROCKPro64 Forum]&lt;br /&gt;
* [[RockPro64 Guides]]&lt;br /&gt;
* [https://riot.im/app/#/room/#pinebook:matrix.org Matrix Channel] (No login required to read)&lt;br /&gt;
* IRC Server: irc.pine64.org Channel: PineBook&lt;br /&gt;
* [https://discordapp.com/channels/463237927984693259/622348681538043924 Discord Channel]&lt;br /&gt;
* [https://github.com/rockchip-linux Rockchip Linux GitHub Repo]&lt;br /&gt;
* [https://opensource.rock-chips.com/ Rockchip Open Source Wiki]&lt;br /&gt;
* [https://wiki.pine64.org/wiki/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro Freepascal and Lazarus IDE on Pinebook Pro]&lt;br /&gt;
&lt;br /&gt;
[[Category:PineBook Pro]] [[Category:Rockchip RK3399]]&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=Pinebook_Pro&amp;diff=8464</id>
		<title>Pinebook Pro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=Pinebook_Pro&amp;diff=8464"/>
		<updated>2020-12-17T13:28:51Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Other Resources */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= User Guide =&lt;br /&gt;
== Introducing PineBook Pro == &lt;br /&gt;
[[File:PBP.jpg|400px|thumb|right|Pinebook Pro running Debian with MATE]]&lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro is a Linux and *BSD ARM laptop from [https://www.pine64.org/ PINE64]&lt;br /&gt;
&lt;br /&gt;
It is built to be a compelling alternative to mid-ranged Chromebooks that people convert into Linux laptops. It features an IPS 1080p 14″ LCD panel, a premium magnesium alloy shell, high capacity eMMC storage, a 10,000 mAh capacity battery, and the modularity that only an open source project can deliver. &lt;br /&gt;
&lt;br /&gt;
It's compact and slim dimensions are 329mm x 220mm x 12mm (WxDxH).&lt;br /&gt;
&lt;br /&gt;
Key features include: the RK3399 SOC; USB-C for data, video-out and power-in (3A 5V); privacy switches for the microphone, BT/WiFi module, and camera; and expandable storage via NVMe (PCIe 4x) with an optional adapter. &lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro is equipped with 4GB LPDDR4 system memory, high capacity eMMC flash storage, and 128Mb SPI boot Flash. The I/O includes: 1x micro SD card reader (bootable), 1x USB 2.0, 1x USB 3.0, 1x USB type C Host with DP 1.2 and power-in, PCIe 4x for an NVMe SSD drive (requires an optional adapter), and UART (via the headphone jack by setting an internal switch). &lt;br /&gt;
&lt;br /&gt;
The keyboard and trackpad both use the USB 2.0 protocol.  The LCD panel uses eDP MiPi display protocol.&lt;br /&gt;
&lt;br /&gt;
Many different Operating Systems (OS) are freely available from the open source community and partner projects.  These include various flavors of Linux (Ubuntu, Debian, Manjaro, etc.) and *BSD.&lt;br /&gt;
&lt;br /&gt;
== Software and OS Image Downloads ==&lt;br /&gt;
&lt;br /&gt;
=== Default Manjaro KDE Desktop Quick Start ===&lt;br /&gt;
&lt;br /&gt;
When you first get your Pinebook Pro and boot it up for the first time, it'll come with Manjaro using the KDE desktop. The Pinebook Pro is officially supported by the Manjaro ARM project, and support can be found on the [https://forum.manjaro.org/c/manjaro-arm/78 Manjaro ARM forums.]&lt;br /&gt;
&lt;br /&gt;
On first boot, it will ask for certain information such as your timezone location, keyboard layout, username, password, and hostname. Most of these should be self-explanatory. Note that the hostname it asks for should be thought of as the &amp;quot;codename&amp;quot; of your machine, and if you don't know what it's about, you can make something up (use a single word, all lower case, no punctuation; e.g. &amp;quot;pbpro&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
After you're on the desktop, be sure to update it as soon as possible and reboot after updates are finished installing. If nothing appears when you click on the Networking icon in your system tray to connect to your Wi-Fi, ensure the Wi-Fi [https://wiki.pine64.org/index.php/Pinebook_Pro#ANSI_Fn_.2B_F_keys_wrong_for_F9.2C_F10.2C_F11_and_F12  privacy switch] is not disabled.&lt;br /&gt;
&lt;br /&gt;
=== [[Pinebook Pro_Software_Release|Pinebook Pro images]] ===&lt;br /&gt;
Under [[Pinebook Pro Software Release|'Pinebook Pro Software Release/OS Image Download Section']] you will find a complete list of currently supported Operating System images that work with the Pinebook as well as other related software. &lt;br /&gt;
&lt;br /&gt;
The list includes OS images and descriptions of:&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#elementary OS|'''elementary OS 6 (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Manjaro ARM|'''Manjaro ARM (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Debian Desktop|'''Debian Desktop (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Bionic LXDE|'''Bionic LXDE (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Bionic Mate|'''Bionic Mate (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Fedora|'''Fedora (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#OpenSUSE|'''OpenSUSE (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Q4OS|'''Q4OS (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Armbian|'''Armbian (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#NetBSD|'''NetBSD (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[Pinebook_Pro_Software_Release#OpenBSD|'''OpenBSD release for ARM64''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Chromium|'''Chromium (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Arch_Linux|'''Arch Linux ARM installer (microSD and USB boot)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Android_7.1_microSD|'''Android 7.1 (microSD Boot)''']] &lt;br /&gt;
&lt;br /&gt;
[[File:Android_7.png|125px]]] [[PinebookPro_Software_Release#Android_7.1_eMMC|'''Android 7.1 (eMMC)''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Daniel_Thompson.27s_Debian_Installer_for_the_Pinebook_Pro|'''Debian Installer for Pinebook Pro''']]&lt;br /&gt;
&lt;br /&gt;
[[Pinebook_Pro_Software_Release#Gentoo_Script_for_Pinebook_Pro|'''Gentoo Script for Pinebook Pro''']]&lt;br /&gt;
&lt;br /&gt;
[[PinebookPro_Software_Release#Kali_Linux_for_Pinebook_Pro|'''Kali Script for Pinebook Pro (microSD and eMMC Boot)''']]&lt;br /&gt;
&lt;br /&gt;
=== Quick Links to OS Images Build Sources===&lt;br /&gt;
'''Some of the provided OS images are still in &amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;beta or nightly build&amp;lt;/span&amp;gt; and only fit for testing purposes. These images ought to be avoided for normal usage - use them at &amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;your own risk&amp;lt;/span&amp;gt;'''&lt;br /&gt;
* [https://github.com/ayufan-rock64/linux-build/releases/ ayufan's Linux build repo] (Includes Ubuntu 20.04 Focal Fossa and Debian Buster images. Click 'Assets' at the end of the releases text to view images) &lt;br /&gt;
* [https://github.com/ayufan-rock64/chromiumos-build/releases ayufan's Chromium OS build repo]&lt;br /&gt;
* [https://github.com/mrfixit2001/debian_desktop/releases mrfixit2001's Linux debian desktop build repo]&lt;br /&gt;
&lt;br /&gt;
== Keyboard ==&lt;br /&gt;
The Pinebook Pro is available in two keyboard configurations: ISO and ANSI. Both the keyboard and trackpad in the Pinebook Pro use the USB 2.0 protocol and show up as such in xinput. The keyboard features function (Fn) keys in the F-key row, which include display brightness controls, sound volume, trackpad lock, and other functionality. There is also a custom PINE64 logo key that functions as Menu/Super key. It has also a secondary functionality for setting the privacy switches.   &lt;br /&gt;
&lt;br /&gt;
The keyboard firmware binary can be flashed from userspace using the provided open source utility. &lt;br /&gt;
&lt;br /&gt;
Documentation for the keyboard can be found in [[#Datasheets for Components and Peripherals|Datasheets for Components and Peripherals]]. &lt;br /&gt;
&lt;br /&gt;
=== Typing special characters ===&lt;br /&gt;
The [[Wikipedia:British_and_American_keyboards#Other_keyboard_layouts|UK ISO Layout]] does not have dedicated keys for characters like the German umlauts (Ä,Ö,Ü, etc). Certain characters can still be generated by means of either key combinations or key sequences. &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Character&lt;br /&gt;
!Key combination/sequence&lt;br /&gt;
|-&lt;br /&gt;
|Ä, Ö, Ü, ä, ö, ü&lt;br /&gt;
|[[Wikipedia:AltGr_key|[AltGr]]]+'[' followed by [A], [O], [U], [a], [o] or [u]&lt;br /&gt;
|-&lt;br /&gt;
|µ&lt;br /&gt;
|[AltGr]+[m]&lt;br /&gt;
|-&lt;br /&gt;
|Ø, ø&lt;br /&gt;
|[AltGr]+[O], [AltGr]+[o]&lt;br /&gt;
|-&lt;br /&gt;
|@&lt;br /&gt;
|[AltGr]+[q] (as on the German layout)&lt;br /&gt;
|-&lt;br /&gt;
|ß&lt;br /&gt;
|[AltGr]+[s]&lt;br /&gt;
|-&lt;br /&gt;
|§&lt;br /&gt;
|[AltGr]+[S]&lt;br /&gt;
|-&lt;br /&gt;
|°&lt;br /&gt;
|[AltGr]+[)]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Privacy Switches ===&lt;br /&gt;
There are three privacy switches mapped to the F10, F11 and F12 keys on the Pinebook Pro keyboard. They de/activate the following:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Privacy switch function and description&lt;br /&gt;
! Combination&lt;br /&gt;
! Effect&lt;br /&gt;
! Description&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | PINE64 logo key+F10&lt;br /&gt;
| Microphone Privacy switch&lt;br /&gt;
| CAPs lock LED blinks. 2 blinks = enabled, 3 blinks = disabled&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | PINE64 logo key+F11&lt;br /&gt;
| WiFi Privacy switch&lt;br /&gt;
| NUM lock LED blinks. 2 blinks = WiFi enabled / killswitch disabled, 3 blinks = WiFi disabled / killswitch enabled.&lt;br /&gt;
| '''Re-enabling requires reboot''' (or a [//forum.pine64.org/showthread.php?tid=8313&amp;amp;pid=52645#pid52645 command line hack to bind/unbind]).&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | PINE64 logo key+F12&lt;br /&gt;
| Camera privacy switch&lt;br /&gt;
| CAPs lock and NUM lock LEDs blink together. 2 blinks = enabled, 3 blinks = disabled&lt;br /&gt;
| Can use tools like '''&amp;lt;code&amp;gt;lsusb&amp;lt;/code&amp;gt;''' to detect camera's presence. If not detected, check privacy switch.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''(Press the PINE64 logo key plus F10/F11/F12) for 3 seconds)'''&lt;br /&gt;
&lt;br /&gt;
The keyboard operates on firmware independant of the operating system.  It detects if one of the F10, F11 or F12 keys is pressed in combination with the Pine key for 3 seconds. Doing so disables power to the appropriate peripheral, thereby disabling it.  This has the same effect as cutting off the power to each peripheral with a physical switch. This implementation is very secure, since the firmware that determines whether a peripheral gets power is not part of the Pinebook Pro’s operating system. So the power state value for each peripheral cannot be overridden or accessed from the operating system. The power state setting for each peripheral is stored across reboots inside the keyboard's firmware flash memory.&lt;br /&gt;
&lt;br /&gt;
== Trackpad ==&lt;br /&gt;
The trackpad is a reasonable size, has a matte finish that that your finger can slide along easily, and two actuating buttons. It is the only component of the Pinebook Pro held in place with strong adhesive tape. It supports multi-touch functionality. &lt;br /&gt;
Documentation for the trackpad can be found in [[#Datasheets for Components and Peripherals|Datasheets for Components and Peripherals]].&lt;br /&gt;
The trackpad firmware binary can be flashed from userspace using the provided open source utility (https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater). A fork with more recent changes is also available (https://github.com/jackhumbert/pinebook-pro-keyboard-updater) and may want to be considered instead while feature parity is different.&lt;br /&gt;
&lt;br /&gt;
The trackpad controller is connected to the keyboard controller. All trackpad events go through the keyboard controller and it's software, then to the keyboard controller's USB port. Note that the trackpad does have separate firmware, (which has to be written through the keyboard controller).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Everyone with a Pinebook Pro produced in 2019 should update their keyboard and trackpad firmware.''' &lt;br /&gt;
&lt;br /&gt;
Before you start:&lt;br /&gt;
&lt;br /&gt;
Please refer to original documentation for details.&lt;br /&gt;
&lt;br /&gt;
Your Pinebook Pro should be either fully charged or, preferably, running off of mains. This utility will be writing chips on the keyboard and trackpad, so a loss of power during any stage of the update can result in irrecoverable damage to your trackpad or keyboard.&lt;br /&gt;
&lt;br /&gt;
The scripts ought to work on all OSs available for the Pinebook Pro. Some OSs may, however, require installation of relevant dependencies. The instructions below assume a Debian desktop. Newer Pinebook Pro models that come with Manjaro will require a different command to install the proper dependencies.&lt;br /&gt;
&lt;br /&gt;
There are two keyboard versions of the Pinebook Pro: ISO and ANSI. You need to know which model you have prior to running the updater. &lt;br /&gt;
Firmware update steps for both models are listed below.  &lt;br /&gt;
&lt;br /&gt;
What you will need:&lt;br /&gt;
&lt;br /&gt;
*Your Pinebook Pro fully charged or running off of mains power&lt;br /&gt;
*Connection to WiFi&lt;br /&gt;
*An external USB keyboard &amp;amp; mouse (or access to the Pinebook Pro via SSH)&lt;br /&gt;
&lt;br /&gt;
'''ISO Model''' &lt;br /&gt;
&lt;br /&gt;
From the terminal command line: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo apt-get install build-essential libusb-1.0-0-dev xxd&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 1&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-1 iso&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 (after reboot)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-2 iso&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''ANSI Model''' &lt;br /&gt;
&lt;br /&gt;
*&amp;lt;b&amp;gt;NOTE:&amp;lt;/b&amp;gt; Running step 1 on the ANSI keyboard model will make the keyboard and trackpad inaccessible until step 2 is ran, so an external keyboard must be connected to complete the update on this model!&lt;br /&gt;
&lt;br /&gt;
From the terminal command line: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone https://github.com/ayufan-rock64/pinebook-pro-keyboard-updater&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo apt-get install build-essential libusb-1.0-0-dev xxd&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 1&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-1 ansi&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Step 2 (after reboot)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd pinebook-pro-keyboard-updater&lt;br /&gt;
sudo ./updater step-2 ansi&lt;br /&gt;
sudo reboot&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
When done, if some of the keys produce incorrect characters, please check your OS’s language settings. For ANSI users, the default OS shipped with English UK as the default language. You can change it to English US if desired.&lt;br /&gt;
&lt;br /&gt;
=== X-Windows &amp;amp; trackpad settings ===&lt;br /&gt;
Some forum members have found that an adjustment to X-Windows will allow finer motion in the trackpad. If you use the '''Synaptic''' mouse/trackpad driver, use this command to make the change live:&lt;br /&gt;
&amp;lt;pre&amp;gt;synclient MinSpeed=0.25&amp;lt;/pre&amp;gt;&lt;br /&gt;
You may experiment with different settings, but 0.25 was tested as helping noticeably.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To make the change persist across reboots, change the file &amp;lt;code&amp;gt;/etc/X11/xorg.conf&amp;lt;/code&amp;gt; similar to below:&lt;br /&gt;
&amp;lt;pre&amp;gt;    Section &amp;quot;InputClass&amp;quot;&lt;br /&gt;
        Identifier &amp;quot;touchpad catchall&amp;quot;&lt;br /&gt;
        Driver &amp;quot;synaptics&amp;quot;&lt;br /&gt;
        MatchIsTouchpad &amp;quot;on&amp;quot;&lt;br /&gt;
        MatchDevicePath &amp;quot;/dev/input/event*&amp;quot;&lt;br /&gt;
        Option &amp;quot;MinSpeed&amp;quot; &amp;quot;0.25&amp;quot;&lt;br /&gt;
    EndSection&amp;lt;/pre&amp;gt;&lt;br /&gt;
The line &amp;lt;code&amp;gt;Option &amp;quot;MinSpeed&amp;quot; &amp;quot;0.25&amp;quot;&amp;lt;/code&amp;gt; is the change.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Another forum user built on the above settings a little, and have found these to be very good:&lt;br /&gt;
&amp;lt;pre&amp;gt;synclient MinSpeed=0.25&lt;br /&gt;
synclient TapButton1=1&lt;br /&gt;
synclient TapButton2=3&lt;br /&gt;
synclient TapButton3=2&lt;br /&gt;
synclient FingerLow=30&lt;br /&gt;
synclient PalmDetect=1&lt;br /&gt;
synclient VertScrollDelta=64&lt;br /&gt;
synclient HorizScrollDelta=64&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;FingerLow&amp;lt;/code&amp;gt; has the same value as 'FingerHigh' in one config (30). It is believed to help reduce mouse movement as you lift your finger, but it's unknown whether synaptic works like this.&lt;br /&gt;
You may find this config to be comfortable for daily use.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;TabButton&amp;lt;/code&amp;gt; allows to just tab the touchpad instead of physically pressing it down (to get this click noise).&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;right mouse click&amp;lt;/code&amp;gt; is emulated by tapping with two fingers on the trackpad. If you feel that this is not very responsive you can try this value:&lt;br /&gt;
&amp;lt;pre&amp;gt; synclient MaxTapTime=250 &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Power Supply ==&lt;br /&gt;
* Input Power: 5V DC @ 3A&lt;br /&gt;
* Mechanical: 3.5mm OD / 1.35mm ID, Barrel jack&lt;br /&gt;
* USB-C 5V, 15W PD quickcharge&lt;br /&gt;
* Only use one power input at a time, barrel jack OR USB-C&lt;br /&gt;
&lt;br /&gt;
== LEDs ==&lt;br /&gt;
In total, there are four LEDs on the Pinebook Pro, three of which are placed in the top-left side of the keyboard, and one near the barrel port: &lt;br /&gt;
&lt;br /&gt;
# The red LED next to the barrel port indicates charging, in three ways.  First, it will illuminate steadily when either the factory power supply or a USB Type-C charger is connected to the Pinebook Pro, and the battery is getting charged.  Second, if the battery is at 100%, the LED will remain turned off regardless of the connected power input; however, this is [https://forum.pine64.org/showthread.php?tid=10899 rather rarely achieved].  Third, this LED will flash at 0.5&amp;amp;nbsp;Hz if there are any problems that prevent charging, such as the battery becoming too hot.&lt;br /&gt;
# The power indicator LED, above the keyboard, supports three different colours: green, amber and red. It is also capable of flashing to indicate eMMC activity. In the default Debian with MATE build, green LED means power and red means suspend (amber is unused). &lt;br /&gt;
# The green NumLock LED, above the keyboard.&lt;br /&gt;
# The green CapsLock LED, above the keyboard.&lt;br /&gt;
&lt;br /&gt;
The NumLock and CapsLock LEDs serve their usual purposes on a keyboard, but they also have a secondary function. When the privacy switches get activated they blink to confirm that the switch has been activated.&lt;br /&gt;
&lt;br /&gt;
== Webcam ==&lt;br /&gt;
* Streaming video resolutions supported, (un-compressed):&lt;br /&gt;
** 320 x 240 &lt;br /&gt;
** 640 x 480&lt;br /&gt;
** 800 x 600&lt;br /&gt;
** 1280 x 720&lt;br /&gt;
** 1600 x 1200&lt;br /&gt;
* Still frame resolutions supported:&lt;br /&gt;
** 160 x 120&lt;br /&gt;
** 176 x 144&lt;br /&gt;
** 320 x 240&lt;br /&gt;
** 352 x 288 &lt;br /&gt;
** 640 x 480&lt;br /&gt;
** 800 x 600&lt;br /&gt;
** 1280 x 720&lt;br /&gt;
** 1600 x 1200&lt;br /&gt;
* Some people test with the application Cheese&lt;br /&gt;
WIP&lt;br /&gt;
&lt;br /&gt;
== Microphones ==&lt;br /&gt;
While it has been said that some Pinebook Pro units contain only one microphone despite having two labeled microphone holes on the outer casing, other units do indeed contain two microphones. It is presently unclear which batches have either configuration; units from the initial community batch of 1000 units (following the initial 100) are believed to contain two, populating both labeled holes.&lt;br /&gt;
&lt;br /&gt;
The wires leading to both microphones connect to the mainboard with a small white plastic connector, located directly adjacent to the ribbon cable attachment point for the keyboard interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Microphones not working?'''&lt;br /&gt;
&lt;br /&gt;
If pavucontrol input doesn't show microphone activity try the [[Pinebook_Pro#Privacy_Switches]]; once that is set to on do the below; if that still hasn't fixed it you may want to check that the microphone connector is plugged in (see the [[Pinebook_Pro#Technical_Reference]]).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
run alsamixer from the command line &amp;gt; hit F6 and select the es8316 &amp;gt; hit F4 to get to the capture screen &amp;gt; select the bar labeled ADC &amp;gt;&lt;br /&gt;
&amp;gt; increase the gain to 0dB &amp;gt; change the audio profile in pavucontrol to another with input&lt;br /&gt;
&lt;br /&gt;
Additionally:&lt;br /&gt;
you may want to modify ADC PGA to get the levels to where you want them&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bluetooth and WiFi ==&lt;br /&gt;
[[File:PinebookPro_WirelessIC_Location.jpg|400px|thumb|right|The Pinebook Pro's AP6256 wireless module]]&lt;br /&gt;
===Hardware Overview===&lt;br /&gt;
The Pinebook Pro contains an AMPAK AP6256 wireless module to provide Wi-Fi (compliant to IEEE 802.11ac) and Bluetooth (compliant to Bluetooth SIG revision 5.0). The module contains a Broadcom transceiver IC, believed to be the BCM43456, as well as the support electronics needed to allow the Wi-Fi and Bluetooth modes to share a single antenna. &lt;br /&gt;
&lt;br /&gt;
The wireless module interfaces with the Pinebook Pro’s system-on-chip using a combination of three interfaces: Bluetooth functionality is operated by serial UART and PCM, while the Wi-Fi component uses SDIO. It is unknown if the module’s Bluetooth capabilites are usable under operating systems that do not support SDIO.&lt;br /&gt;
&lt;br /&gt;
The module’s RF antenna pin is exposed on the mainboard via a standard Hirose U.FL connector, where a coaxial feedline links it to a flexible adhesive antenna situated near the upper right corner of the Pinebook Pro’s battery. As the RF connector is fragile and easily damaged, it should be handled carefully during connection and disconnection, and should not be reconnected frequently.&lt;br /&gt;
&lt;br /&gt;
===Issues===&lt;br /&gt;
Problems have been reported with the Wi-Fi transceiver’s reliability during extended periods of high throughput, especially on the 2.4 GHz band. While the cause of this has yet to be determined, switching to the 5 GHz band may improve stability.&lt;br /&gt;
&lt;br /&gt;
Since the Bluetooth transceiver shares both its spectrum and antenna with 2.4 GHz Wi-Fi, simultaneous use of these modes may cause interference, especially when listening to audio over Bluetooth. If Bluetooth audio cuts out frequently, switching to the 5 GHz band – or deactivating Wi-Fi – may help.&lt;br /&gt;
&lt;br /&gt;
===Wi-Fi Capabilities===&lt;br /&gt;
Wi-Fi on the Pinebook Pro is capable of reaching a maximum data transfer rate of approximately 433 megabits per second, using one spatial stream. The transceiver does not support multiple spatial streams or 160-MHz channel bandwidths.&lt;br /&gt;
&lt;br /&gt;
The Wi-Fi transceiver supports the lower thirteen standard channels on the 2.4 GHz band, using a bandwidth of 20 MHz. At least twenty-four channels are supported on the 5 GHz band, spanning frequencies from 5180 to 5320 MHz, 5500 to 5720 MHz, and 5745 to 5825 MHz, with bandwidths of 20, 40, or 80 MHz.&lt;br /&gt;
&lt;br /&gt;
Maximum reception sensitivity for both bands is approximately -92 dBm. The receiver can tolerate input intensities of no more than -20 dBm on the 2.4 GHz band, and no more than -30 dBm on the 5 GHz band. Maximum transmission power is approximately +15 dBm for either band, falling further to approximately +10 dBm at higher data transfer rates on the 5 GHz band.&lt;br /&gt;
&lt;br /&gt;
With current available drivers and firmware, the Wi-Fi interface supports infrastructure, ad-hoc, and access-point modes with satisfactory reliability. Monitor mode is not presently supported. Wi-Fi Direct features may be available, but it is unclear how to make use of them under Linux.&lt;br /&gt;
&lt;br /&gt;
Be aware that Linux userspace utilities, such as &amp;lt;code&amp;gt;iw&amp;lt;/code&amp;gt;, may report inaccurate information about the capabilities of wireless devices. Parameter values derived from vendor datasheets, or direct testing, should be preferred to the outputs of hardware-querying tools.&lt;br /&gt;
&lt;br /&gt;
===Bluetooth Capabilities===&lt;br /&gt;
Bluetooth data transfer speeds have an indicated maximum of 3 megabits per second, but it is unclear what practical data rates can be expected. Audio streaming over Bluetooth is functioning normally, as is networking. Bluetooth Low-Energy functions, such as interacting with Bluetooth beacons, have not yet been tested conclusively.&lt;br /&gt;
&lt;br /&gt;
The Bluetooth transceiver supports all 79 channel allocations, spanning frequencies from 2402 MHz to 2480 MHz. Reception sensitivity is approximately -85 dBm, with a maximum tolerable reception intensity of -20 dBm. Bluetooth transmission power is limited to +10 dBm.&lt;br /&gt;
&lt;br /&gt;
===Disabling Bluetooth===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#disable bluetooth once&lt;br /&gt;
sudo rfkill block bluetooth &amp;amp;&amp;amp; &lt;br /&gt;
&lt;br /&gt;
#confirm&lt;br /&gt;
rfkill&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#disable bluetooth on boot**&lt;br /&gt;
sudo systemctl enable rfkill-block@bluetooth&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;**This does not do what one might want on certain distros, Manjaro XFCE for example. Try the below.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
right click on the bluetooth panel icon &amp;gt; select 'plugins' &amp;gt; PowerManager &amp;gt; configuration &amp;gt; deselect the auto power on option&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== LCD Panel ==&lt;br /&gt;
* Model: BOE NV140FHM-N49&lt;br /&gt;
* 14.0&amp;quot; (35.56cm) diagonal size&lt;br /&gt;
* 1920x1080 resolution&lt;br /&gt;
* 60hz refresh rate&lt;br /&gt;
* IPS&lt;br /&gt;
* 1000:1 contrast&lt;br /&gt;
* 250nt brightness&lt;br /&gt;
* 63% sRGB coverage&lt;br /&gt;
* 6 bit colour&lt;br /&gt;
* 30 pin eDP connection&lt;br /&gt;
&lt;br /&gt;
Some people have tested hardware video decode using the following;&lt;br /&gt;
&amp;lt;pre&amp;gt;ffmpeg -benchmark -c:v h264_rkmpp -i file.mp4 -f null -&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== External ports list ==&lt;br /&gt;
Here are a list of the external ports. See [[Pinebook_Pro#Expansion_Ports|Technical Reference - Expansion Ports]] for port specifications.&lt;br /&gt;
* Left side&lt;br /&gt;
** Barrel jack for power, (with LED)&lt;br /&gt;
** USB 3, Type A&lt;br /&gt;
** USB 3, Type C&lt;br /&gt;
* Right side&lt;br /&gt;
** USB 2, Type A&lt;br /&gt;
** Standard headset jack&lt;br /&gt;
** MicroSD card slot&lt;br /&gt;
&lt;br /&gt;
== Using the UART ==&lt;br /&gt;
[[File:PBPUART.jpeg|400px|thumb|right|Headphone jack UART wiring reference.&lt;br /&gt;
&amp;lt;br&amp;gt; Swapping the tx and rx around from this also works and is more traditional.&lt;br /&gt;
&amp;lt;br&amp;gt; See [https://files.pine64.org/doc/pinebook/guide/Pinebook_Earphone_Serial_Console_Developer_Guide.pdf this] official Pine64 .pdf.]]&lt;br /&gt;
&lt;br /&gt;
UART output is enabled by flipping the UART switch to the ON position (item 9). To do so you need to remove the Pinebook Pro's bottom cover - please follow [https://wiki.pine64.org/index.php/Pinebook_Pro_Main_Page#Accessing_the_Internals_-_Disassembly_and_Reassembly proper disassembly and reassembly protocol]. The OFF position is towards the touchpad, the ON position is towards the display hinges.&lt;br /&gt;
&lt;br /&gt;
With the UART switch in the ON position, console is relayed via the audiojack and the laptop's sound is turned OFF. Please ensure that you are using a 3.3v interface (such as the CH340, FTDI-232R, or PL2303, which are sold in both 3.3v and 5v variants) to avoid damage to the CPU. &lt;br /&gt;
&lt;br /&gt;
Insert the USB plug of the cable into an open USB port on the machine which will monitor. Run the following in a terminal:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
$ lsusb&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
you should find a line similar to this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
Bus 001 Device 058: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You may have to clean the USB contacts of the Serial cable to get a good connection if you do not find that line.&lt;br /&gt;
&lt;br /&gt;
The audio jack of the Serial cable should be fully inserted into the Pinebook Pro audio port.&lt;br /&gt;
&lt;br /&gt;
Serial output should now be accessible using screen, picocom or minicom (and others).&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
screen /dev/ttyUSB0 1500000&lt;br /&gt;
&lt;br /&gt;
picocom /dev/ttyUSB0 -b 1500000&lt;br /&gt;
&lt;br /&gt;
minicom -D /dev/ttyUSB0 -b 1500000&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Old versions of U-Boot do not use the UART for console output. &amp;lt;strike&amp;gt;The console function is activated by the Linux kernel. Thus, if you use a non-Pinebook Pro Linux distro and want the UART as a console, you have to manually enable it.&amp;lt;/strike&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Using the optional NVMe adapter ==&lt;br /&gt;
The optional NVMe adapter allows the use of M.2 cards that support the NVMe standard, (but not SATA standard). The optional NVMe M.2 adapter supports '''M''' &amp;amp; '''M'''+'''B''' keyed devices, in both 2242 &amp;amp; 2280 physical sizes, the most common ones available. In addition, 2230 &amp;amp; 2260 are also supported, though NVMe devices that use those sizes are rare.&lt;br /&gt;
&lt;br /&gt;
Once you have fitted and tested your NVMe drive, please add a note to this page [[Pinebook_Pro_Hardware_Accessory_Compatibility]] to help build a list of tried and tested devices.&lt;br /&gt;
&lt;br /&gt;
=== Installing the adapter ===&lt;br /&gt;
The V2.1-2019-0809 SSD adapter that shipped with the initial Pinebook Pro batches had significant issues. A repair kit will be shipped to address those issues.&lt;br /&gt;
(If necessary, it can be modified to work. There is [https://forum.pine64.org/showthread.php?tid=8322&amp;amp;pid=52700#pid52700 an unofficial tutorial on the forums] describing these modifications.)&lt;br /&gt;
&lt;br /&gt;
The updated SSD adapter, labeled V2-2019-1107, takes into account the prior problems with trackpad interference. New orders as of Feb. 22nd, 2020 will be the updated adapter.&lt;br /&gt;
&lt;br /&gt;
This is the link to the PBPro accessories in the store: [[https://pine64.com/?v=0446c16e2e66]]&lt;br /&gt;
&lt;br /&gt;
Actual installation instructions are a work in progress. Unofficial instructions for installing V2-2019-1107 can be found [https://eli.gladman.cc/blog/2020/06/23/pine-book-pro-nvme.html here].&lt;br /&gt;
&lt;br /&gt;
=== Post NVMe install power limiting ===&lt;br /&gt;
Some NVMe SSDs allow reducing the maximum amount of power. Doing so may reduce the speed, but it may be needed in the Pinebook Pro to both improve reliability at lower battery levels. And to reduce power used, to maintain battery life.&lt;br /&gt;
Here are the commands to obtain and change the power settings. The package 'nvme-cli' is required to run these commands. The example shows how to find the available power states, and then sets it to the lowest, non-standby setting, (which is 3.8 watts for the device shown);&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo nvme id-ctrl /dev/nvme0&lt;br /&gt;
NVME Identify Controller:&lt;br /&gt;
...&lt;br /&gt;
ps    0 : mp:9.00W operational enlat:0 exlat:0 rrt:0 rrl:0&lt;br /&gt;
         rwt:0 rwl:0 idle_power:- active_power:-&lt;br /&gt;
ps    1 : mp:4.60W operational enlat:0 exlat:0 rrt:1 rrl:1&lt;br /&gt;
         rwt:1 rwl:1 idle_power:- active_power:-&lt;br /&gt;
ps    2 : mp:3.80W operational enlat:0 exlat:0 rrt:2 rrl:2&lt;br /&gt;
         rwt:2 rwl:2 idle_power:- active_power:-&lt;br /&gt;
ps    3 : mp:0.0450W non-operational enlat:2000 exlat:2000 rrt:3 rrl:3&lt;br /&gt;
         rwt:3 rwl:3 idle_power:- active_power:-&lt;br /&gt;
ps    4 : mp:0.0040W non-operational enlat:6000 exlat:8000 rrt:4 rrl:4&lt;br /&gt;
         rwt:4 rwl:4 idle_power:- active_power:-&lt;br /&gt;
&lt;br /&gt;
$ sudo nvme get-feature /dev/nvme0 -f 2&lt;br /&gt;
get-feature:0x2 (Power Management), Current value:00000000&lt;br /&gt;
$ sudo nvme set-feature /dev/nvme0 -f 2 -v 2 -s&lt;br /&gt;
set-feature:02 (Power Management), value:0x000002&amp;lt;/pre&amp;gt;&lt;br /&gt;
Some NVMe SSDs don't appear to allow saving the setting with &amp;quot;-s&amp;quot; option. In those cases, leave off the &amp;quot;-s&amp;quot; and use a startup script to set the non-default power state at boot.&amp;lt;br&amp;gt;&lt;br /&gt;
If you want to test performance without saving the new power setting semi-permanantly, then leave off the &amp;quot;-s&amp;quot; option.&amp;lt;br/&amp;gt;&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
There is another power saving feature for NVMes, APST, (Autonomous Power State Transitions). This performs the power saving &amp;amp; transitions based on usage. To check if you have a NVMe SSD with this feature;&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo nvme get-feature -f 0x0c -H /dev/nvme0&amp;lt;/pre&amp;gt;&lt;br /&gt;
Information for this feature, (on a Pinebook Pro), is a work in progress.&lt;br /&gt;
&lt;br /&gt;
=== Using as data drive ===&lt;br /&gt;
As long as the kernel in use has both the PCIe and NVMe drivers, you should be able to use a NVMe drive as a data drive. It can automatically mount when booting from either the eMMC or an SD card. This applies to Linux, FreeBSD, and Chromium, using the normal partitioning and file system creation tools. Android requires testing.&lt;br /&gt;
&lt;br /&gt;
=== Using as OS root drive ===&lt;br /&gt;
The SoC does not include the NVMe boot code, so the NVMe is not in the SoC's boot order. However, using the [https://github.com/mrfixit2001/updates_repo/blob/v1.1/pinebook/filesystem/mrfixit_update.sh U-Boot update script] from the mrfixit2001 Debian or [https://pastebin.com/raw/EeK074XB Arglebargle's modified script], and [https://github.com/pcm720/rockchip-u-boot/releases the modified u-boot images] provided by forum user pcm720, you can now add support to boot from an NVMe drive. Binary images are useable with SD, eMMC, and [[Pinebook_Pro_SPI|SPI flash]]. For OS images using the mainline kernel, there are a few variants of U-Boot available that also support NVMe as the OS drive. Though these may require writing the U-Boot to the SPI flash for proper use of the NVMe as the OS drive.&lt;br /&gt;
&lt;br /&gt;
The current boot order, per last testing, for this modified U-Boot is:&lt;br /&gt;
*MicroSD&lt;br /&gt;
*eMMC&lt;br /&gt;
*NVMe&lt;br /&gt;
&lt;br /&gt;
For more information, please refer to [https://forum.pine64.org/showthread.php?tid=8439&amp;amp;pid=53764#pid53764 the forum post.]&lt;br /&gt;
&lt;br /&gt;
It is also possible to initially boot off an eMMC or SD card, then transfer to a root file system on the NVMe. Currently, it is necessary to have the U-Boot code on an eMMC or SD card.  (A forum member [https://forum.pine64.org/showthread.php?tid=8439 posted here] about using a modified version of U-Boot with NVMe drivers, that uses &amp;lt;code&amp;gt;/boot&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;/&amp;lt;/code&amp;gt; off the NVMe drive. So this may change in the future.)&lt;br /&gt;
&lt;br /&gt;
Please see [[Pinebook_Pro#Bootable Storage|Bootable Storage]].&lt;br /&gt;
&lt;br /&gt;
== Caring for the PineBook Pro ==&lt;br /&gt;
=== Bypass Cables ===&lt;br /&gt;
The mainboard features two (disconnected by default) bypass cables that are only to be used with the battery disconnected. The female (10) male (6) ends of the bypass cables can be connected to provide power to the mainboard if you need to run the laptop without a battery. Please refer to this [https://files.pine64.org/doc/PinebookPro/PinebookPro_Engineering_Notice.pdf engineering notice].  &lt;br /&gt;
&lt;br /&gt;
'''Note that despite the bypass cable being a two conductor cable, it is only used as one. Both wires being soldered together on either side is normal!'''&lt;br /&gt;
&lt;br /&gt;
WARNING: Do not connect the bypass cables with the battery connected.  Using the bypass cables with the battery connected can permanently damage the computer.&lt;br /&gt;
&lt;br /&gt;
=== [[Pinebook_Service_Step_by_Step_Guides|Pinebook Service Step-by-Step Guides]] ===&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#FF0000&amp;quot;&amp;gt;Placeholder for Pinebook Pro specific guides&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Under [[Pinebook_Service_Step_by_Step_Guides|'Service Guides for Pinebook']] you can find instructions guides concerning disassembly of:&lt;br /&gt;
&lt;br /&gt;
'''Note: The installation process on Pinebook Pro similar to 14&amp;quot; Pinebook'''&lt;br /&gt;
&lt;br /&gt;
'''Note: The installation process is the reverse order of removal guide'''&lt;br /&gt;
&lt;br /&gt;
* 14″ Pinebook Lithium Battery Pack Removal Guide&lt;br /&gt;
* 14″ Pinebook LCD Panel Screen Removal Guide&lt;br /&gt;
* 14″ Pinebook eMMC Module Removal Guide&lt;br /&gt;
&lt;br /&gt;
== Using the SPI flash device ==&lt;br /&gt;
&lt;br /&gt;
See [[Pinebook_Pro_SPI]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro comes with a 128Mbit, (16MByte), flash device suitable for initial boot target, to store the bootloader. The SoC used on the Pinebook Pro boots from this SPI flash device first, before eMMC or SD card. At present, April 19, 2020, the Pinebook Pros ship without anything programmed in the SPI flash device. So the SoC moves on to the next potential boot device, the eMMC. ARM/ARM64 computers do not have a standardized BIOS, yet.&lt;br /&gt;
&lt;br /&gt;
Here is some information on using the SPI flash device:&lt;br /&gt;
&lt;br /&gt;
* You need the kernel built with SPI flash device support, which will supply a device similar to:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;/dev/mtd0&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* The Linux package below, will need to be available:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;mtd-utils&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
* You can then use this program from the package to write the SPI device:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;code&amp;gt;flashcp &amp;amp;lt;filename&amp;amp;gt; /dev/mtd0&amp;lt;/code&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Even if you need to recover from a defective bootloader written to the SPI flash, you can simply short pin 6 of the SPI flash to GND and boot. This will render the SoC bootrom unable to read from the SPI flash and have it fall back to reading the bootloader from other boot media like the eMMC or Micro SD card.&lt;br /&gt;
&lt;br /&gt;
The procedures described above are a lot less risky than attaching an external SPI flasher and do not require any additional hardware.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
At present, April 19th, 2020, there is no good bootloader image to flash into the SPI flash device. This is expected to change, as there are people working on issue.&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
What cool software works out of the box? [[Pinebook Pro OTB Experience]]&lt;br /&gt;
&lt;br /&gt;
= Software tuning guide =&lt;br /&gt;
Details on how to get the most out of a Pinebook Pro &amp;amp; its RK3399 SoC.&lt;br /&gt;
&lt;br /&gt;
== Customizing the Pinebook Pro's default Manjaro KDE system ==&lt;br /&gt;
=== Watching DRM content (Netflix, etc.) ===&lt;br /&gt;
Most paid online streaming services use Widevine DRM to make their content more difficult to pirate. Widevine is not directly supported on Manjaro KDE, however it is still possible to watch DRM content via the &amp;quot;chromium-docker&amp;quot; package which downloads a 32-bit ARM container and installs Chromium with Widevine inside of that. While not space-efficient, or efficient in general, it's the recommended solution for watching this content on your Pinebook Pro. You can install this package with:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo pacman -Sy chromium-docker&amp;lt;/pre&amp;gt;&lt;br /&gt;
=== Checking GPU capabilities ===&lt;br /&gt;
To see what versions of OpenGL and OpenGL ES are supported by the Pinebook Pro, what driver is in use, and what version of the driver is loaded, install the &amp;quot;mesa-demos&amp;quot; package with:&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo pacman -Sy mesa-demos&amp;lt;/pre&amp;gt;&lt;br /&gt;
And then run:&lt;br /&gt;
&amp;lt;pre&amp;gt;glxinfo | grep OpenGL&amp;lt;/pre&amp;gt;&lt;br /&gt;
This will give detailed information about your graphics card and driver, useful for debugging.&lt;br /&gt;
&lt;br /&gt;
=== Better GPU compatibility and performance ===&lt;br /&gt;
For better graphics performance, you may install the &amp;quot;mesa-git&amp;quot; package, built and supplied in the Manjaro ARM repos. This lets you bring in the latest features, optimizations, and bugfixes for the graphics driver used by the Pinebook Pro. Installation is as simple as:&lt;br /&gt;
&amp;lt;pre&amp;gt;pacman -Sy mesa-git&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then you may reboot to load the newer driver.&lt;br /&gt;
&lt;br /&gt;
With Mesa 20.2 there is no longer much reason to use this over the standard mesa package, and applications may occasionally break with mesa-git.&lt;br /&gt;
&lt;br /&gt;
[https://docs.mesa3d.org/bugs.html Reporting bugs] to the Mesa project will help make sure any problems are quickly fixed.&lt;br /&gt;
&lt;br /&gt;
=== OpenGL 3.3 support ===&lt;br /&gt;
By default, with the current state of the Panfrost GPU driver, the Pinebook Pro supports OpenGL 2.1 and OpenGL ES 3.0. If you want to use OpenGL 3.3, you need to set the system-wide environment variable, open the '''/etc/environment''' file with:&lt;br /&gt;
&amp;lt;pre&amp;gt;kate /etc/environment&amp;lt;/pre&amp;gt;&lt;br /&gt;
And then at the bottom of the file, on a new line, add:&lt;br /&gt;
&amp;lt;pre&amp;gt;PAN_MESA_DEBUG=&amp;quot;gl3&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then save the file, entering your password when prompted, and reboot the system. When you check your GPU capabilities, it should report OpenGL 3.3 and applications that rely on it should function properly. Note that GL 3.3 support is incomplete and some rendering features do not work yet, notably geometry shaders.&lt;br /&gt;
== Customizing the Pinebook Pro's previously-default Debian system ==&lt;br /&gt;
Here are some hints on what you can do to customize the Pinebook Pro's previous factory image (aka [https://github.com/mrfixit2001/debian_desktop mrfixit2001 debian build])&lt;br /&gt;
&lt;br /&gt;
=== Initial user changes, password, name, etc ===&lt;br /&gt;
When you first get your Pinebook Pro, you should consider setting strong passwords and making the default account your own.&lt;br /&gt;
&lt;br /&gt;
* Reboot (this is just to ensure all background processes belong to the user are not running... there are other ways to achieve this but this way is easy)&lt;br /&gt;
* Once the machine reboots press Alt-Ctrl-F1 to bring up a text terminal&lt;br /&gt;
* Login as root (login: root, password: root)&lt;br /&gt;
* Set a strong password for the root user using the following command and it's prompts:&lt;br /&gt;
&amp;lt;pre&amp;gt;# passwd (and follow prompts)&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Rename the rock user to your prefered username (replace myself with whatever you like):&lt;br /&gt;
&amp;lt;pre&amp;gt;# usermod -l myself -d /home/myself -m rock&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Rename the rock group to match your preferred username:&lt;br /&gt;
&amp;lt;pre&amp;gt;# groupmod -n myself rock&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Put your name in the account, (replace &amp;quot;John A Doe&amp;quot; with your name):&lt;br /&gt;
&amp;lt;pre&amp;gt;# chfn -f &amp;quot;John A Doe&amp;quot; myself&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Set a strong password for the normal user:&lt;br /&gt;
&amp;lt;pre&amp;gt;# passwd myself&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Log out of the text terminal:&lt;br /&gt;
&amp;lt;pre&amp;gt;# logout&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Press Alt-Ctrl-F7 to go back to the login screen and then login as the normal user&lt;br /&gt;
* Open text terminal to fix login error: &amp;quot;Configured directory for incoming files does not exist&amp;quot;;&lt;br /&gt;
&amp;lt;pre&amp;gt;$ blueman-services&amp;lt;/pre&amp;gt;&lt;br /&gt;
Select &amp;quot;Transfer&amp;quot; tab and set &amp;quot;Incoming Folder&amp;quot; to myself&lt;br /&gt;
OR&lt;br /&gt;
If adduser is in distro, this is MUCH easier&lt;br /&gt;
sudo adduser $USER ,, fill out requested data&lt;br /&gt;
Then,, sudo adduser $USER $GROUP,,, 1 group at a time&lt;br /&gt;
To see which groups to add,,, id $USER,  id rock&lt;br /&gt;
&lt;br /&gt;
=== Changing the default hostname ===&lt;br /&gt;
Debian 9 has a command to allow you to change the hostname. You can see the current settings using;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;gt; sudo hostnamectl&lt;br /&gt;
   Static hostname: Debian-Desktop&lt;br /&gt;
         Icon name: computer&lt;br /&gt;
        Machine ID: dccbddccbdccbdccbdccbdccbdccbccb&lt;br /&gt;
           Boot ID: ea99ea99ea99ea99ea99ea99ea99ea99&lt;br /&gt;
  Operating System: Debian GNU/Linux 9 (stretch)&lt;br /&gt;
            Kernel: Linux 4.4.210&lt;br /&gt;
      Architecture: arm64&amp;lt;/pre&amp;gt;&lt;br /&gt;
To change, use this, (with &amp;quot;My_Hostname&amp;quot; used as the example);&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;gt; sudo hostnamectl set-hostname My_Hostname&amp;lt;/pre&amp;gt;&lt;br /&gt;
Whence done, you can re-verify using the first example.&lt;br /&gt;
&lt;br /&gt;
Then you should backup and edit your &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; entry's name;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;gt; sudo cp -p /etc/hosts /etc/hosts.`date +%Y%m%d`&lt;br /&gt;
&amp;gt; sudo vi /etc/hosts&lt;br /&gt;
127.0.0.1	localhost&lt;br /&gt;
127.0.0.1	My_Hostname&lt;br /&gt;
::1		localhost ip6-localhost ip6-loopback&lt;br /&gt;
fe00::0		ip6-localnet&lt;br /&gt;
ff00::0		ip6-mcastprefix&lt;br /&gt;
ff02::1		ip6-allnodes&lt;br /&gt;
ff02::2		ip6-allrouters&lt;br /&gt;
127.0.1.1       linaro-alip&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Disable Chromium browser's prompt for passphrase &amp;amp; password storage ===&lt;br /&gt;
&lt;br /&gt;
Perform the following steps:&lt;br /&gt;
&lt;br /&gt;
* On the tool bar, hover over the Chromium icon&lt;br /&gt;
* Using the right mouse button, select '''Properties'''&lt;br /&gt;
* In the '''Command:''' line section, add &amp;lt;code&amp;gt;--password-store=basic&amp;lt;/code&amp;gt; before the &amp;lt;code&amp;gt;%U&amp;lt;/code&amp;gt;&lt;br /&gt;
* Use the '''x Close''' button to save the change&lt;br /&gt;
This will of course, use basic password storage, meaning any saved passwords are not encrypted. Perfectly fine if you never use password storage.&lt;br /&gt;
&lt;br /&gt;
=== Changing the boot splash picture ===&lt;br /&gt;
&lt;br /&gt;
The default boot splash picture can be replaced using the following instructions:&lt;br /&gt;
&lt;br /&gt;
* Install '''ImageMagick''' which will do the conversion&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo apt-get install imagemagick&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Create a 1920 x 1080 picture. For the best results, use a PNG image (It supports lossless compression).&lt;br /&gt;
* From the directory in which your new image is stored run the following commands&lt;br /&gt;
* Convert your image to the bootsplash raw format using imagemagick convert.&lt;br /&gt;
&amp;lt;pre&amp;gt;$ convert yoursplashimage.png -separate +channel -swap 0,2 -combine -colorspace sRGB RGBO:splash.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Create a backup copy of your current splash screen&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo cp /usr/share/backgrounds/splash.fb /usr/share/backgrounds/splash_original.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Copy your new splash screen into place&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo cp splash.fb /usr/share/backgrounds/splash.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Set the correct permissions on the splash.fb file&lt;br /&gt;
&amp;lt;pre&amp;gt;$ sudo chmod 644 /usr/share/backgrounds/splash.fb&amp;lt;/pre&amp;gt;&lt;br /&gt;
* If you do not want to see kernel console text messages, make sure you don't have '''Plymouth''' installed&lt;br /&gt;
&lt;br /&gt;
=== Watching Amazon Prime videos with Chromium ===&lt;br /&gt;
When you create a new user, it will be necessary to launch the Chromium browswer with a specific user agent like below;&lt;br /&gt;
&amp;lt;pre&amp;gt;chromium-browser --user-agent=&amp;quot;Mozilla/5.0 (X11; CrOS armv7l 6946.63.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
There may be more tweaks needed.&lt;br /&gt;
&lt;br /&gt;
=== Enabling text boot time messages ===&lt;br /&gt;
&lt;br /&gt;
By default, most Linux distros have a boot screen with a picture. To see all the boot time messages, use one of the following;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;Default Debian&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
* Backup and edit the U-Boot configuration file:&lt;br /&gt;
&amp;lt;pre&amp;gt;cp -p /etc/default/u-boot /etc/default/u-boot.`date +%Y%m%d`&lt;br /&gt;
chmod a-w /etc/default/u-boot.`date +%Y%m%d`&lt;br /&gt;
vi /etc/default/u-boot&amp;lt;/pre&amp;gt;&lt;br /&gt;
Remove the '''quiet''' and '''splash''' parameters. Leave everything else alone.&lt;br /&gt;
* Update the U-Boot configuration:&lt;br /&gt;
&amp;lt;pre&amp;gt;u-boot-update&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Test and verify you get what you think you should be seeing.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;Manjaro&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&lt;br /&gt;
* Backup and edit the U-Boot configuration file:&lt;br /&gt;
&amp;lt;pre&amp;gt;cp -p /boot/extlinux/extlinux.conf /boot/extlinux/extlinux.conf.`date +%Y%m%d`&lt;br /&gt;
chmod a-w /boot/extlinux/extlinux.conf.`date +%Y%m%d`&lt;br /&gt;
vi /boot/extlinux/extlinux.conf&amp;lt;/pre&amp;gt;&lt;br /&gt;
Change '''console=ttyS2,1500000''' to '''console=tty1'''&amp;lt;br&amp;gt; &lt;br /&gt;
Remove the '''bootsplash.bootfile''' option and it's parameter.&amp;lt;br&amp;gt;&lt;br /&gt;
You can add verbose logging by appending '''ignore_loglevel''' to the line where boot splash was.&amp;lt;br&amp;gt;&lt;br /&gt;
Leave everything else alone.&amp;lt;br&amp;gt;&lt;br /&gt;
* Test and verify you get what you think you should be seeing.&lt;br /&gt;
&lt;br /&gt;
== Improving readability ==&lt;br /&gt;
&lt;br /&gt;
Some people find that a 14&amp;quot; LCD screen with 1080p, (1920 x 1080), has text and icons a bit too small. There are things you can do to make the screen easier to use and read.&amp;lt;br&amp;gt;&lt;br /&gt;
* Increase the font size&lt;br /&gt;
* Use a font with more pronounced features&lt;br /&gt;
* Increase the various window manager sizes (e.g. increase the height of the tool bar)&lt;br /&gt;
* Change the color scheme to be easier on the eyes. Higher contrast can help usability.&lt;br /&gt;
* Change the window manager's decorations (e.g. use larger icons)&lt;br /&gt;
* Use a workspace manager, with one application per workspace&lt;br /&gt;
* When at home or office, use an external monitor&lt;br /&gt;
* Change the X-Windows DPI&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
However, do not change the resolution of the LCD screen, otherwise you may end up with a blank / black screen. If that happens, see this troubleshooting section for the fix:&amp;lt;br&amp;gt;&lt;br /&gt;
[[Pinebook_Pro#After_changing_builtin_LCD_resolution.2C_blank_screen|Blank screen after changing builtin LCD resolution]]&lt;br /&gt;
&lt;br /&gt;
== Chromium tweaks ==&lt;br /&gt;
&lt;br /&gt;
=== Flags ===&lt;br /&gt;
&lt;br /&gt;
From the [https://github.com/mrfixit2001/updates_repo/blob/v1.8/pinebook/filesystem/default official Debian image]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
--disable-low-res-tiling \&lt;br /&gt;
--num-raster-threads=6 \&lt;br /&gt;
--profiler-timing=0 \&lt;br /&gt;
--disable-composited-antialiasing \&lt;br /&gt;
--test-type \&lt;br /&gt;
--show-component-extension-options \&lt;br /&gt;
--ignore-gpu-blacklist \&lt;br /&gt;
--use-gl=egl \&lt;br /&gt;
--ppapi-flash-path=/usr/lib/chromium-browser/pepper/libpepflashplayer.so \&lt;br /&gt;
--ppapi-flash-version=32.0.0.255 \&lt;br /&gt;
--enable-pinch \&lt;br /&gt;
--flag-switches-begin \&lt;br /&gt;
--enable-gpu-rasterization \&lt;br /&gt;
--enable-oop-rasterization \&lt;br /&gt;
--flag-switches-end&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that in some cases, this may also decrease performance substantially, as observed when using these flags on the Manjaro KDE desktop. Feel free to experiment to find what is smoothest for you personally.&lt;br /&gt;
&lt;br /&gt;
== gVim has performance issue ==&lt;br /&gt;
It appears that using GTK3 can cause very slow scrolling, while Vim in a terminal window works fine.&amp;lt;br/&amp;gt;&lt;br /&gt;
Simply revert back to using GTK2, (how to do so is somewhat Linux distro-specific).&lt;br /&gt;
&lt;br /&gt;
Another solution may be to run gVim with &lt;br /&gt;
&lt;br /&gt;
 GDK_RENDERING=image&lt;br /&gt;
&lt;br /&gt;
environment variable set. It seems that this improves the performance by reverting back to software-only rendering.&lt;br /&gt;
&lt;br /&gt;
== Kernel options ==&lt;br /&gt;
Here are some Pinebook Pro &amp;amp; its RK3399 SoC Linux specific options. If kernel version, (or version range specific), it should list that information in the description.&lt;br /&gt;
&lt;br /&gt;
To see if a specific feature is enabled in the current kernel, you can use something like this;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ zgrep -i rockchip_pcie /proc/config.gz&lt;br /&gt;
# CONFIG_ROCKCHIP_PCIE_DMA_OBJ is not set&lt;br /&gt;
CONFIG_PHY_ROCKCHIP_PCIE=m&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If it's listed as &amp;lt;code&amp;gt;=m&amp;lt;/code&amp;gt;, then it's a module. You can see if the module is loaded with;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lsmod | grep -i rockchip_pcie&lt;br /&gt;
phy_rockchip_pcie      16384  0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note modules are not loaded until needed. Thus, we sometimes check the kernel configuration instead to see if a feature is configured first, then see if it's a module.&lt;br /&gt;
&lt;br /&gt;
=== Hardware video decoding ===&lt;br /&gt;
Here is a method to check for hardware video decoding by the VPU. There are special Linux kernel modules that perform this function.&amp;lt;br&amp;gt;&lt;br /&gt;
Older systems, such as the previously-default Debian desktop, use the Rockchip-supplied kernel module &amp;lt;code&amp;gt;rk-vcodec&amp;lt;/code&amp;gt;. To check, something like this can be used:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ lsmod | grep rk-vcodec&lt;br /&gt;
    or&lt;br /&gt;
$ zgrep RK_VCODEC /proc/config.gz&lt;br /&gt;
CONFIG_RK_VCODEC=y&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note that in the above example, the Rockchip video CODEC is not built as a module, but included into the kernel. Thus, it does not show up in the list modules check.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Newer systems may use a different option as in the configuration below:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ zgrep HANTRO /proc/config.gz&lt;br /&gt;
CONFIG_VIDEO_HANTRO=m&lt;br /&gt;
CONFIG_VIDEO_HANTRO_ROCKCHIP=y&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;amp;nbsp;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting guide =&lt;br /&gt;
&lt;br /&gt;
The important thing is not to panic and if something goes wrong, to stop and consider carefully how to undo something, or, to redo it. This particularly applies when flashing a new operating system or new firmware to the touchpad.&lt;br /&gt;
&lt;br /&gt;
[[Pinebook_Pro_Troubleshooting_Guide]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Hardware Compatibility =&lt;br /&gt;
Please contribute to the [[Pinebook Pro Hardware Accessory Compatibility|hardware compatibility page]], which lists the status of hardware tested with the Pinebook Pro.  Available hardware categories include the following:&lt;br /&gt;
&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#NVMe SSD drives|NVMe SSD drives]]&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#USB hardware|USB hardware]]&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#USB C alternate mode DP|USB-C alternate mode DP]]&lt;br /&gt;
* [[Pinebook Pro Hardware Accessory Compatibility#Other hardware|Other hardware]]&lt;br /&gt;
&lt;br /&gt;
Please note that many users have reported issues with NVMe SSD drives, including random Linux lockups and crashes.  Some of these issues are related to the [https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=712fa1777207 RK3399's errata] that disables Gen2 (5&amp;amp;nbsp;GT/s) speed for the PCI Express link used by the NVMe SSD, reducing it down to Gen1 speed (2.5&amp;amp;nbsp;GT/s).  However, as of December 17, 2020, Linux distributions that use mainline Linux kernel still configure the PCI Express link to run at Gen2 speed, which requires [https://forum.pine64.org/showthread.php?tid=11683 manual reconfiguration] to Gen1 speed in case system instability is experienced.  See also this [https://patchwork.kernel.org/project/linux-rockchip/patch/20200423150510.6216-1-pgwipeout@gmail.com/ related discussion].&lt;br /&gt;
&lt;br /&gt;
= Technical Reference =&lt;br /&gt;
== Disassembly and Reassembly  == &lt;br /&gt;
[[File:Standoffs.png|400px|thumb|right|Pinebook Screw stand-offs correct placement and location]]&lt;br /&gt;
&lt;br /&gt;
There are a few '''mandatory''' precautions to be taken:&lt;br /&gt;
&lt;br /&gt;
* Do not open the laptop by lifting the lid while the Pinebook Pro bottom cover is removed - this can cause structural damage to the hinges and/or other plastic components of the chassis such as the IO port cut-outs.&lt;br /&gt;
* When removing the back cover plate, use care if sliding fingertips between back cover plate and palm rest assembly. The back cover plate edges are sharp.&lt;br /&gt;
* When removing the back cover plate, use care to avoid damaging the speakers. They are stuck to the back cover with double-sided tape, and the thin wires are very delicate.&lt;br /&gt;
&lt;br /&gt;
When disassembling the laptop make sure that it is powered off and folded closed. To remove the bottom cover of the Pinebook Pro, first remove the ten (10) Phillips head screws that hold the bottom section of the laptop in place. Remove the cover from the back where the hinges are situated by lifting it up and away from the rest of the chassis.&lt;br /&gt;
&lt;br /&gt;
During reassembly, make sure that the back-screw standoffs are in place and seated correctly. To reassemble the Pinebook Pro, slide the bottom section into place so it meets the front lip of the keyboard section. Secure the front section (where the trackpad is located) in place using the short screws in the front left and right corners. Then proceed to pop in the bottom panel into place. Secure the bottom section (where hinges are located) by screwing in the left and right corners. Then screw in the remaining screws and run your finger though the rim on the chassis to make sure its fitted correctly. Note that the front uses the remaining 2 short screws.&lt;br /&gt;
&lt;br /&gt;
The screws are small and should only be finger tight. Too much force will strip the threads. If after installing screws the back cover plate has not seated properly on one side, open the display and hold the base on either side of the keyboard and gently flex the base with both hands in opposing directions. Once the side pops further in, then recheck the screws on that side. If it does not pop back in, just let it be.&lt;br /&gt;
&lt;br /&gt;
A basic 3D model to print replacement standoffs for the back cover screws is [https://www.thingiverse.com/thing:4226648 available on Thingiverse], until the official drawings or 3D models are made available.&lt;br /&gt;
&lt;br /&gt;
== Internal Layout ==&lt;br /&gt;
&lt;br /&gt;
=== Main chips ===&lt;br /&gt;
* RK3399 system-on-chip (1)&lt;br /&gt;
* LPDDR4 SDRAM (21)&lt;br /&gt;
* SPI NOR flash memory (29)&lt;br /&gt;
* eMMC flash memory (26)&lt;br /&gt;
* WiFi/BT module (27)&lt;br /&gt;
&lt;br /&gt;
=== Mainboard Switches and Buttons ===&lt;br /&gt;
There are two switches on the main board: disabling the eMMC (24), and enabling UART (9) via headphone jack. &lt;br /&gt;
&lt;br /&gt;
The Reset and Recovery buttons (28): the reset button performs an immediate reset of the laptop. The Recovery button is used to place the device in maskrom mode; this mode allows flashing eMMC using Rockchip tools (e.g. rkflashtools). &lt;br /&gt;
&lt;br /&gt;
[[File:PBPL_S.jpg]]&lt;br /&gt;
&lt;br /&gt;
=== Key Internal Parts ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+ Numbered parts classification and description&lt;br /&gt;
! Number&lt;br /&gt;
! Type&lt;br /&gt;
! Descriptor&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 1&lt;br /&gt;
| Component || RK3399 System-On-Chip&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 2&lt;br /&gt;
| Socket || PCIe 4X socket for optional NVMe adapter&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 3&lt;br /&gt;
| Socket || Speakers socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 4&lt;br /&gt;
| Socket || Trackpad socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 5&lt;br /&gt;
| Component || Left speaker &lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 6&lt;br /&gt;
| Connector || Power bridge connector &lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 7&lt;br /&gt;
| Socket || Keyboard Socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 8&lt;br /&gt;
| Component || Optional NVMe SSD adapter&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 9&lt;br /&gt;
| Switch || UART/Audio switch - outputs UART via headphone jack&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 10&lt;br /&gt;
| Socket || Power bridge socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 11&lt;br /&gt;
| Socket || Battery socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 12&lt;br /&gt;
| Component || Trackpad&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 13&lt;br /&gt;
| Component || Battery&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 14&lt;br /&gt;
| Component || Right speaker&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 15&lt;br /&gt;
| Socket || MicroSD card slot&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 16&lt;br /&gt;
| Socket || Headphone / UART jack&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 17&lt;br /&gt;
| Socket || USB 2.0 Type A&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 18&lt;br /&gt;
| Socket || Daughterboard-to-mainboard ribbon cable socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 19&lt;br /&gt;
| Cable || Daughterboard-to-mainboard ribbon cable&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 20&lt;br /&gt;
| Component || microphone&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 21&lt;br /&gt;
| Component || LPDDR4 RAM&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 22&lt;br /&gt;
| Socket || Mainboard-to-daughterboard ribbon cable socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 23&lt;br /&gt;
| Socket || Microphone socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 24&lt;br /&gt;
| Switch || Switch to hardware disable eMMC&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 25&lt;br /&gt;
| Antenna || BT/WiFI antenna&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 26&lt;br /&gt;
| Component || eMMC flash memory module &lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 27&lt;br /&gt;
| Component ||BT/WiFi module chip&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 28&lt;br /&gt;
| Buttons || Reset and recovery buttons&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 29&lt;br /&gt;
| Component || SPI flash storage&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 30&lt;br /&gt;
| Socket || eDP LCD socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 31&lt;br /&gt;
| Socket || Power in barrel socket&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 32&lt;br /&gt;
| Socket || USB 3.0 Type A&lt;br /&gt;
|-&lt;br /&gt;
! scope=row | 33&lt;br /&gt;
| Socket || USB 3.0 Type C &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Smallboard detailed picture ===&lt;br /&gt;
&lt;br /&gt;
[[File:Pinebook_pro_smallboard.jpg]]&lt;br /&gt;
&lt;br /&gt;
== Bootable Storage ==&lt;br /&gt;
&lt;br /&gt;
=== Boot sequence details ===&lt;br /&gt;
The RK3399's mask 32KB ROM boot code looks for the next stage of code at byte off-set 32768, (sector 64 if using 512 byte sectors). This is where U-Boot code would reside on any media that is bootable.&amp;lt;br&amp;gt;&lt;br /&gt;
[[RK3399_boot_sequence|RK3399 boot sequence]]&lt;br /&gt;
&lt;br /&gt;
=== Boot devices ===&lt;br /&gt;
&lt;br /&gt;
The Pinebook Pro is capable of booting from eMMC, USB 2.0, USB 3.0, or an SD card. It cannot boot from USB-C.  The boot order of the hard-coded ROM of its RK3399 SoC is: SPI NOR, eMMC, SD, USB OTG. &lt;br /&gt;
&lt;br /&gt;
At this time, the Pinebook Pro ships with a Manjaro + KDE build with [https://www.denx.de/wiki/U-Boot/ uboot] on the eMMC.  Its boot order is: SD, USB, then eMMC.&lt;br /&gt;
&lt;br /&gt;
(An update has been pushed for the older Debian + MATE build that improves compatibility with booting other OSs from an SD card. In order to update, fully charge the battery, establish an internet connection, click the update icon in the toolbar, and then reboot your Pinebook Pro.  Please see [https://forum.pine64.org/showthread.php?tid=7830 this log] for details.)&lt;br /&gt;
&lt;br /&gt;
Please note that PCIe, the interface used for NVMe SSD on the Pinebook Pro, is not bootable on the RK3399 and therefore is not a part of the boot hierarchy. It is possible to run the desired OS from NVMe by pointing extlinux on the eMMC to rootfs on the SSD. This requires uboot, the Kernel image, DTB, and extlinux.conf&lt;br /&gt;
in a /boot partition on the eMMC.&lt;br /&gt;
&lt;br /&gt;
=== eMMC information ===&lt;br /&gt;
The eMMC appears to be hot-pluggable. This can be useful if trying to recover data or a broken install. Best practice is probably to turn the eMMC switch to off position before changing modules.&lt;br /&gt;
&lt;br /&gt;
The eMMC storage will show up as multiple block devices:&lt;br /&gt;
*mmcblk1boot0 - eMMC standard boot0 partition, may be 4MB&lt;br /&gt;
*mmcblk1boot1 - eMMC standard boot1 partition, may be 4MB&lt;br /&gt;
*mmcblk1rpmb - eMMC standard secure data partition, may be 16MB&lt;br /&gt;
*mmcblk1 - This block contains the user areas&lt;br /&gt;
&lt;br /&gt;
Only the last is usable as regular storage device in the Pinebook Pro.&lt;br /&gt;
The device number of &amp;quot;1&amp;quot; shown above may vary, depending on kernel.&lt;br /&gt;
&lt;br /&gt;
If the eMMC module is enabled after boot from an SD card, you can detect this change with the following commands as user &amp;quot;root&amp;quot;;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo fe330000.sdhci &amp;gt;/sys/bus/platform/drivers/sdhci-arasan/unbind&lt;br /&gt;
echo fe330000.sdhci &amp;gt;/sys/bus/platform/drivers/sdhci-arasan/bind&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Case Dimensions and Data ==&lt;br /&gt;
* Dimensions: 329mm x 220mm x 12mm (WxDxH)&lt;br /&gt;
* Weight: 1.26Kg&lt;br /&gt;
* Screws&lt;br /&gt;
** Philips head type screws&lt;br /&gt;
** M2 flat head machine screws (measurements in mm)&lt;br /&gt;
** 4 x Small screws (used along the front edge): Head - 3.44, Thread Diameter - 1.97, Thread Length - 2.1,  Overall length - 3.05&lt;br /&gt;
** 6 x Large screws: Head - 3.44, Thread Diameter - 1.97, Thread Length - 4.41, Overall Length - 5.85&lt;br /&gt;
* Rubber Feet&lt;br /&gt;
** 18mm diameter&lt;br /&gt;
** 3mm height&lt;br /&gt;
** Dome shaped&lt;br /&gt;
&lt;br /&gt;
== SoC and Memory Specification ==&lt;br /&gt;
[[File:Rockchip_RK3399.png|right]]&lt;br /&gt;
* Based on Rockchip RK3399&lt;br /&gt;
&lt;br /&gt;
=== CPU Architecture ===&lt;br /&gt;
* big.LITTLE architecture: Dual Cortex-A72 + Quad Cortex-A53, 64-bit CPU&lt;br /&gt;
** Full implementation of the ARM architecture v8-A instruction set (both AArch64 and AArch32)&lt;br /&gt;
** ARM Neon Advanced SIMD (single instruction, multiple data) support for accelerated media and signal processing computation&lt;br /&gt;
** ARMv8 Cryptography Extensions&lt;br /&gt;
** VFPv4 floating point unit supporting single and double-precision operations&lt;br /&gt;
** Hardware virtualization support&lt;br /&gt;
** TrustZone technology support&lt;br /&gt;
** Full CoreSight debug solution&lt;br /&gt;
** One isolated voltage domain to support DVFS&lt;br /&gt;
* Cortex-A72 (big cluster):&lt;br /&gt;
** [https://developer.arm.com/products/processors/cortex-a/cortex-a72 Dual-core Cortex-A72 up to 2.0GHz CPU]&lt;br /&gt;
** Superscalar, variable-length, out-of-order pipeline&lt;br /&gt;
** L1 cache 48KB Icache and 32KB Dcache for each A72 &lt;br /&gt;
** L2 cache 1024KB for big cluster &lt;br /&gt;
* Cortex-A53 (little cluster):&lt;br /&gt;
** [https://developer.arm.com/products/processors/cortex-a/cortex-a53 Quad-core Cortex-A53 up to 1.5GHz CPU]&lt;br /&gt;
** In-order pipeline with symmetric dual-issue of most instructions &lt;br /&gt;
** L1 cache 32KB Icache and 32KB Dcache for each A53&lt;br /&gt;
** L2 cache 512KB for little cluster&lt;br /&gt;
* Cortex-M0 (control processors):&lt;br /&gt;
** [https://developer.arm.com/ip-products/processors/cortex-m/cortex-m0 Cortex-M0 CPU]&lt;br /&gt;
** Two Cortex-M0 cooperate with the central processors&lt;br /&gt;
** Architecture: Armv6-M&lt;br /&gt;
** Thumb/Thumb2 instruction set&lt;br /&gt;
** 32 bit only&lt;br /&gt;
&lt;br /&gt;
=== GPU Architecture ===&lt;br /&gt;
* [https://developer.arm.com/products/graphics-and-multimedia/mali-gpus/mali-t860-and-mali-t880-gpus ARM Mali-T860MP4 Quad-core GPU]&lt;br /&gt;
* The highest performance GPUs built on Arm Mali’s famous Midgard architecture, the Mali-T860 GPU is designed for complex graphics use cases and provide stunning visuals for UHD content.&lt;br /&gt;
* Frequency 	650MHz &lt;br /&gt;
* Throughput 	1300Mtri/s, 10.4Gpix/s&lt;br /&gt;
* Graphic interface standards:&lt;br /&gt;
** OpenGL® ES 1.1, 1.2, 2.0, 3.0, 3.1, 3.2. (Panfrost has initial support of 3.0 beginning 2020/02/27)&lt;br /&gt;
** Vulkan 1.0, using the Mali binary blob. (Panfrost does not support Vulkan as of 2020/06/24)&lt;br /&gt;
** OpenCL™ 1.1, 1.2&lt;br /&gt;
** DirectX® 11 FL11_1&lt;br /&gt;
** RenderScript™&lt;br /&gt;
&lt;br /&gt;
=== System Memory ===&lt;br /&gt;
* RAM Memory:&lt;br /&gt;
** LPDDR4&lt;br /&gt;
** 800MHz, (limited by RK3399)&lt;br /&gt;
** Dual memory channels on the CPU, each 32 bits wide&lt;br /&gt;
** Quad memory channels on the RAM chip, each 16 bits wide, 2 bonded together for each CPU channel&lt;br /&gt;
** 4GB as a single 366 pin mobile RAM chip&lt;br /&gt;
* Storage Memory: &lt;br /&gt;
** 64GB eMMC module, can be upgraded to an 128GB eMMC module. (The initial PINE64 community build version shipped with a 128GB eMMC.)&lt;br /&gt;
** eMMC version 5.1, HS400, 8 bit on RK3399 side&lt;br /&gt;
** Bootable&lt;br /&gt;
* SPI flash:&lt;br /&gt;
** [[Pinebook Pro SPI]]&lt;br /&gt;
** 128Mbit / 16MByte&lt;br /&gt;
** 1 bit interface&lt;br /&gt;
** Bootable, (first boot device, ahead of eMMC &amp;amp; SD card)&lt;br /&gt;
** U-Boot images can be made to work, but as of 2020/06/24 there is no standardized image available.&lt;br /&gt;
&lt;br /&gt;
=== Video out ===&lt;br /&gt;
* USB-C Alt mode DP&lt;br /&gt;
* Up to 3840x2160 p60, dependant on adapter, (2 lanes verses 4 lanes)&lt;br /&gt;
&lt;br /&gt;
=== Expansion Ports ===&lt;br /&gt;
* MicroSD card:&lt;br /&gt;
** Bootable&lt;br /&gt;
** Supports SD, SDHC and SDXC cards, up to 512GB tested. SDXC standard says 2TB is the maximum.&lt;br /&gt;
** Version SD3.0, (MMC 4.5), up to 50MB/s&lt;br /&gt;
** SD card Application Performance Class 1 (A1), (or better), recommended by some users, for better IOPS&lt;br /&gt;
* USB ports:&lt;br /&gt;
** 1 x USB 2.0 Type-A Host Port, bootable&lt;br /&gt;
** 1 x USB 3.0 Type-A Host Port, 5Gbps, is not bootable&lt;br /&gt;
** 1 x USB 3.0 Type-C OTG Port, 5Gbps, (includes laptop charging function), is not bootable&lt;br /&gt;
** Note that high power USB devices may not work reliably on a PBP. Or they may draw enough power to drain the battery even when the PBP is plugged into A.C. One alternative is externally powered USB devices.&lt;br /&gt;
* Headphone jack switchable to UART console mux circuit&lt;br /&gt;
&lt;br /&gt;
== Additional hardware ==&lt;br /&gt;
Hardware that is not part of the SoC.&lt;br /&gt;
&lt;br /&gt;
=== Battery ===&lt;br /&gt;
* Lithium Polymer Battery (10,000 mAH)&lt;br /&gt;
&lt;br /&gt;
=== Display ===&lt;br /&gt;
* 14.0&amp;quot; 1920x1080 IPS LCD panel&lt;br /&gt;
=== Lid closed magnet ===&lt;br /&gt;
There is a magnet to detect when the laptop lid is closed, so action can be taken like sleep. This meets up with the Hall sensor on the daughter / small board to detect lid closed.&lt;br /&gt;
* The magnet is located on the LCD panel right side, around 1.5 inches up measure from bottom edge.&lt;br /&gt;
&lt;br /&gt;
=== Webcam ===&lt;br /&gt;
* Internal USB attached Webcam&lt;br /&gt;
&lt;br /&gt;
=== Audio ===&lt;br /&gt;
* 3.5mm stereo earphone/microphone plug&lt;br /&gt;
* Built-in microphone&lt;br /&gt;
* Built-in stereo speakers:&lt;br /&gt;
** Oval in design&lt;br /&gt;
** 3 mm high x 20 mm x 30 mm&lt;br /&gt;
&lt;br /&gt;
=== Network ===&lt;br /&gt;
* WiFi:&lt;br /&gt;
** 802.11 b/g/n/ac&lt;br /&gt;
** Dual band: 2.4Ghz &amp;amp; 5Ghz&lt;br /&gt;
** Single antenna&lt;br /&gt;
* Bluetooth 5.0&lt;br /&gt;
&lt;br /&gt;
=== Optional NVMe adapter ===&lt;br /&gt;
* PCIe 2.x, 5GT/s per lane&lt;br /&gt;
* 4 PCIe lanes, can not be bifurcated, (however, can be used with 1 or 2 lane NVMe cards)&lt;br /&gt;
* '''M''' keyed, though '''M'''+'''B''' keyed devices will work too&lt;br /&gt;
* Maximum length for M.2 card is 80mm (M.2 2280). The following sizes will also work: 2230, 2242, 2260&lt;br /&gt;
* Power: 2.5W continuous, 8.25W peak momentary&lt;br /&gt;
* Does not support SATA M.2 cards&lt;br /&gt;
* Does not support USB M.2 cards&lt;br /&gt;
&lt;br /&gt;
== Pinebook Pro Schematics and Certifications ==&lt;br /&gt;
* Pinebook Pro Main Board Schematic And Silkscreen:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/pinebookpro_v2.1_mainboard_schematic.pdf Pinebook Pro Main Board ver 2.1 Schematic]&lt;br /&gt;
** [https://wiki.pine64.org/images/3/30/Pinebookpro-v2.1-top-ref.pdf Pinebook Pro ver 2.1 Top Layer Silkscreen]&lt;br /&gt;
** [https://wiki.pine64.org/images/b/b7/Pinebookpro-v2.1-bottom-ref.pdf Pinebook Pro ver 2.1 Bottom Layer Silkscreen]&lt;br /&gt;
* Pinebook Pro Daughter Board Schematic:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/pinebookpro_v2.1_daughterboard_schematic.pdf Pinebook Pro Daughter Board ver 2.1 Schematic]&lt;br /&gt;
* Optional Pinebook Pro NVMe Adapter Schematic:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/pinebookpro_v2.1_NVMe-adapter_schematic.pdf Pinebook Pro NVMe Adapter Board ver 2.1 Schematic]&lt;br /&gt;
* Serial Console Earphone Jack Pinout:&lt;br /&gt;
** [https://files.pine64.org/doc/pinebook/guide/Pinebook_Earphone_Serial_Console_Developer_Guide.pdf Pinkbook Serial Console Earphone Jack Pinout]&lt;br /&gt;
* Pinebook Pro Case:&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/drawings/Pinebook%20Pro%20Principle%20Views.pdf AutoCAD PDF File ]&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/drawings/Pinebook%20Pro%20Principle%20Views.ai AutoCAD AI File ]&lt;br /&gt;
** [https://files.pine64.org/doc/PinebookPro/drawings/Pinebook%20Pro%20Principle%20Views.dwg AutoCAD DWG File ]&lt;br /&gt;
* Pinebook Pro Certifications:&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Pinebook%20Pro%20FCC%20Certificate-S19071103501001.pdf Pinebook Pro FCC Certificate]&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Pinebook%20Pro%20CE%20RED%20Certificate-S19051404304.pdf Pinebook Pro CE Certificate]&lt;br /&gt;
** [https://files.pine64.org/doc/cert/Pinebook%20Pro%20ROHS%20Compliance%20Certificate.pdf Pinebook Pro RoHS Certificate]&lt;br /&gt;
&lt;br /&gt;
== Datasheets for Components and Peripherals ==&lt;br /&gt;
* Rockchip RK3399 SoC information:&lt;br /&gt;
** [https://www.rock-chips.com/a/en/products/RK33_Series/2016/0419/758.html Rockchip RK3399 SoC Brief]&lt;br /&gt;
** [https://opensource.rock-chips.com/images/d/d7/Rockchip_RK3399_Datasheet_V2.1-20200323.pdf Rockchip RK3399 Datasheet v2.1]&lt;br /&gt;
** [https://opensource.rock-chips.com/images/e/ee/Rockchip_RK3399TRM_V1.4_Part1-20170408.pdf Rockchip RK3399 Technical Reference Manual, part 1]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/rockpro64/RK808%20datasheet%20V0.8.pdf Rockchip RK808 Datasheet v0.8]&lt;br /&gt;
* LPDDR4 SDRAM (366-pin BGA):&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/micron%20SM512M64Z01MD4BNK-053FT%20LPDDR4%20(366Ball).pdf Micron 366 balls Mobile LPDDR4 Datasheet]&lt;br /&gt;
* eMMC information:&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/PINE64_eMMC_Module_20170719.pdf PINE64 eMMC module schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/usb%20emmc%20module%20adapter%20v2.pdf PINE64 USB adapter for eMMC module V2 schematic]&lt;br /&gt;
** [https://files.pine64.org/doc/rock64/USB%20adapter%20for%20eMMC%20module%20PCB.tar PINE64 USB adapter for eMMC module PCB in JPEG]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/SDINADF4-16-128GB-H%20data%20sheet%20v1.13.pdf 64GB/128GB SanDisk eMMC Datasheet]&lt;br /&gt;
* SPI NOR Flash information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pine64/w25q128jv%20spi%20revc%2011162016.pdf WinBond 128Mb SPI Flash Datasheet]&lt;br /&gt;
** [https://wiki.pine64.org/images/b/b9/Ds-00220-gd25q127c-rev1-df2f4.pdf GigaDevice 128Mb SPI Flash Datasheet (updated)]&lt;br /&gt;
* Wireless and Bluetooth information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/AP6256%20datasheet_V1.7_12282018.pdf AMPAK AP6256 11AC Wi-Fi + Bluetooth5 Datasheet]&lt;br /&gt;
* Audio codec:&lt;br /&gt;
** [https://everest-semi.com/pdf/ES8316%20PB.pdf Everest ES8316 Audio Codec Datasheet]&lt;br /&gt;
* LCD panel:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/NV140FHM-N49_Rev.P0_20160804_201710235838.pdf 14&amp;quot; 1920x1080 IPS LCD Panel datasheet]&lt;br /&gt;
* USB-related information:&lt;br /&gt;
** Internal USB 2.0 hub: [https://wiki.pine64.org/images/3/39/GL850G_USB_Hub_1.07.pdf GL850G USB Hub Datasheet]&lt;br /&gt;
** USB Type-C Controller: [https://www.onsemi.com/pub/Collateral/FUSB302-D.PDF ON Semiconductor FUSB302 Datasheet]&lt;br /&gt;
* Touchpad information:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/YX%20HK-9562%20HID%20I2C%20Specification.pdf PineBook Pro Touchpad Specification]&lt;br /&gt;
* Keyboard information:&lt;br /&gt;
** [https://wiki.pine64.org/images/b/b0/SH68F83V2.0.pdf Sinowealth SH68F83 Datasheet]&lt;br /&gt;
** US ANSI: XK-HS002 MB27716023&lt;br /&gt;
* Full HD camera sensor:&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/HK-2145-263.pdf Full HD Camera module specification (in Chinese)]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/PinebookPro/GC2145%20CSP%20DataSheet%20release%20V1.0_20131201.pdf GalaxyCore GC2145 Full HD Camera Sensor Datasheet]&lt;br /&gt;
* Battery-related information:&lt;br /&gt;
** Battery charging IC: [https://www.ti.com/lit/ds/symlink/bq24171.pdf?ts=1607068456825&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FBQ24171 Texas Instruments BQ24171 Datasheet]&lt;br /&gt;
** Battery monitoring IC: [https://cdn.datasheetspdf.com/pdf-down/C/W/2/CW2015-Cellwise.pdf Cellwise CW2015 Datasheet]&lt;br /&gt;
** [https://files.pine64.org/doc/datasheet/pinebook/40110175P%203.8V%2010000mAh规格书-14.pdf 10000mAH Lithium Battery Specification]&lt;br /&gt;
* Power path device:&lt;br /&gt;
** [https://wiki.pine64.org/images/9/99/Sis412dn.pdf N-MOS / MOSFET]&lt;br /&gt;
* NVMe adapter:&lt;br /&gt;
** [https://wiki.pine64.org/images/d/d0/Hirose-FH26W-35S-0.3SHW%2860%29-datasheet.pdf FH26-35S-0.3SHW flat flex connector (compatible, not OEM)]&lt;br /&gt;
&lt;br /&gt;
== Versions ==&lt;br /&gt;
Pinebook Pro v1 and v2 were prototype models that did not make it to the public. The &amp;quot;first batch&amp;quot; (First 100 forum preorders) onward are v2.1. [https://forum.pine64.org/showthread.php?tid=8111] &lt;br /&gt;
&lt;br /&gt;
=Skinning and Case Customization=&lt;br /&gt;
* Template files for creating custom skins. Each includes template layers for art placement, and CUT lines.&lt;br /&gt;
**[https://drive.google.com/open?id=1UKFlC53DO0GJm3Hz1E_669n_HhI45e4n Case Lid Template]&lt;br /&gt;
**[https://drive.google.com/open?id=1Q6bKGarMDhvWz3HdGvhL5qDhyHb546ve Case Bottom Template]&lt;br /&gt;
**[https://drive.google.com/open?id=1ugI74ygNJ3EN5jXks5jKvdpEAoxIzHo4 Case Palmrest Template]&lt;br /&gt;
&lt;br /&gt;
= Other Resources =&lt;br /&gt;
* [https://forum.pine64.org/forumdisplay.php?fid=111 Pinebook Pro Forum]&lt;br /&gt;
* [https://forum.pine64.org/forumdisplay.php?fid=98 ROCKPro64 Forum]&lt;br /&gt;
* [[RockPro64 Guides]]&lt;br /&gt;
* [https://riot.im/app/#/room/#pinebook:matrix.org Matrix Channel] (No login required to read)&lt;br /&gt;
* IRC Server: irc.pine64.org Channel: PineBook&lt;br /&gt;
* [https://discordapp.com/channels/463237927984693259/622348681538043924 Discord Channel]&lt;br /&gt;
* [https://github.com/rockchip-linux Rockchip Linux GitHub Repo]&lt;br /&gt;
* [https://opensource.rock-chips.com/ Rockchip Open Source Wiki]&lt;br /&gt;
* [https://wiki.pine64.org/wiki/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro]&lt;br /&gt;
&lt;br /&gt;
[[Category:PineBook Pro]] [[Category:Rockchip RK3399]]&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=8379</id>
		<title>User:Dieselnutjob/Pinebook Pro/Freepascal and Lazarus IDE on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=8379"/>
		<updated>2020-12-06T16:16:26Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to install Freepascal FPC 3.20 ==&lt;br /&gt;
&lt;br /&gt;
Install binutils&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu binutils&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc from here https://www.freepascal.org/down/aarch64/linux-hungary.html&lt;br /&gt;
&lt;br /&gt;
Unpack and install&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;tar -xf fpc-3.2.0.aarch64-linux.tar&lt;br /&gt;
cd fpc-3.2.0.aarch64-linux&lt;br /&gt;
sudo sh install.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test it:-&lt;br /&gt;
&lt;br /&gt;
Use a test editor to create helloworld.pas&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;Program helloworld;&lt;br /&gt;
begin&lt;br /&gt;
  writeln ('Hello world');&lt;br /&gt;
end.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and run it&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fpc helloworld.pas &lt;br /&gt;
Free Pascal Compiler version 3.2.0 [2020/06/05] for aarch64&lt;br /&gt;
Copyright (c) 1993-2020 by Florian Klaempfl and others&lt;br /&gt;
Target OS: Linux for AArch64&lt;br /&gt;
Compiling helloworld.pas&lt;br /&gt;
Assembling helloworld&lt;br /&gt;
Linking helloworld&lt;br /&gt;
4 lines compiled, 0.5 sec&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./helloworld &lt;br /&gt;
Hello world&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to compile Lazarus ==&lt;br /&gt;
&lt;br /&gt;
Install necessary Manjaro packages&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu make subversion qt5pas&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download Lazarus source&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~&lt;br /&gt;
mkdir fpc&lt;br /&gt;
cd fpc&lt;br /&gt;
svn co https://svn.freepascal.org/svn/lazarus/trunk lazarus&lt;br /&gt;
cd lazarus&lt;br /&gt;
make LCL_PLATFORM=qt5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc-3.2.0.source.tar.gz from https://www.freepascal.org/down/source/sources.html and unpack the fpc src in some convenient folder (I used ~/fpc/fpc-3.2.0)&lt;br /&gt;
&lt;br /&gt;
Run it &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~/fpc/lazarus&lt;br /&gt;
./startlazarus&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Add Lazarus to your KDE start menu ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;touch ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit the file&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;kate ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Paste in this code&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;[Desktop Entry]&lt;br /&gt;
Categories=Development;&lt;br /&gt;
Comment=IDE&lt;br /&gt;
Exec=~/fpc/lazarus/startlazarus %f&lt;br /&gt;
GenericName=IDE&lt;br /&gt;
Icon=lazarus-icon&lt;br /&gt;
InitialPreference=9&lt;br /&gt;
MimeType=text/plain;&lt;br /&gt;
Name=Lazarus&lt;br /&gt;
Path=&lt;br /&gt;
StartupNotify=true&lt;br /&gt;
Terminal=false&lt;br /&gt;
TerminalOptions=&lt;br /&gt;
Type=Application&lt;br /&gt;
X-DBUS-ServiceName=&lt;br /&gt;
X-DBUS-StartupType=&lt;br /&gt;
X-KDE-HasTempFileOption=true&lt;br /&gt;
X-KDE-SubstituteUID=false&lt;br /&gt;
X-KDE-Username=&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save the file&lt;br /&gt;
&lt;br /&gt;
Create a 48x48 xpm format icon and save it to /usr/share/pixmaps/lazarus-icon.xpm or you can download mine from http://pscan.uk/images/lazarus-icon.xpm&lt;br /&gt;
&lt;br /&gt;
Original source of information https://forum.manjaro.org/t/how-to-install-fpc-and-lazarus-on-pinebook-pro-arm-64-bit/152872&lt;br /&gt;
&lt;br /&gt;
Mirror of this article https://wiki.freepascal.org/Install_on_aarch64_Arch_or_Manjaro&lt;br /&gt;
&lt;br /&gt;
[[Category:PineBook Pro]]&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=7453</id>
		<title>User:Dieselnutjob/Pinebook Pro/Freepascal and Lazarus IDE on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=7453"/>
		<updated>2020-10-07T23:30:26Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Add Lazarus to your KDE start menu */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to install Freepascal FPC 3.20 ==&lt;br /&gt;
&lt;br /&gt;
Install binutils&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu binutils&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc from here https://www.freepascal.org/down/aarch64/linux-hungary.html&lt;br /&gt;
&lt;br /&gt;
Unpack and install&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;tar -xf fpc-3.2.0.aarch64-linux.tar&lt;br /&gt;
cd fpc-3.2.0.aarch64-linux&lt;br /&gt;
sudo sh install.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test it:-&lt;br /&gt;
&lt;br /&gt;
Use a test editor to create helloworld.pas&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;Program helloworld;&lt;br /&gt;
begin&lt;br /&gt;
  writeln ('Hello world');&lt;br /&gt;
end.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and run it&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fpc helloworld.pas &lt;br /&gt;
Free Pascal Compiler version 3.2.0 [2020/06/05] for aarch64&lt;br /&gt;
Copyright (c) 1993-2020 by Florian Klaempfl and others&lt;br /&gt;
Target OS: Linux for AArch64&lt;br /&gt;
Compiling helloworld.pas&lt;br /&gt;
Assembling helloworld&lt;br /&gt;
Linking helloworld&lt;br /&gt;
4 lines compiled, 0.5 sec&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./helloworld &lt;br /&gt;
Hello world&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to compile Lazarus ==&lt;br /&gt;
&lt;br /&gt;
Install necessary Manjaro packages&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu make subversion qt5pas&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download Lazarus source&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~&lt;br /&gt;
mkdir fpc&lt;br /&gt;
cd fpc&lt;br /&gt;
svn co https://svn.freepascal.org/svn/lazarus/trunk lazarus&lt;br /&gt;
cd lazarus&lt;br /&gt;
make LCL_PLATFORM=qt5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc-3.2.0.source.tar.gz from https://www.freepascal.org/down/source/sources.html and unpack the fpc src in some convenient folder (I used ~/fpc/fpc-3.2.0)&lt;br /&gt;
&lt;br /&gt;
Run it &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~/fpc/lazarus&lt;br /&gt;
./startlazarus&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Add Lazarus to your KDE start menu ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;touch ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit the file&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;kate ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Paste in this code&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;[Desktop Entry]&lt;br /&gt;
Categories=Development;&lt;br /&gt;
Comment=IDE&lt;br /&gt;
Exec=~/fpc/lazarus/startlazarus %f&lt;br /&gt;
GenericName=IDE&lt;br /&gt;
Icon=lazarus-icon&lt;br /&gt;
InitialPreference=9&lt;br /&gt;
MimeType=text/plain;&lt;br /&gt;
Name=Lazarus&lt;br /&gt;
Path=&lt;br /&gt;
StartupNotify=true&lt;br /&gt;
Terminal=false&lt;br /&gt;
TerminalOptions=&lt;br /&gt;
Type=Application&lt;br /&gt;
X-DBUS-ServiceName=&lt;br /&gt;
X-DBUS-StartupType=&lt;br /&gt;
X-KDE-HasTempFileOption=true&lt;br /&gt;
X-KDE-SubstituteUID=false&lt;br /&gt;
X-KDE-Username=&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save the file&lt;br /&gt;
&lt;br /&gt;
Create a 48x48 xpm format icon and save it to /usr/share/pixmaps/lazarus-icon.xpm or you can download mine from http://pscan.uk/images/lazarus-icon.xpm&lt;br /&gt;
&lt;br /&gt;
Original source of information https://forum.manjaro.org/t/how-to-install-fpc-and-lazarus-on-pinebook-pro-arm-64-bit/152872&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=7418</id>
		<title>User:Dieselnutjob/Pinebook Pro/Freepascal and Lazarus IDE on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=7418"/>
		<updated>2020-10-06T08:21:39Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: /* Add Lazarus to your KDE start menu */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to install Freepascal FPC 3.20 ==&lt;br /&gt;
&lt;br /&gt;
Install binutils&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu binutils&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc from here https://www.freepascal.org/down/aarch64/linux-hungary.html&lt;br /&gt;
&lt;br /&gt;
Unpack and install&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;tar -xf fpc-3.2.0.aarch64-linux.tar&lt;br /&gt;
cd fpc-3.2.0.aarch64-linux&lt;br /&gt;
sudo sh install.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test it:-&lt;br /&gt;
&lt;br /&gt;
Use a test editor to create helloworld.pas&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;Program helloworld;&lt;br /&gt;
begin&lt;br /&gt;
  writeln ('Hello world');&lt;br /&gt;
end.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and run it&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fpc helloworld.pas &lt;br /&gt;
Free Pascal Compiler version 3.2.0 [2020/06/05] for aarch64&lt;br /&gt;
Copyright (c) 1993-2020 by Florian Klaempfl and others&lt;br /&gt;
Target OS: Linux for AArch64&lt;br /&gt;
Compiling helloworld.pas&lt;br /&gt;
Assembling helloworld&lt;br /&gt;
Linking helloworld&lt;br /&gt;
4 lines compiled, 0.5 sec&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./helloworld &lt;br /&gt;
Hello world&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to compile Lazarus ==&lt;br /&gt;
&lt;br /&gt;
Install necessary Manjaro packages&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu make subversion qt5pas&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download Lazarus source&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~&lt;br /&gt;
mkdir fpc&lt;br /&gt;
cd fpc&lt;br /&gt;
svn co https://svn.freepascal.org/svn/lazarus/trunk lazarus&lt;br /&gt;
cd lazarus&lt;br /&gt;
make LCL_PLATFORM=qt5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc-3.2.0.source.tar.gz from https://www.freepascal.org/down/source/sources.html and unpack the fpc src in some convenient folder (I used ~/fpc/fpc-3.2.0)&lt;br /&gt;
&lt;br /&gt;
Run it &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~/fpc/lazarus&lt;br /&gt;
./startlazarus&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Add Lazarus to your KDE start menu ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;touch ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit the file&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;kate ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Paste in this code&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;[Desktop Entry]&lt;br /&gt;
Categories=Development;&lt;br /&gt;
Comment=IDE&lt;br /&gt;
Exec=~/fpc/lazarus/startlazarus %f&lt;br /&gt;
GenericName=IDE&lt;br /&gt;
Icon=lazarus-icon&lt;br /&gt;
InitialPreference=9&lt;br /&gt;
MimeType=text/plain;&lt;br /&gt;
Name=Lazarus&lt;br /&gt;
Path=&lt;br /&gt;
StartupNotify=true&lt;br /&gt;
Terminal=false&lt;br /&gt;
TerminalOptions=&lt;br /&gt;
Type=Application&lt;br /&gt;
X-DBUS-ServiceName=&lt;br /&gt;
X-DBUS-StartupType=&lt;br /&gt;
X-KDE-HasTempFileOption=true&lt;br /&gt;
X-KDE-SubstituteUID=false&lt;br /&gt;
X-KDE-Username=&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save the file&lt;br /&gt;
&lt;br /&gt;
Create a 48x48 xpm format icon and save it to /usr/share/pixmaps/lazarus-icon.xpm&lt;br /&gt;
&lt;br /&gt;
Original source of information https://forum.manjaro.org/t/how-to-install-fpc-and-lazarus-on-pinebook-pro-arm-64-bit/152872&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6390</id>
		<title>User:Dieselnutjob/Pinebook Pro/Freepascal and Lazarus IDE on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6390"/>
		<updated>2020-08-02T12:47:31Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to install Freepascal FPC 3.20 ==&lt;br /&gt;
&lt;br /&gt;
Install binutils&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu binutils&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc from here https://www.freepascal.org/down/aarch64/linux-hungary.html&lt;br /&gt;
&lt;br /&gt;
Unpack and install&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;tar -xf fpc-3.2.0.aarch64-linux.tar&lt;br /&gt;
cd fpc-3.2.0.aarch64-linux&lt;br /&gt;
sudo sh install.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test it:-&lt;br /&gt;
&lt;br /&gt;
Use a test editor to create helloworld.pas&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;Program helloworld;&lt;br /&gt;
begin&lt;br /&gt;
  writeln ('Hello world');&lt;br /&gt;
end.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and run it&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fpc helloworld.pas &lt;br /&gt;
Free Pascal Compiler version 3.2.0 [2020/06/05] for aarch64&lt;br /&gt;
Copyright (c) 1993-2020 by Florian Klaempfl and others&lt;br /&gt;
Target OS: Linux for AArch64&lt;br /&gt;
Compiling helloworld.pas&lt;br /&gt;
Assembling helloworld&lt;br /&gt;
Linking helloworld&lt;br /&gt;
4 lines compiled, 0.5 sec&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./helloworld &lt;br /&gt;
Hello world&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to compile Lazarus ==&lt;br /&gt;
&lt;br /&gt;
Install necessary Manjaro packages&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu make subversion qt5pas&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download Lazarus source&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~&lt;br /&gt;
mkdir fpc&lt;br /&gt;
cd fpc&lt;br /&gt;
svn co https://svn.freepascal.org/svn/lazarus/trunk lazarus&lt;br /&gt;
cd lazarus&lt;br /&gt;
make LCL_PLATFORM=qt5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc-3.2.0.source.tar.gz from https://www.freepascal.org/down/source/sources.html and unpack the fpc src in some convenient folder (I used ~/fpc/fpc-3.2.0)&lt;br /&gt;
&lt;br /&gt;
Run it &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~/fpc/lazarus&lt;br /&gt;
./startlazarus&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Add Lazarus to your KDE start menu ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;touch ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit the file&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;kate ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Paste in this code&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;[Desktop Entry]&lt;br /&gt;
Categories=Development;&lt;br /&gt;
Comment=IDE&lt;br /&gt;
Exec=~/fpc/lazarus/startlazarus %f&lt;br /&gt;
GenericName=IDE&lt;br /&gt;
Icon=text-editor&lt;br /&gt;
InitialPreference=9&lt;br /&gt;
MimeType=text/plain;&lt;br /&gt;
Name=Lazarus&lt;br /&gt;
Path=&lt;br /&gt;
StartupNotify=true&lt;br /&gt;
Terminal=false&lt;br /&gt;
TerminalOptions=&lt;br /&gt;
Type=Application&lt;br /&gt;
X-DBUS-ServiceName=&lt;br /&gt;
X-DBUS-StartupType=&lt;br /&gt;
X-KDE-HasTempFileOption=true&lt;br /&gt;
X-KDE-SubstituteUID=false&lt;br /&gt;
X-KDE-Username=&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save the file&lt;br /&gt;
&lt;br /&gt;
Original source of information https://forum.manjaro.org/t/how-to-install-fpc-and-lazarus-on-pinebook-pro-arm-64-bit/152872&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6389</id>
		<title>User:Dieselnutjob/Pinebook Pro/Freepascal and Lazarus IDE on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6389"/>
		<updated>2020-08-02T12:15:17Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to install Freepascal FPC 3.20 ==&lt;br /&gt;
&lt;br /&gt;
Install binutils&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu binutils&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc from here https://www.freepascal.org/down/aarch64/linux-hungary.html&lt;br /&gt;
&lt;br /&gt;
Unpack and install&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;tar -xf fpc-3.2.0.aarch64-linux.tar&lt;br /&gt;
cd fpc-3.2.0.aarch64-linux&lt;br /&gt;
sudo sh install.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test it:-&lt;br /&gt;
&lt;br /&gt;
Use a test editor to create helloworld.pas&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;Program helloworld;&lt;br /&gt;
begin&lt;br /&gt;
  writeln ('Hello world');&lt;br /&gt;
end.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and run it&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fpc helloworld.pas &lt;br /&gt;
Free Pascal Compiler version 3.2.0 [2020/06/05] for aarch64&lt;br /&gt;
Copyright (c) 1993-2020 by Florian Klaempfl and others&lt;br /&gt;
Target OS: Linux for AArch64&lt;br /&gt;
Compiling helloworld.pas&lt;br /&gt;
Assembling helloworld&lt;br /&gt;
Linking helloworld&lt;br /&gt;
4 lines compiled, 0.5 sec&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./helloworld &lt;br /&gt;
Hello world&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to compile Lazarus ==&lt;br /&gt;
&lt;br /&gt;
Install necessary Manjaro packages&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu make subversion qt5pas&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download Lazarus source&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~&lt;br /&gt;
mkdir fpc&lt;br /&gt;
cd fpc&lt;br /&gt;
svn co https://svn.freepascal.org/svn/lazarus/trunk lazarus&lt;br /&gt;
cd lazarus&lt;br /&gt;
make LCL_PLATFORM=qt5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc-3.2.0.source.tar.gz from https://www.freepascal.org/down/source/sources.html and unpack the fpc src in some convenient folder (I used ~/fpc/fpc-3.2.0)&lt;br /&gt;
&lt;br /&gt;
Run it &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~/fpc/lazarus&lt;br /&gt;
./startlazarus&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Add Lazarus to your KDE start menu ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;touch ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Edit the file&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;kate ~/.local/share/applications/lazarus.desktop&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Paste in this code&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;[Desktop Entry]&lt;br /&gt;
Categories=Development;&lt;br /&gt;
Comment=IDE&lt;br /&gt;
Exec=~/fpc/lazarus/startlazarus %f&lt;br /&gt;
GenericName=IDE&lt;br /&gt;
Icon=text-editor&lt;br /&gt;
InitialPreference=9&lt;br /&gt;
MimeType=text/plain;&lt;br /&gt;
Name=Lazarus&lt;br /&gt;
Path=&lt;br /&gt;
StartupNotify=true&lt;br /&gt;
Terminal=false&lt;br /&gt;
TerminalOptions=&lt;br /&gt;
Type=Application&lt;br /&gt;
X-DBUS-ServiceName=&lt;br /&gt;
X-DBUS-StartupType=&lt;br /&gt;
X-KDE-HasTempFileOption=true&lt;br /&gt;
X-KDE-SubstituteUID=false&lt;br /&gt;
X-KDE-Username=&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Save the file&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6388</id>
		<title>User:Dieselnutjob/Pinebook Pro/Freepascal and Lazarus IDE on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6388"/>
		<updated>2020-08-02T11:58:09Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to install Freepascal FPC 3.20 ==&lt;br /&gt;
&lt;br /&gt;
Install binutils&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu binutils&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc from here https://www.freepascal.org/down/aarch64/linux-hungary.html&lt;br /&gt;
&lt;br /&gt;
Unpack and install&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;tar -xf fpc-3.2.0.aarch64-linux.tar&lt;br /&gt;
cd fpc-3.2.0.aarch64-linux&lt;br /&gt;
sudo sh install.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test it:-&lt;br /&gt;
&lt;br /&gt;
Use a test editor to create helloworld.pas&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;Program helloworld;&lt;br /&gt;
begin&lt;br /&gt;
  writeln ('Hello world');&lt;br /&gt;
end.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and run it&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fpc helloworld.pas &lt;br /&gt;
Free Pascal Compiler version 3.2.0 [2020/06/05] for aarch64&lt;br /&gt;
Copyright (c) 1993-2020 by Florian Klaempfl and others&lt;br /&gt;
Target OS: Linux for AArch64&lt;br /&gt;
Compiling helloworld.pas&lt;br /&gt;
Assembling helloworld&lt;br /&gt;
Linking helloworld&lt;br /&gt;
4 lines compiled, 0.5 sec&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./helloworld &lt;br /&gt;
Hello world&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to compile Lazarus ==&lt;br /&gt;
&lt;br /&gt;
Install necessary Manjaro packages&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu make subversion qt5pas&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download Lazarus source&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~&lt;br /&gt;
mkdir fpc&lt;br /&gt;
cd fpc&lt;br /&gt;
svn co https://svn.freepascal.org/svn/lazarus/trunk lazarus&lt;br /&gt;
cd lazarus&lt;br /&gt;
make LCL_PLATFORM=qt5&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc-3.2.0.source.tar.gz from https://www.freepascal.org/down/source/sources.html and unpack the fpc src in some convenient folder (I used ~/fpc/fpc-3.2.0)&lt;br /&gt;
&lt;br /&gt;
Run it &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;cd ~/fpc/lazarus&lt;br /&gt;
./startlazarus&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6387</id>
		<title>User:Dieselnutjob/Pinebook Pro/Freepascal and Lazarus IDE on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Freepascal_and_Lazarus_IDE_on_Manjaro&amp;diff=6387"/>
		<updated>2020-08-02T11:46:06Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: Install Freepascal FPC3.20 and Lazarus IDE on Manjaro&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== How to install Freepascal FPC 3.20 ==&lt;br /&gt;
&lt;br /&gt;
Install binutils&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo pacman -Syu binutils&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download fpc from here https://www.freepascal.org/down/aarch64/linux-hungary.html&lt;br /&gt;
&lt;br /&gt;
Unpack and install&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;tar -xf fpc-3.2.0.aarch64-linux.tar&lt;br /&gt;
cd fpc-3.2.0.aarch64-linux&lt;br /&gt;
sudo sh install.sh&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test it:-&lt;br /&gt;
&lt;br /&gt;
Use a test editor to create helloworld.pas&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;Program helloworld;&lt;br /&gt;
begin&lt;br /&gt;
  writeln ('Hello world');&lt;br /&gt;
end.&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile and run it&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fpc helloworld.pas &lt;br /&gt;
Free Pascal Compiler version 3.2.0 [2020/06/05] for aarch64&lt;br /&gt;
Copyright (c) 1993-2020 by Florian Klaempfl and others&lt;br /&gt;
Target OS: Linux for AArch64&lt;br /&gt;
Compiling helloworld.pas&lt;br /&gt;
Assembling helloworld&lt;br /&gt;
Linking helloworld&lt;br /&gt;
4 lines compiled, 0.5 sec&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;./helloworld &lt;br /&gt;
Hello world&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Truecrypt_on_Manjaro&amp;diff=6385</id>
		<title>User:Dieselnutjob/Pinebook Pro/Truecrypt on Manjaro</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob/Pinebook_Pro/Truecrypt_on_Manjaro&amp;diff=6385"/>
		<updated>2020-08-02T11:16:02Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: How to make Truecrypt work on Manjaro&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;At least on the default Manjaro build on Pinebook Pro, as of August 2020 Truecrypt is available in Add/Remove Software.&lt;br /&gt;
&lt;br /&gt;
However it does not work out of the box due to the lack of a loop device needed to mount a Truecrypt volume.&lt;br /&gt;
&lt;br /&gt;
First you need to install dracut&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo bash pacman -Syu dracut&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Configure loop&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;sudo echo &amp;quot;loop&amp;quot; &amp;gt;&amp;gt; /etc/modules-load.d/truecrypt.conf&lt;br /&gt;
sudo echo &amp;quot;options loop max_loop=8&amp;quot; &amp;gt;&amp;gt; /etc/modprobe.d/eightloop.conf&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Make it permanent by rebuilding initrd&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;dracut --force&lt;br /&gt;
reboot&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Original sources of information:-&lt;br /&gt;
&lt;br /&gt;
https://bbs.archlinux.org/viewtopic.php?id=136879&lt;br /&gt;
&lt;br /&gt;
https://forum.manjaro.org/t/using-dracut-on-manjaro/136310&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
	<entry>
		<id>https://wiki.pine64.org/index.php?title=User:Dieselnutjob&amp;diff=6383</id>
		<title>User:Dieselnutjob</title>
		<link rel="alternate" type="text/html" href="https://wiki.pine64.org/index.php?title=User:Dieselnutjob&amp;diff=6383"/>
		<updated>2020-08-02T10:53:50Z</updated>

		<summary type="html">&lt;p&gt;Dieselnutjob: Created page with &amp;quot;https://wiki.pine64.org/index.php?title=Dieselnutjob_pinebook_pro_notes&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;https://wiki.pine64.org/index.php?title=Dieselnutjob_pinebook_pro_notes&lt;/div&gt;</summary>
		<author><name>Dieselnutjob</name></author>
	</entry>
</feed>