Pinebook
The Pinebook is an 11.6″ or 11.6″ with 1080P IPS panel or 14″ notebook powered by the same quad-core ARM Cortex A53 64-Bit Processor used in our popular PINE A64 Single Board Computer. It is very lightweight, hackable and comes equipped with a full-sized keyboard and large multi-touch trackpad. It runs numerous mainline Linux distributions as well as *BSD and Android.
Software releases
Under Pinebook Software Releases you will find a complete list of currently supported Operating System images that work with the Pinebook as well as other related software.
Variants
The following variants exist of the Pinebook:
- Pinebook 11.6″
- Pinebook 11.6″ 1080p
- Pinebook 14″
More information can be found on the sunxi wiki.
Pinebook Service Step-by-Step Guides
These are instruction guides for the disassembly:
11.6″ Pinebook:
14″ Pinebook:
Pinebook Information
- Dimensions: 299mm x 200mm x 12mm (WxDxH - 11″ Pinebook); 329mm x 220mm x 12mm (WxDxH - 14″ Pinebook)
- Weight: 1.04Kg (11″ Pinebook); 1.26Kg (14″ Pinebook)#
- Input Power: DC 5V @ 3A
SoC and Memory Specification
- Based on Allwinner A64
CPU Architecture:
- Quad-core ARM Cortex-A53 Processor@1152Mhz
- A power-efficient ARM v8 architecture
- 64 and 32bit execution states for scalable high performance
- Support NEON Advanced SIMD (Single Instruction Multiple Data) instruction for acceleration of media and signal processing function
- Support Large Physical Address Extensions(LPAE)
- VFPv4 Floating Point Unit
- 32KB L1 Instruction cache and 32KB L1 Data cache
- 512KB L2 cache
GPU Architecture:
- ARM Mali400MP2 Dual-core GPU
- Support OpenGL ES 2.0 and OpenVG 1.1 standard
- Open source driver
System Memory:
- System RAM Memory: 2GB
- Storage Memory: 16GB eMMC module, can be upgrade to 32GB or 64GB eMMC module
Battery:
- Lithium Polymer Battery (10,000mAH)
Video:
- Mini Digital Video Port (Type A - mini)
Audio:
- 3.5mm stereo earphone/microphone plug
Network:
- WiFi 802.11 b/g/n with Bluetooth 4.0
- 10/100Mbps USB Ethernet Dongle (Optional)
Storage:
- microSD - bootable, support SDHC and SDXC, storage up to 256GB
- USB - 2 USB2.0 Host port
Expansion Ports:
- mini Digital Video port
- microSD card port - support SD, SDHC, SDXC uo to 256GB
- 2x USB 2.0 port
- earphone plug with UART console mux circuit
Pinebook Schematics and Certifications
Mainboard schematics:
Daughter Board schematics:
Serial Console Earphone Jack pinout:
Certifications:
- Pinebook FCC Certificate
- Pinebook FCC ID-Spread Spectrum Transmitter Certificate
- Pinebook FCC ID-Digital Transmission System Certificate
- Pinebook CE Certificate
- Pinebook RoHS Certificate
Datasheets for Components and Peripherals
Allwinner A64 SoC:
- Allwinner A64 SoC Brief Introduction
- Allwinner A64 SoC Data Sheet V1.1 (Official Released Version)
- Allwinner A64 SoC User Manual V1.0 (Official Release Version)
X-Powers AXP803 PMU (Power Management Unit):
LPDDR3:
eMMC:
- PINE64 eMMC module schematic
- PINE64 USB adapter for eMMC module V2 schematic
- PINE64 USB adapter for eMMC module PCB in JPEG
- 16GB Foresee eMMC Datasheet
- 32GB/64GB/128GB SanDisk eMMC Datasheet
SPI NOR flash:
WiFi/BT module:
LCD Panel:
- 1920x1080 1080P 11.6″ IPS LCD Panel datasheet
- 1366x768 11.6″ TFT LCD Panel datasheet
- 1366x768 14″ TFT LCD Panel datasheet
Touchpad:
Camera sensor:
Lithium battery:
- 10000mAH Lithium Battery Specification for 11.6″ model
- 10000mAH Lithium Battery Specification for 14″ model
Other Resources
- Linux Sunxi Wiki page on Pinebook
- Pinebook Linux Github by ayufan
- Pinebook Android Github by ayufan
- Armbian's Pinebook Page
FAQ / Tips and tricks
Prolong battery life
How to reduce the max voltage the battery is charged to?
$ cd /sys/class/power_supply/axp20x-battery
Notice that voltage_max_design is writable by root, values are in microvolts. The factory value is 4200000 or 4.2V on my device. This charges to 100% capacity.
$ cat voltage_max_design 4200000
Check the factory value on your device, and record it if it is different. The value depends on the battery installed. You can reduce it to 4.1 V by running the following Linux command as root:
$ echo 4100000 > voltage_max_design
If you are fully charged and on AC, the battery will start discharging until it reaches 4.1 V. This will be about 98% capacity on my device. This prolongs the battery life when you don't need the extra few minutes of offline power. The Linux driver will not let you set the maximum voltage to a value smaller than 4.1V (as of Linux kernel 6.3.8).
The setting seems to be retained across reboots.
Key left of Z ( \ | )
How to map the key next to Z to the symbols on \ and | (rather than <>)?
Choose the alternative international US keyboard layout and variant. The name will depend on your desktop environment:
- English (US, alt. intl.)
- English (US, international AltGr Unicode combining, alternative)
- English (US, alternative international)
Note: keyboard variants with similar names as the ones above change the upper left key for ` and ~. You have to press that key twice to get the desired char. This happens with the alt-intl variant. Choose the altgr-intl variant (or however it is called in your desktop environment) and it should work as expected.
To set the keyboard layout and variant in the terminal for X-Windows use:
setxkbmap -layout us -variant altgr-intl
The Archlinux Wiki has some good help if you need to tweak your layout further [1]
Key between Fn and Alt (Menu)
How to map the key between Fn and Alt to SUPER / META ?
The initial setup in many desktop environments maps the key between Fn and Alt to MENU. Although the menu key can be useful as well (e.g. spell correction in the browser) many desktop environments and window manager use the Super key for many other useful functions. And users are probably more used to have the META key near Ctrl and Alt.
In X-windows the following command maps the key between Fn and Alt to META and the Caps-Lock key to MENU.
setxkbmap -option caps:menu,altwin:alt_super_win
Set display brightness in the terminal
To set the display brightness in the terminal use xbacklight (if available in your distro):
xbacklight -setXX
XX is the percentage (%) of brightness. E.g. for 70% brightness
xbacklight -set70
If you use LXQt you can also use:
pkexec lxqt-backlight_backend --inc pkexec lxqt-backlight_backend --dec
For an alternative solution please see the scripts discussed in this thread: [2]
Get battery % in CLI
As ACPI is not compatible with ARM, to gather the % battery this can be used:
cat /sys/class/power_supply/battery/capacity
Firefox font size
How to get a useful font size with firefox ?
To have every web page displayed in a larger more readable font size type about:config in the search bar and confirm on the first page that you want to make changes. Then search for this parameter:
layout.css.devPixelsPerPx
and modify the value (right click) to something between 1.2 to 1.5 depending on your preferences.
In addition to that you can set in Preferences -> General -> Fonts & Color -> Advanced Minimum font size to 16
Disable wireless power management
If having issues with wifi connectivity, try to disable power management in the 8723cs module options, adding rtw_power_mgnt=0 in /etc/modprobe.d/8723cs.conf
options 8723cs rtw_initmac=00:ba:ch:16:85:46 rtw_power_mgnt=0
Touchpad acceleration and scroll direction.
To set touchpad parameters from the cli you can use the command xinput. To use it correctly you first need to determine the device id / name for your touchpad. Use
xinput list
to do so. You are looking for a line like this:
HAILUCK CO.,LTD USB KEYBOARD Mouse id=7 [slave pointer (2)]
With the device id = 7 found you can list the parameters that can be set with xinput.
xinput list-props 7
The result looks similar to this:
device 'HAILUCK CO.,LTD USB KEYBOARD Mouse': ... libinput Natural Scrolling Enabled (256): 0 ... libinput Accel Speed (265): 0.000000 ...
To change the parameter use xinput set-prop
To set reverse scrolling for the touchpad use this command
xinput set-prop 7 'libinput Natural Scrolling Enabled' 1
To set mouse speed
xinput set-prop 7 'libinput Accel Speed' 0.95
Check different numbers for 0.95 to meet your needs.
For more details on xinput and mouse speed also see the Archlinux Wiki [3]