Jump to content

Acer Iconia Tab A500 (acer-picasso)

From postmarketOS Wiki
Note This device is supported as part of a generic port. Refer to Nvidia Tegra armv7 (nvidia-tegra-armv7) for installation instructions and more information.
Acer Iconia Tab A500
Manufacturer Acer
Name Iconia Tab A500
Codename acer-picasso
Released 2011
Type tablet
Hardware
Chipset Nvidia Tegra 2 (T20)
CPU Dual-core 1.0 GHz Cortex-A9
GPU ULP GeForce
Display 1280x800
Storage 16/32 GB
Memory 1 GB
Architecture armv7
Software
Original software
The software and version the device was shipped with.
Android 3.0
Extended version
The most recent supported version from the manufacturer.
Android 4.0
postmarketOS
Category testing
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
yes
pmOS kernel
The kernel version that runs on the device's port.
5.15.0-rc4
Unixbench score
Unixbench Whetstone/Dhrystone score. See Unixbench.
299.5
Generic port Nvidia Tegra armv7 (nvidia-tegra-armv7)
Device package device-nvidia-tegra-armv7
Kernel package linux-postmarketos-grate
Features
Flashing
Whether it is possible to flash the device with pmbootstrap flasher.
Works
USB Networking
After connecting the device with USB to your PC, you can connect to it via telnet (initramfs) or SSH (booted system).
Works
Battery
Whether charging and battery level reporting work.
Works
Screen
Whether the display works; ideally with sleep mode and brightness control.
Works
Touchscreen
Works
Multimedia
3D Acceleration
Partial
Audio
Audio playback, microphone, headset and buttons.
Works
Camera
Broken
Connectivity
WiFi
Works
Bluetooth
Works
Miscellaneous
FDE
Full disk encryption and unlocking with unl0kr.
Partial
USB OTG
USB On-The-Go or USB-C Role switching.
Works
Sensors
Accelerometer
Handles automatic screen rotation in many interfaces.
Works

Contributors

  • Worldblender

Maintainer

  • Worldblender

Users owning this device


APX mode

You can put your device in APX mode by pressing the reset button while powering on the device. You should see something like this in your host dmesg :

[94370.043824] usb 1-2.4.1: new high-speed USB device number 55 using xhci_hcd
[94370.121466] usb 1-2.4.1: New USB device found, idVendor=0955, idProduct=7820, bcdDevice= 1.04
[94370.121471] usb 1-2.4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[94370.121473] usb 1-2.4.1: Product: APX
[94370.121475] usb 1-2.4.1: Manufacturer: NVIDIA Corp.

Then you can use nvflash to dump partitions, flash partitions or boot with a custom bootloader. You will need your device SBK.

You can use nvflash_t20 from fusee-tools. It requires lib32-glibc to run.

The nvflash tool is documented by Nvidia on https://http.download.nvidia.com/tegra-public-appnotes/flashing-tools.html#_nvflash

Secure Boot Key (SBK)

To boot with or flash a custom bootloader, you need your device SBK.

The SBK can be retrieved via fastboot (fastboot oem sbk displays the keys on the screen of the device) or calculated from the device CPUID.

To get the CPUID:

  • from the stock Android system, run adb shell then dmesg then look for serialnumber.
  • from APX mode, nvflash --sync returns a line like chip uid from BR is: 0x0000000000000000031234c01234abcd

To convert the CPUID to the SBK, you can use the perl code referenced on xda-developers. The SBK looks like 0xDC5FE101 0x56B90D01 0xD0FEE903 0x8063F302.

How to enter flash mode (requires a custom bootloader)

To enter flash mode, you can boot on 04.EBT.img from https://xdaforums.com/t/nvflash-a-very-powerfull-tool.1745450/: nvflash --sbk 0xDC5FE101 0x56B90D01 0xD0FEE903 0x8063F302 -w --bl 04.EBT.img --go (change the SBK with your own!)

See https://forum.xda-developers.com/iconia-a500/a500-2019-2020-t4039271 for a through explanation of how to go from stock to fully modded.

Installation

It is recommended to install with the generic Nvidia_Tegra_armv7_(nvidia-tegra-armv7) configuration, and to install u-boot so you can use a fully working install.

See https://docs.u-boot.org/en/latest/board/acer/picasso.html for a proper u-boot installation guide. To flash using the NV3P protocol, you first need to boot in flash mode.

If flashing u-boot with fastboot returns the error Too large partition ‘0.1‘, and flashing with nvflash repart-block.bin is too small for writing 4194304 bytes, try with a smaller partition size: nvflash --resume --rawdevicewrite 0 512 repart-block.bin.

If you are on the Skrilax_CZ bootloader then you have to either increase the AKB partition size to 250MB, or use the image provided by worldbender on his google drive (https://drive.google.com/drive/folders/1pMqaS5GaM6N9TAKlNGQZWCG8UTiRn4pK?usp=sharing go to kernel+firmware, download the 6.6 kernel tar file, and extract all the files inside, then after flashing the image you must add the initramfs extra into the boot partition that pmbootstrap generated)

Follow the Installation_guide as usual, where theses specifics have to be specified when requested:

  • Vendor: nvidia
  • Device code-name: tegra-armv7

The user interface may be freely selected, as long as it is not one that requires 3D acceleration. To use KDE Plasma 5, add these lines to /etc/security/pam_env.conf:

QT_IM_MODULE=qtvirtualkeyboard
QT_QUICK_BACKEND=software
LIBGL_ALWAYS_SOFTWARE=1

From here on out, the generated chroot can be either installed to the eMMC, or a microSD card that must be inserted at or before boot time (the latter method allows for dual-booting Android already installed to the eMMC, although it can be directly accessed from the Linux system). The boot partition always has to be flashed to the eMMC in fastboot mode, as it is not possible to boot directly off of a microSD card. If installing to the eMMC, run

$ pmbootstrap install
$ pmbootstrap flasher flash_kernel --partition secboot
$ pmbootstrap flasher flash_rootfs
$ pmbootstrap flasher boot # optional

If installing to a microSD card, run

$ pmbootstrap install --sdcard $DEVICEPATH # path to the device for installation


Depending on what user interface was chosen earlier in the installation process, there may not be enough packages installed to get a fully-loaded GUI. Besides the built-in Wi-Fi, it is also possible to use a USB ethernet adapter, or connect to another computer with a micro-USB cable and get RNDIS access that enables using SSH to the tablet.

After installation to either a microSD card or the eMMC, the screen should look like:

Graphical Interfaces

Interface Info Working
none Y
fbkeyboard Y
GNOME 3
i3wm
Kodi
MATE A lot of graphical glitches. Y
Phosh
Plasma-Desktop
Plasma Mobile
Shelli Y
Sway
Weston Y
Xfce4 Shows the 3 loading dots and then shuts down. (It seems to only happen on the 6.6 kernel) P
LXQt Y

U-Boot

U-Boot has been successfully ported to the acer picasso, see https://docs.u-boot.org/en/latest/board/acer/picasso.html

You will need to provide the SBK (Secure Burn Key) to the tool.

./re-crypt.py --dev a500 --sbk 0xXXXXXXXX 0xXXXXXXXX 0xXXXXXXXX 0xXXXXXXXX

Notes

There is a 6.6 prebuilt kernel available by worldbender but it doesnt have most of the features, and there is a 5.15 kernel which has most of the features

Device is not actively worked on, worldbender is no longer maintaining it

On the 6.6 kernel the onscreen keyboard keeps glitching and in mate the glitches can start happening outside of the onscreen keyboard

See also