Difference between revisions of "PineTab2"

From PINE64
Jump to navigation Jump to search
m (Preparing to reorganize around software releases)
 
(71 intermediate revisions by 19 users not shown)
Line 3: Line 3:
The '''PineTab2''' is PINE64's successor to the original [[PineTab]] Linux tablet computer, featuring a faster processor and better availability. The tablet is available in two configurations, 4GB of RAM and 64GB of internal storage or 8GB of RAM and 128GB of internal storage. The tablet ships with a detachable keyboard that doubles as a protective cover.
The '''PineTab2''' is PINE64's successor to the original [[PineTab]] Linux tablet computer, featuring a faster processor and better availability. The tablet is available in two configurations, 4GB of RAM and 64GB of internal storage or 8GB of RAM and 128GB of internal storage. The tablet ships with a detachable keyboard that doubles as a protective cover.


The tablet is designed around the Rockchip RK3566 processor, which features 4 energy-efficient Cortex-A55 64-bit ARM cores and enjoys good mainline Linux support. Similarly packaged RISC-V tablet is [[PineTab-V]].
The tablet is designed around the Rockchip RK3566 processor, which features 4 energy-efficient Cortex-A55 64-bit ARM cores and enjoys good mainline Linux support. A similarly packaged RISC-V tablet is the [[PineTab-V]].


Pre-orders started on the 13th of April 2023, with pricing starting at USD 159 for the 4GB/64GB version and USD 209 for the 8GB/128GB version. The PineTab2 began shipping on June 2, 2023.
Pre-orders started on the 13th of April 2023, with pricing starting at USD 159 for the 4GB/64GB version and USD 209 for the 8GB/128GB version. The PineTab2 began shipping on June 2, 2023.


== Getting started ==
== Getting started ==
The PineTab2 box contains two smaller boxes.
The first box includes the following items:
* The PineTab2
* Short [[:File:Pinetab2 quick start guide en ger fr pl final.pdf|user guide]]
* Power cable
* The UART adapter board
Note that the UART adapter is in the same package as the power cable, in a second compartment, and can be a bit hidden.
The second box has the keyboard in it.
=== First start ===


The PineTab2 can be started by pressing and holding the power button for two seconds. The device is initialized at the first boot and will power-cycle while the partition table is populated.
The PineTab2 can be started by pressing and holding the power button for two seconds. The device is initialized at the first boot and will power-cycle while the partition table is populated.
Line 23: Line 38:


You can create a new user and set your own password after the initial boot. To do so, go to ''system settings'' -> ''users'' and create a new profile using your preferred name and password.
You can create a new user and set your own password after the initial boot. To do so, go to ''system settings'' -> ''users'' and create a new profile using your preferred name and password.
=== Keyboard cover ===
When connecting the keyboard to the Pinetab2 ensure that the camera and the golden pogo pin connectors are correctly aligned.
The external keyboard has 5 connection pins (the golden pins). four are standard USB connectors and one is used to detect that the keyboard is connected.
The backlight can be changed with the key combination ''Pinekey + Ctrl (right)''.


== Software ==
== Software ==
Line 28: Line 50:
All operating systems for the PineTab2 are delivered by community developers and partner projects. Aside from the operating system that comes pre-installed on your device, you can install and run any other operating system available for the PineTab2. Most, if not all operating systems for the PineTab2 are open and free, such as Linux and BSD.
All operating systems for the PineTab2 are delivered by community developers and partner projects. Aside from the operating system that comes pre-installed on your device, you can install and run any other operating system available for the PineTab2. Most, if not all operating systems for the PineTab2 are open and free, such as Linux and BSD.


Since most software issues will be release-specific, please see the [[PineTab2 Releases]] page for software related instructions, tips, and tricks.
Since most software issues will be release-specific, please see the [[PineTab2 Releases]] page for additional software related instructions, tips, and tricks.


=== Releases ===
=== Releases ===


The PineTab2 ships with ''Danctnix Arch Linux''. The factory image can be found here:
The releases for the PineTab2 can be found under [[PineTab2 Releases]].
 
* https://echo.danctnix.org:7269/danctnix-factory-image-20230527.img.xz (1.5 GB)
 
{{Info|The factory image is flashed to a microSD card and it will overwrite the eMMC installation after booting.}}
 
There are currently no further releases. Future releases for the PineTab2 will be listed under [[PineTab2 Releases]]. Your contributions are wanted!


=== Installation instructions ===
=== Installation instructions ===
Line 68: Line 84:
Then insert the microSD card into the PineTab2.  
Then insert the microSD card into the PineTab2.  


{{Hint|'''Note regarding the boot order:''' The internal memory (eMMC) has a higher boot priority than the microSD card. In some cases it can be required to bypass the boot order, for example if the installation on the eMMC is corrupted.}}
[[File:PineTab2 USB UARTv2.jpg|thumb|right|400px|Using the USB UART adapter can be required in some cases as explained in the info box about the boot order. The adapter is shipped with the PineTab2 in the box which is also containing the charging cable. The switch to disable the eMMC and SPI is located on the top right of the image.]]
 
Picture of the USB UART inserted into the PineTab2. The switch to disable the eMMC and SPI is located on the top right of the image:
 
[[File:PineTab2 USB UARTv2.jpg|600px]]
 
{{Hint|To force the device to boot from the microSD card, the eMMC and the SPI can be disabled by using the debug UART adapter shipped with the device. Set the ''SD BOOT MASKROM'' switch on the adapter to the position ''ON'' and plug it into the USB/PD charging port. Then power on the tablet and '''unplug the debug board or set the switch to the position ''OFF'' again''' when the factory image is started, otherwise the factory image won't find the eMMC.}}


It should now boot the new operating system from the microSD card.
{{Hint|'''Note regarding the boot order:''' The SPI and the internal memory (eMMC) have a higher boot priority than the microSD card. The pre-installed bootloader on the internal memory (eMMC) tries to boot from the microSD card first. '''In some cases''' it can be required to bypass the bootloader, for example if the bootloader is corrupted or was overwritten by a bootloader with varying settings.<br><br>


== Keyboard ==
To force the device to boot from the microSD card, the eMMC and the SPI can be disabled by using the debug UART adapter shipped with the device in the box also containing the charging cable. Set the ''SD BOOT MASKROM'' switch on the adapter to the position ''ON'' and plug it into the USB/PD charging port. Then power on the tablet and '''unplug the debug board or set the switch to the position ''OFF'' again''' when the factory image is started, otherwise the factory image won't find the eMMC.}}


When connecting the keyboard to the Pinetab2 ensure that the camera and the golden pogo pin connectors are correctly aligned.
Power on the device with the microSD card inserted (and optionally with the USB UART adapter inserted and the bypass switch set to ''ON'' depending on the software situation, see the info box above). It should now boot the new operating system from the microSD card.


Change the backlight with '''Pinekey - Ctrl-Right'''.
'''Something is not working?''' Please join the [[Main_Page#Chat_Platforms|PineTab channel in the community chat]], the community is always happy to help. In the section [[#Connecting the UART adapter]] you can find information about how to connect the USB UART adapter and how to retrieve the boot logs if the device is not booting properly even after the above procudere.


== Specifications ==
== Specifications ==


[[File:RK3566_icon.png|right]]
[[File:RK3566_icon.png|right]]
[[File:Pinetab2-side.jpeg|thumb|400px|right|Tablet's side ports: USB-C (with PD), MicroSD, USB-C 3.0, volume rocker, power button]]
* '''SoC:''' Rockchip RK3566
* '''SoC:''' Rockchip RK3566
* '''CPU:''' 4x ARM Cortex-A55 @ 1.8 GHz
* '''CPU:''' 4x ARM Cortex-A55 @ 1.8 GHz
Line 98: Line 109:
* '''RAM:''' 4GB or 8GB LPDDR4
* '''RAM:''' 4GB or 8GB LPDDR4
* '''Storage:'''
* '''Storage:'''
** 64GB or 128GB internal eMMC
** 64GB or 128GB internal eMMC ([https://www.szyuda88.com/product-77313-276594.html SiliconGo SGM8 100C-S36BCG]; eMMC 5.1, up o 400MB/s)
** 1x MicroSD slot
** 1x MicroSD slot
* '''Display:''' 10.1" IPS LCD Resolution 1280x800
* '''Display:''' 10.1" IPS LCD Resolution 1280x800
Line 107: Line 118:
* '''Buttons:''' Power, volume up, volume down
* '''Buttons:''' Power, volume up, volume down
* '''Network:'''
* '''Network:'''
** Wi-Fi
** Wi-Fi: BES2600
** Bluetooth
*** Driver under development, use a USB wifi dongle for now
** Bluetooth: BES2600
* '''I/O:'''
* '''I/O:'''
** 1x USB-C 3.0 (top, host mode only; power output up to 680mA)
** 1x USB-C 3.0 (top, host mode only; power output up to 680mA)
** 1x USB-C 2.0 (bottom, device mode by default; power input)
** 1x USB-C 2.0 + PD (bottom, device mode by default; power input)
** 1x MicroHDMI
** 1x MicroHDMI
** 1x 4 pole 3.5mm audio jack (microphone right) and headphone detection
** 1x 4 pole 3.5mm audio jack (microphone right) and headphone detection
Line 117: Line 129:
** 1x 5 pin (USB 2.0; <=680mA) Pogo connector for keyboard
** 1x 5 pin (USB 2.0; <=680mA) Pogo connector for keyboard
** (PCIe on PCB as a flat flex ribbon connector, no room for M.2 NVMe drives in case)
** (PCIe on PCB as a flat flex ribbon connector, no room for M.2 NVMe drives in case)
* '''Sensors:'''
** Accelerometer: Silan SC7A20
** Ambient Light & Proximity Sensor
* '''Multimedia:'''
* '''Multimedia:'''
** rkdjpeg: 1080p120 JPEG decode
** rkdjpeg: 1080p120 JPEG decode
Line 129: Line 144:
* '''Build:''' Metal and Plastic
* '''Build:''' Metal and Plastic
* '''Dimensions:''' 242x161x9mm
* '''Dimensions:''' 242x161x9mm
* '''Weight:''' 538g
* '''Misc:'''
* '''Misc:'''
** Protective cover with keyboard
** Protective cover with keyboard
Line 140: Line 156:
=== Known Issues ===
=== Known Issues ===


* The display panel driver is in PineTab2's kernel fork, and needs to be submitted to upstream.
* WiFi/Bluetooth chip BES2600:
* The [https://gitlab.com/TuxThePenguin0/bes2600 BES2600 Wi-Fi driver] needs porting/major cleanup. This is a priority, but for now, you can [[#Performing USB Tethering with an Android Phone|USB tether a phone]] or [[#Selecting a USB WIFI Adapter|use a supported WI-FI dongle]].
** The [https://gitlab.com/TuxThePenguin0/bes2600 BES2600 Wi-Fi driver] needs major cleanup and bugfixing (at the moment it often causes system crashes). This is a priority, but for now, you can [[PineTab2_FAQ#Performing_USB_Tethering_with_an_Android_Phone|USB tether a phone]] or [[PineTab2_FAQ#Selecting_a_USB_WIFI_Adapter|use a supported WI-FI dongle]]. There are at least two code releases available, with two respective/non-interchangeable firmware versions. The latest danctnix kernel has a pretty well working wifi driver.
* The BES2600 Bluetooth driver needs to be implemented.
** The BES2600 Bluetooth driver needs to be implemented.
* The Camera driver needs to be written.
** Hardware bugs - the power and reset circuitry is not properly implemented in the circuitry, so hard reset of the chip (in the theoretical case it freezes) is impossible without power cycling the whole board.
* Suspend does not currently work due to a driver issue. Suspend is disabled in the factory image for your protection. Caveat Emptor if you chose to unmask the feature prior to it being fixed.
* The camera drivers needs to be ported ([https://github.com/rockchip-linux/kernel/blob/develop-4.19/drivers/media/i2c/gc02m2.c gc02m2], [https://elixir.bootlin.com/linux/latest/source/drivers/media/i2c/ov5648.c ov5648]), Rockchip CSI/ISP driver needs to be extended to handle 2 lanes.
* Suspend does not currently work reliably due to a driver issue. It is therefore disabled in the factory image. Caveat Emptor if you chose to unmask the feature prior to it being fixed.


=== Connecting the UART adapter ===
=== Connecting the UART adapter ===
Line 150: Line 167:
The USB-C UART adapter can be connected to the PineTab2 to debug boot issues at the early boot:
The USB-C UART adapter can be connected to the PineTab2 to debug boot issues at the early boot:


* Plug the adapter in the USB-C port furthest away from the power button
* Plug the adapter face-up in the USB-C port furthest away from the power button. If all the lights are lit, you have the wrong port: only the green light should be lit when you first plug it in.
* Plug USB-C cable into the port on the adapter marked "DEBUG"
* Plug USB-C cable into the port on the adapter marked "DEBUG"
* Open a terminal window
* Open a terminal window
* Install ''minicom'' or ''screen'' via your distribution's package manager, if you don't have it installed already
* Install ''minicom'' or ''screen'' via your distribution's package manager, if you don't have it installed already
* Connect via minicom using <code>sudo minicom -D /dev/ttyUSB0 -b 1500000</code> or via screen using <code>sudo screen /dev/ttyUSB0 1500000</code>
* Connect via minicom using <code>sudo minicom -D /dev/ttyUSB0 -b 1500000</code> or via screen using <code>sudo screen /dev/ttyUSB0 1500000</code>
** Ubuntu-based distro users may encounter the error, "cannot open /dev/ttyUSB0: No such file or directory".  If this occurs, check the output of <code>sudo dmesg --follow</code> and unplug/replug the USB to look for any errors.  If you see an error like, "usb 1-1: usbfs: interface 0 claimed by ch341 while 'brltty' sets config #1", then the brltty service is likely conflicting with this device.  Brltty provides access to blind users who use a braille display: if you do not need this service, try disabling it using these commands:
*** <code> sudo systemctl stop brltty-udev.service</code>
*** <code> sudo systemctl mask brltty-udev.service</code>
*** <code> sudo systemctl stop brltty.service</code>
*** <code> sudo systemctl mask brltty.service</code>


== Board information, schematics and certifications ==
== Board information, schematics and certifications ==
Line 163: Line 185:


* [https://files.pine64.org/doc/PineTab/PineTab2_V2_schematic-20230417.pdf PineTab2 mainboard Released Schematic-20230417 ver 2.0]
* [https://files.pine64.org/doc/PineTab/PineTab2_V2_schematic-20230417.pdf PineTab2 mainboard Released Schematic-20230417 ver 2.0]
* [https://files.pine64.org/doc/PineTab/PineTab2_V2_comp_ref_top-20230417.pdf PineTab2 PCB Component Reference location v2.0 (top layer)]
* [https://files.pine64.org/doc/PineTab/PineTab2_V2_comp_ref_bottom-20230417.pdf PineTab2 PCB Component Reference location v2.0 (bottom layer)]
* [https://files.pine64.org/doc/PineTab/pinetab2-V_uart_console_schematic-20221107.pdf PineTab2/PineTab-V UART Dongle Schematic-20221107]


PineTab2 certifications:
PineTab2 certifications:
* Available soon
* [https://files.pine64.org/doc/cert/Pinetab2%20FCC-SDOC%20Certificate-LCSA040323223E.pdf PineTab2 FCC Certificate]
* [https://files.pine64.org/doc/cert/Pinetab2%20CE%20RED%20Certificate-LCSA040323224E.pdf PineTab2 CE RED Certificate]
* [https://files.pine64.org/doc/cert/PineTab2%20CE%20EMC%20Certificate-LCSA040323225E.pdf PineTab2 CE EMC Certificate]
* [https://files.pine64.org/doc/cert/PineTab2%20ROHS%20Report-LCSA040323221R.pdf PineTab2 ROHS Test Report]
* [https://files.pine64.org/doc/cert/PineTab2%20Keyboard%20CE%20EMC%20Certificate-LCSA062623001E.pdf PineTab2/PineTab-V Detached Keyboard CE EMC Certificate]


== Datasheets for Components and Peripherals ==
== Datasheets for Components and Peripherals ==
Line 174: Line 203:
* [https://opensource.rock-chips.com/images/2/26/Rockchip_RK3568_TRM_Part1_V1.3-20220930P.PDF Rockchip RK3566 and RK3568 TRM (Technical Reference Manual)]
* [https://opensource.rock-chips.com/images/2/26/Rockchip_RK3568_TRM_Part1_V1.3-20220930P.PDF Rockchip RK3566 and RK3568 TRM (Technical Reference Manual)]


== Frequently Asked Questions ==
LCD panel:
 
=== Does the Tablet support a Pen? ===
 
No, adding a digitiser for pen inputs would make the price too high.
 
=== Can I run Android on it? ===
 
Theoretically yes, practically there's little chance anyone wants to make a well-supported Android build for this device. If you're looking for an Android tablet, buy any mainstream tablet, you'll get better value for your money.
 
However, if you just need to run a few simple android apps, you might want to have a look at [https://docs.waydro.id/usage/install-on-desktops Waydroid] which can be installed on Arch Linux ARM using the following command: <code>sudo pacman -S waydroid</code>
 
=== Is there SPI Flash? ===
 
Unclear. The schematic shows a 128Mbit SPI flash chip, but it's possible that production models won't have it populated. Update this section once we've determined this.
 
=== My only Development Experience is Visual Basic Macros in Excel and Redstone in Minecraft, should I buy this? ===
 
At this stage, probably not, unless you're happy with a tablet that has a buggy Wi-Fi driver and no camera controller driver.
 
=== How does the Tablet compare to a Pinebook Pro? ===
 
It's slower, as it is intended to be a successor to the PineTab1, not the Pinebook Pro. It'll still handle web browsing, video playback and documents fine though.
 
=== What is the Performance of the PineTab2 compared to the PineTab-V? ===
 
The PineTab2 is notably faster than the PineTab-V. You can see this by [https://github.com/ThomasKaiser/sbc-bench/blob/master/Results.md comparing the Quartz64 sbc-bench results to the Star64 ones]. Performance should not be a factor of consideration when purchasing a PineTab-V.
 
=== Does PineTab2 play back DRM'd Content such as Netflix? ===
 
Yes.  Widevine, using the `widevine-aarch64` package in the AUR is working, and was demonstrated on the PineTab2 using Paramount+ and Disney+.  Install it (`yay -S widevine-aarch64`), run the included register script to get Firefox to recognize it, and it should start working.
 
== How-to ==
 
=== Putting the Device into Maskrom Mode ===
 
To recover from a bad eMMC/SPI flash, it seems you can make the bootrom enter the USB recovery mode by applying a low(?) signal to the SSTX1_P or SSTX2_P pin of the USB2-only Type-C connector (the one that does UART.)
 
=== Networking using USB ===
 
Until the internal BES2600 WIFI has a stable driver, the community suggests that you connect using USB. This section summarizes the more detailed information in [[File:PineTab2_USB_Guide.pdf]], which covers connecting via [[#Performing USB Tethering with an Android Phone|a tethered Android phone]], [[#Selecting a USB WIFI Adapter|a suitable USB WIFI adapter]], a wired USB Ethernet adapter, and a tethered iOS device.
 
==== Selecting a USB WIFI Adapter ====
 
Insert a supported WIFI dongle in the upper USB port, using a USB-C to USB-A adapter as necessary. As a general rule, single state adapters are recommended. Even better, select one from this list: https://github.com/morrownr/USB-WiFi/blob/main/home/The_Short_List.md
 
If you must use a multi-state adapter and it isn't recognized by the kernel, you can try ejecting the device.  This ''should'' force it back into adapter mode.  If this does not work, you can try installing [https://man.archlinux.org/man/usb_modeswitch.1.en usb_modeswitch] to troubleshoot.  You will need to temporarily use another method to get internet (such as phone tethering below) or load the package on an SD card to install it.
 
==== Performing USB Tethering with an Android Phone ====
 
This guide simply describes HOW to undertake this option. The user is responsible for ensuring that their wireless plan permits such use, and for any fees incurred.
 
You can use an Android phone as a network adapter.
 
You'll need:
 
* An Android phone
* A USB OTG adapter (USB-C to USB-C may work, not tested)
* Some knowledge of your variation of Android
 
Do the following in order:
 
* Plug in the device to the PineTab2 using the USB cable and a USB OTG adapter
* On your android phone, open the settings app (specifics from here may vary on version)
** Navigate to "Network & Internet"
** Navigate to "Hotspot & Tethering"
** Tap on "USB Tethering"
 
You should now see a new network interface on the PineTab2.
 
==== Performing USB Tethering with an iPhone ====


Prerequisite:
* [[:File:Boe-technology-th101mb31ig002-28a-datasheet-v10.pdf|BOE TH101MB31IG002-28A datasheet v1.0]]


On the iPhone make sure that Settings -> Personal Hotspot -> Allow others to join is turned on.
== Tutorials and Frequently Asked Questions ==


# Use an Lightning (Apple) to USB-C (Pinetab2) cable to connect the devices.
Please see the [[PineTab2 FAQ]] page for tutorials and frequently asked questions.
# In the Pinetab make sure to use the USB-C port next to the volume keys.
# Once the cable is connected open your iPhone.
# You will see a request to trust the new device. Trust it.
# Confirm by typing in your Apple Device PIN


This should be it. The Pinetab2 will show you the new device and the network connects to `Wired connection 1`
There's also [[:File:PineTab2_display_panel_disassembly_guide.pdf|PineTab2 disassembly guide]].  The disassembly is a very delicate operation, especially around the corners of the screen.  Several (even experienced) users ended up damaging the screen.


== External Links ==
== External Links ==

Latest revision as of 08:05, 15 November 2024

The PineTab2 with the detachable keyboard attached

The PineTab2 is PINE64's successor to the original PineTab Linux tablet computer, featuring a faster processor and better availability. The tablet is available in two configurations, 4GB of RAM and 64GB of internal storage or 8GB of RAM and 128GB of internal storage. The tablet ships with a detachable keyboard that doubles as a protective cover.

The tablet is designed around the Rockchip RK3566 processor, which features 4 energy-efficient Cortex-A55 64-bit ARM cores and enjoys good mainline Linux support. A similarly packaged RISC-V tablet is the PineTab-V.

Pre-orders started on the 13th of April 2023, with pricing starting at USD 159 for the 4GB/64GB version and USD 209 for the 8GB/128GB version. The PineTab2 began shipping on June 2, 2023.

Getting started

The PineTab2 box contains two smaller boxes.

The first box includes the following items:

  • The PineTab2
  • Short user guide
  • Power cable
  • The UART adapter board

Note that the UART adapter is in the same package as the power cable, in a second compartment, and can be a bit hidden.

The second box has the keyboard in it.

First start

The PineTab2 can be started by pressing and holding the power button for two seconds. The device is initialized at the first boot and will power-cycle while the partition table is populated.

Note: If the initialization process is interrupted it might lead to a corrupted operating system installation. In that case reinstall the operating system as explained below.

The PineTab2 ships with DanctNix Arch Linux and comes with a pre-set user and the default password 123456.

Default credentials
Default user alarm / 123456

You can create a new user and set your own password after the initial boot. To do so, go to system settings -> users and create a new profile using your preferred name and password.

Keyboard cover

When connecting the keyboard to the Pinetab2 ensure that the camera and the golden pogo pin connectors are correctly aligned. The external keyboard has 5 connection pins (the golden pins). four are standard USB connectors and one is used to detect that the keyboard is connected.

The backlight can be changed with the key combination Pinekey + Ctrl (right).

Software

All operating systems for the PineTab2 are delivered by community developers and partner projects. Aside from the operating system that comes pre-installed on your device, you can install and run any other operating system available for the PineTab2. Most, if not all operating systems for the PineTab2 are open and free, such as Linux and BSD.

Since most software issues will be release-specific, please see the PineTab2 Releases page for additional software related instructions, tips, and tricks.

Releases

The releases for the PineTab2 can be found under PineTab2 Releases.

Installation instructions

The PineTab2 is capable of running different operating systems from the internal flash memory (eMMC) and from microSD card.

Preparing the microSD card

To write an operating system to the microSD card (typically called "flashing" in the community), you need to first download a compatible image from the releases section.

Next you need to decompress the downloaded image. The images are typically compressed in an archive format such as xz to reduce the download size. If you are using a graphical tool such as balenaEtcher or Gnome Disks it will handle the decompression of the image in the flashing step automatically.

Further you need to flash the image to the microSD card. This can be done using various tools, for example balenaEtcher (recommended for new users), Gnome Disks or command-line tools such as cp and dd. Insert the microSD card in a microSD card reader connected to your computer and then choose a tool of your liking.

Graphical applications:

  • balenaEtcher (Microsoft Windows, macOS, Linux): Click on Flash from file and select the image. Then select the microSD card target device and click on Flash!.
  • Gnome Disks (Linux): Select the microSD card target device on the left side in the Disks list. Then select the three dot menu on the top right and click on Restore Disk Image.... Select the image, verify the correct device is selected and then click on Start Restoring....

Command-line tools:

  • cp: sudo cp IMAGE.img /dev/[DEVICE]
  • dd: sudo dd if=IMAGE.img of=/dev/[DEVICE] bs=1M status=progress conv=fsync
Note: Make sure to replace IMAGE.img and [DEVICE] with the filename of the image (double check if it is decompressed and has the file extension .img) and the device name. You can use the command lsblk to find the device name. Make sure to flash to the whole device instead of partition 1 and that you're NOT selecting /dev/sda1 or /dev/mmcblk0p1 as target. Be very careful to select the correct device, as the tools can overwrite your data when the wrong device is selected.

Then insert the microSD card into the PineTab2.

Using the USB UART adapter can be required in some cases as explained in the info box about the boot order. The adapter is shipped with the PineTab2 in the box which is also containing the charging cable. The switch to disable the eMMC and SPI is located on the top right of the image.
Note regarding the boot order: The SPI and the internal memory (eMMC) have a higher boot priority than the microSD card. The pre-installed bootloader on the internal memory (eMMC) tries to boot from the microSD card first. In some cases it can be required to bypass the bootloader, for example if the bootloader is corrupted or was overwritten by a bootloader with varying settings.

To force the device to boot from the microSD card, the eMMC and the SPI can be disabled by using the debug UART adapter shipped with the device in the box also containing the charging cable. Set the SD BOOT MASKROM switch on the adapter to the position ON and plug it into the USB/PD charging port. Then power on the tablet and unplug the debug board or set the switch to the position OFF again when the factory image is started, otherwise the factory image won't find the eMMC.

Power on the device with the microSD card inserted (and optionally with the USB UART adapter inserted and the bypass switch set to ON depending on the software situation, see the info box above). It should now boot the new operating system from the microSD card.

Something is not working? Please join the PineTab channel in the community chat, the community is always happy to help. In the section #Connecting the UART adapter you can find information about how to connect the USB UART adapter and how to retrieve the boot logs if the device is not booting properly even after the above procudere.

Specifications

RK3566 icon.png
Tablet's side ports: USB-C (with PD), MicroSD, USB-C 3.0, volume rocker, power button
  • SoC: Rockchip RK3566
  • CPU: 4x ARM Cortex-A55 @ 1.8 GHz
    • 32KB L1 Instruction Cache and 32KB L1 Data Cache per core
    • 512KB unified system L3 cache
    • ARMv8 Cryptography Extensions
  • GPU: Mali-G52 MP2 @ 800 MHz
    • Supported by the open source 'Panfrost' driver in Linux and Mesa
    • Supports OpenGL 3.1 and OpenGL ES 3.1 with many newer extensions
  • NPU: 0.8 TOPS Neural Processing Unit
  • RAM: 4GB or 8GB LPDDR4
  • Storage:
  • Display: 10.1" IPS LCD Resolution 1280x800
  • Cameras:
    • Front: 2Mpx, chipset: Galaxycore GC02M2
    • Rear: 5Mpx, chipset: Omnivision OV5648
  • Battery: 6000 mAh (22.2Wh)
  • Buttons: Power, volume up, volume down
  • Network:
    • Wi-Fi: BES2600
      • Driver under development, use a USB wifi dongle for now
    • Bluetooth: BES2600
  • I/O:
    • 1x USB-C 3.0 (top, host mode only; power output up to 680mA)
    • 1x USB-C 2.0 + PD (bottom, device mode by default; power input)
    • 1x MicroHDMI
    • 1x 4 pole 3.5mm audio jack (microphone right) and headphone detection
    • 2x speakers + microphone (microphone left)
    • 1x 5 pin (USB 2.0; <=680mA) Pogo connector for keyboard
    • (PCIe on PCB as a flat flex ribbon connector, no room for M.2 NVMe drives in case)
  • Sensors:
    • Accelerometer: Silan SC7A20
    • Ambient Light & Proximity Sensor
  • Multimedia:
    • rkdjpeg: 1080p120 JPEG decode
      • no driver in mainline yet
    • hantro: JPEG/VP8/H.264 encode, 1080p MPEG-2/H.263/VP8/H.264 AVC decode
    • rkvdec2: 4K H.264 AVC Main10 L5.1/H.265 HEVC Main10 L5.1/VP9 Profile 0 and 2 L5.1 decode
      • no driver in mainline yet
    • rkvenc2: 4K H.264 AVC/H.265 HEVC encode
      • no driver in mainline yet
  • Build: Metal and Plastic
  • Dimensions: 242x161x9mm
  • Weight: 538g
  • Misc:
    • Protective cover with keyboard

Development efforts

Main Article: Quartz64 Development

Linux mainline is already quite far along for the device, as the SoC is the same as is used in the Quartz64 line of devices. Some minor pinetab2-specific adjustments can be found here Check the main article for the big picture; PineTab2 specific issues are listed here.

Known Issues

  • WiFi/Bluetooth chip BES2600:
    • The BES2600 Wi-Fi driver needs major cleanup and bugfixing (at the moment it often causes system crashes). This is a priority, but for now, you can USB tether a phone or use a supported WI-FI dongle. There are at least two code releases available, with two respective/non-interchangeable firmware versions. The latest danctnix kernel has a pretty well working wifi driver.
    • The BES2600 Bluetooth driver needs to be implemented.
    • Hardware bugs - the power and reset circuitry is not properly implemented in the circuitry, so hard reset of the chip (in the theoretical case it freezes) is impossible without power cycling the whole board.
  • The camera drivers needs to be ported (gc02m2, ov5648), Rockchip CSI/ISP driver needs to be extended to handle 2 lanes.
  • Suspend does not currently work reliably due to a driver issue. It is therefore disabled in the factory image. Caveat Emptor if you chose to unmask the feature prior to it being fixed.

Connecting the UART adapter

The USB-C UART adapter can be connected to the PineTab2 to debug boot issues at the early boot:

  • Plug the adapter face-up in the USB-C port furthest away from the power button. If all the lights are lit, you have the wrong port: only the green light should be lit when you first plug it in.
  • Plug USB-C cable into the port on the adapter marked "DEBUG"
  • Open a terminal window
  • Install minicom or screen via your distribution's package manager, if you don't have it installed already
  • Connect via minicom using sudo minicom -D /dev/ttyUSB0 -b 1500000 or via screen using sudo screen /dev/ttyUSB0 1500000
    • Ubuntu-based distro users may encounter the error, "cannot open /dev/ttyUSB0: No such file or directory". If this occurs, check the output of sudo dmesg --follow and unplug/replug the USB to look for any errors. If you see an error like, "usb 1-1: usbfs: interface 0 claimed by ch341 while 'brltty' sets config #1", then the brltty service is likely conflicting with this device. Brltty provides access to blind users who use a braille display: if you do not need this service, try disabling it using these commands:
      • sudo systemctl stop brltty-udev.service
      • sudo systemctl mask brltty-udev.service
      • sudo systemctl stop brltty.service
      • sudo systemctl mask brltty.service

Board information, schematics and certifications

PineTab2 Board

PineTab2 mainboard schematic:

PineTab2 certifications:

Datasheets for Components and Peripherals

Rockchip RK3566 SoC information:

LCD panel:

Tutorials and Frequently Asked Questions

Please see the PineTab2 FAQ page for tutorials and frequently asked questions.

There's also PineTab2 disassembly guide. The disassembly is a very delicate operation, especially around the corners of the screen. Several (even experienced) users ended up damaging the screen.

External Links