Jump to content

Samsung Galaxy Tab 3 7.0 (samsung-lt023g)

From postmarketOS Wiki
Samsung Galaxy Tab 3 7.0
Samsung Galaxy Tab 3 7.0
Samsung Galaxy Tab 3 7.0
Manufacturer Samsung
Name Galaxy Tab 3 7.0
Codename samsung-lt023g
Released 2013
Type tablet
Hardware
Chipset Marvell PXA986
CPU Dual-core 1.2 GHz Cortex-A9
GPU Vivante GC1000
Display 1024×600 TFT
Storage 16GB
Memory 1GB
Architecture armv7
Software
Original software Android
Original version 4.4.2 (Linux 3.4.5)
postmarketOS
Category testing
Pre-built images no
Mainline no
postmarketOS kernel 3.4.113
Unixbench Whet/Dhry score 564.6
Features
Flashing
Works
USB Networking
Works
Internal storage
No data
SD card
No data
Battery
Works
Screen
Works
Touchscreen
Works
Multimedia
3D Acceleration
Broken
Audio
Works
Camera
Works
Camera Flash
No data
Connectivity
WiFi
Partial
Bluetooth
Partial
GPS
No data
NFC
No data
Modem
Calls
Broken
SMS
Broken
Mobile data
Broken
Miscellaneous
FDE
Works
USB OTG
No data
HDMI/DP
No data
Sensors
Accelerometer
Works
Magnetometer
No data
Ambient Light
No data
Proximity
No data
Hall Effect
No data
Haptics
No data
Barometer
No data


Firefox on Matchbox

Maintainer

  • hpagseddy

Users owning this device

  • Catto24 (Notes: lt02wifi)
  • Cdde (Notes: Broken-ish WiFi)
  • Devon (Notes: Works great. Wifi works with fixed ip address)
  • Hacker420
  • Marineboy1
  • MoralCode (Notes: Broken-ish WiFi)
  • Randomtek (Notes: Kids' version (SM-T2105))
  • Rontti (Notes: rootfs only worked on SD card and USER partition)
  • Tfuxu (Notes: Nice old tablet for reading and listening to books, only crippled by its SOC and 1GB of RAM)
  • Threeoh6000 (Notes: Kids Edition, works fine, xfce4)
  • Ysh (Notes: lt02wifi 8GB)


Entering flash mode

  • Power down the device, then press and hold Volume Down + Home + Power simultaneously.
  • Once the device vibrates, release Power, but keep Volume Down and Home held.
  • The device will ask you if you wish to upload a custom OS. Press Volume Up to confirm.
  • Once the device displays "Odin mode" in the top-left of the screen, it is ready for flashing.

Entering recovery mode

  • Power down the device, then press and hold Volume Up + Home + Power simultaneously.
  • Once the device vibrates, release Power, but keep Volume Up and Home held.

Installation

Refer to Installation/Using pmbootstrap for more details.

During pmbootstrap init, select

  • Channel: edge
  • Vendor: samsung
  • Device codename: lt023g
  • wpa_supplicant as the wifi backend
  • User interface: lxqt (recommended, see Incompatible software below for more details; only software rendering is supported)
  • Additional options: extra free space: 500 MB (not needed when installing to sdcard)
  • Extra packages: linux-firmware-mrvl,zstd,networkmanager,networkmanager-cli for wifi firmware, and to allow connecting to wifi using either lxqt nm-applet or the command line interface. See How to get WiFi working for more details.

Before running pmbootstrap install to generate the kernel and rootfs images, you need to choose the rootfs location from the following three options.

  1. USERDATA partition: Change deviceinfo_flash_heimdall_partition_system in deviceinfo to USER and use pmbootstrap flasher flash_rootfs to flash the rootfs after generating the image. (Flashing to SYSTEM with heimdall fails.)
  2. External sd card: Add the --sdcard=/dev/mmcblk... flag.
  3. Installation from recovery mode using a zip file: Add the --android-recovery-zip flag.

Full disk encryption is supported with all of the above options, and is enabled by adding the --fde flag.

Kernel can be installed via pmbootstrap flasher flash_kernel after entering flash mode.

What works

See devicetable on the right.

  • Booting off a microSD card
  • Booting from userdata partition
  • Booting from system partition using Android recovery ZIP option
  • Physical buttons
  • Touch keys
  • Backlight brightness
  • Battery indicator
  • Wayland
  • X11
  • Front and back Camera (/dev/video0 - front camera, /dev/video1 - back camera)
  • Sensors
  • Bluetooth (only shows available devices. Still looking for a way to connect to a device)
  • Audio

What does not work

  • Cellular networking(not exist on some models)
  • 2D and 3D Acceleration

Everything else is untested as of writing this.

Incompatible software

Due to the lack of upstream support for the PXA986 SoC, the kernel remains to a very old 3.4.113 version. As of 2023, there is still largely chance that the software on the edge channel of postmarketOS will run on this device with some notable exceptions. Concerning the choice of the environment, LXQt works out of the box. It has been reported that Xfce4, GNOME, and MATE never reach the desktop.

Some issues related to general software:

  • Software using sandboxing will fail (e.g. epiphany browser). Of course, this includes all flatpaks as well
  • /etc/fstab cannot be used to mount a partition (an unsupported kernel syscall in newer versions of mount prevents the access to the file)
  • Some programs will just fail to start

How hpagseddy get camera working

Right now it's not usable for daily use, just for testing camera quality and checking if camera is working or not. I used the "motion" package from Alpine Linux to capture pictures. If you want to test it too, just use apk add motion command to install that package. Then simply type "motion" and it will start capturing pictures nearly every second. If it doesn't capture pictures or pictures are just black squares then your camera isn't working. For opening pictures, I used feh image viewer to view images but every gallery app works great.

How to get WiFi working

Install linux-firmware-mrvl to get the necessary firmware files. Navigate to /lib/firmware/mrvl and run sudo unzstd *.bin.zst --force to extract firmware (as the kernel does not support compressed firmware), then reboot the device via sudo reboot.

Run sudo ifconfig mlan0 up, then configure wpa_supplicant:

$ wpa_passphrase "YOUR_SSID" "YOUR_PASSPHRASE" | sudo tee /etc/wpa_supplicant/wpa_supplicant.conf

Then run:

sudo rc-service wpa_supplicant start
sudo udhcpc -i mlan0

If the service fails to start, you might need to kill the existing process:

sudo killall wpa_supplicant

Note: You need to turn rndis0 off using sudo ifconfig rndis0 down if you used USB Internet. Also remove usb_internet.start from /etc/local.d.

You can also try running wpa_supplicant manually:

sudo wpa_supplicant -u -Dnl80211 -B -c /etc/wpa_supplicant/wpa_supplicant.conf -imlan0

You can also use NetworkManager. Stop and disable wpa_supplicant, then restart and enable NetworkManager (sudo rc-service wpa_supplicant stop; sudo rc-update del wpa_supplicant; sudo rc-service networkmanager restart; sudo rc-update add networkmanager). After connecting to a hotspot, run udhcpc to get a DHCP lease: sudo udhcpc -i mlan0.

About GPU

The GPU is Vivante GC1000 which has open source drivers but we can't get it work yet. The reverse engineered driver is called etnaviv and the compiling process is a little bit complex. If anyone figures it out don't forget to tag @hpagseddy at postmarketOS Matrix server.

Wayland works, but you may get better battery life with X11 (tested GNOME vs MATE).

Mainline

The PXA986 SoC has no support upstream (https://www.kernel.org/doc/html/latest/arm/marvell.html#mmp-mmp2-mmp3-family-communication-processor).

Links