Update readme

Signed-off-by: Ihor Ivanov <toulmee@gmail.com>
This commit is contained in:
Ihor Ivanov
2021-06-21 11:37:22 +03:00
parent 889ab8118c
commit 9860ad28ac
12 changed files with 112 additions and 191 deletions

View File

@@ -1,44 +1,48 @@
Common device configuration for the Unihertz Atom L and XL
Csommon device configuration for the Unihertz Jelly2
=================================================
This common device tree is intended for the usage in a LineageOS or similar building environment.
If you are looking for a special device tree for the usage in a TWRP or similar environment head over to https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_LXL.
If you are looking for a special device tree for the usage in a TWRP or similar environment head over to https://github.com/Meetoul/twrp_device_Unihertz_Jelly2.
The Unihertz Atom L (codenamed simply _"Atom_L"_) and the Atom XL (codenamed simply _"Atom_XL"_) are two rugged small smartphones from Unihertz, released in July 2020. They are both almost identical except the Atom XL offers an integrated digital mobile radio (DMR).
The Unihertz Jelly2 (codenamed simply "Jelly2") is a smallest modern Android smartphone from Unihertz, released in March 1, 2021.
![](docs/images/jelly2.png)
| Basic | Spec Sheet |
| -----------------------:|:------------------------------------------------------------------------------------------------------------------------------ |
| CPU | Octa-core |
| Chipset | Mediatek Helio P60 |
| GPU | Mali-G72 MP3 |
| Memory | 6 GB RAM |
| Shipped Android Version | 10 |
| Storage | 128 GB |
| Battery | Non-removable Li-Po 2000 mAh battery |
| Display | 480x854 pixels, 3.0 inch |
| Camera (Rear - Main) | 16MP |
| Camera (Front) | 8MP |
# Dependencies
Additionally to this common device tree, you'll need one or both model device trees
Additionally to this common device tree, you'll need model device tree
- [Atom L (model)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L)
- [Atom XL (model)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL)
and one or all of the four regional device trees
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_EEA)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_EEA)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_TEE)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_TEE)
- [Jelly2 Region TEE (non-european union)](https://github.com/Meetoul/android_device_Unihertz_Jelly2_TEE)
## Releases
For the actual releases head on over to the device tree of the individual devices:
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_EEA/releases)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_EEA/releases)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_TEE/releases)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_TEE/releases)
- [Jelly2 Region TEE (non-european union)](https://github.com/Meetoul/android_device_Unihertz_Jelly2_TEE/releases)
## Documentations
- [HOW-TO-BUILD.md](docs/HOW-TO-BUILD.md) - Building instructions for LineageOS 17.1.
- [HOW-TO-INSTALL.md](docs/HOW-TO-INSTALL.md) - Installation instructions for the Atom L/XL.
- [HOW-TO-UPDATE.md](docs/HOW-TO-UPDATE.md) - Update instructions for the Atom L/XL.
- [HOW-TO-EXTRACT_FILES.md](docs/HOW-TO-EXTRACT_FILES.md) - Instructions to extract files directly from the Atom L/XL stock rom files.
- [HOW-TO-INSTALL.md](docs/HOW-TO-INSTALL.md) - Installation instructions for the Jelly2.
- [HOW-TO-UPDATE.md](docs/HOW-TO-UPDATE.md) - Update instructions for the Jelly.2
- [HOW-TO-EXTRACT_FILES.md](docs/HOW-TO-EXTRACT_FILES.md) - Instructions to extract files directly from the Jelly2 stock rom files.
- [HOW-TO-EXTRACT_SEPOLICY.md](docs/HOW-TO-EXTRACT_SEPOLICY.md) - A little guide to extract sepolicy rules from stock or phone.
- [HOW-TO-FLASH-STOCK.md](docs/HOW-TO-FLASH-STOCK.md) - Instructions on how to use the SP Flash Tool for MTK based devices.
- [HOW-TO-FLASH-SUPER.md](docs/HOW-TO-FLASH-SUPER.md) - Instructions on how to modify super.img and flashing it onto the device.
## Special Thanks To
- [PeterCxy from the XDA forum](https://forum.xda-developers.com/member.php?u=5351691) for helping me and providing the device tree for Atom L.
- [The device tree for the Atom L](https://cgit.typeblog.net/android/device/unihertz/Atom_L/) which was a great step-by-step guide on how to setup my own device tree.
- [ADeadTrousers](https://github.com/ADeadTrousers) - I used his [AtomL/XL device tree](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_LXL) as a base for this one. Phones hardware are almost identical, so device trees are almost identical as well.

View File

@@ -1,4 +1,4 @@
How to build LineageOS 17.1 for the Unihertz Atom L and XL
How to build LineageOS 17.1 for the Unihertz Jelly2
=================================================
This guide is focused on building the ROM under a Linux host environment.
@@ -49,7 +49,7 @@ Add the following
```bash
# add Android SDK platform tools to path
if [ -d "$HOME/platform-tools" ] ; then
PATH="$HOME/platform-tools:$PATH"
PATH="$HOME/platform-tools:$PATH"
fi
```
@@ -80,7 +80,7 @@ Add the following
```bash
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
PATH="$HOME/bin:$PATH"
fi
```
@@ -146,19 +146,9 @@ Add the following
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remove-project name="LineageOS/android_packages_apps_FMRadio"/>
<project name="ADeadTrousers/android_device_Unihertz_Atom_LXL" path="device/Unihertz/Atom_LXL" remote="github" revision="master" />
<!-- For the Atom L model add -->
<project name="ADeadTrousers/android_device_Unihertz_Atom_L" path="device/Unihertz/Atom_L" remote="github" revision="master" />
<!-- For the Atom XL model add -->
<project name="ADeadTrousers/android_device_Unihertz_Atom_XL" path="device/Unihertz/Atom_XL" remote="github" revision="master" />
<!-- For the Atom L region eea add -->
<project name="ADeadTrousers/android_device_Unihertz_Atom_L_EEA" path="device/Unihertz/Atom_L_EEA" remote="github" revision="master" />
<!-- For the Atom XL region eea add -->
<project name="ADeadTrousers/android_device_Unihertz_Atom_XL_EEA" path="device/Unihertz/Atom_XL_EEA" remote="github" revision="master" />
<!-- For the Atom L region tee add -->
<project name="ADeadTrousers/android_device_Unihertz_Atom_L_TEE" path="device/Unihertz/Atom_L_TEE" remote="github" revision="master" />
<!-- For the Atom XL region tee add -->
<project name="ADeadTrousers/android_device_Unihertz_Atom_XL_TEE" path="device/Unihertz/Atom_XL_TEE" remote="github" revision="master" />
<project name="Meetoul/android_device_Unihertz_Jelly2" path="device/Unihertz/Jelly2" remote="github" revision="master" />
<project name="Meetoul/android_device_Unihertz_Jelly2_TEE" path="device/Unihertz/Jelly2_TEE" remote="github" revision="master" />
</manifest>
```
@@ -201,7 +191,7 @@ for d in ./*/ ; do (cd "$d" && git lfs pull); done
If you don't want to include GAPPS at all or want to change the apps to be installed
```bash
gedit ~/android/lineage/device/Unihertz/Atom_LXL/gapps_prop.mk
gedit ~/android/lineage/device/Unihertz/Jelly2/gapps_prop.mk
```
[Documentation of the possible settings](https://github.com/opengapps/aosp_build/blob/master/README.md)
@@ -215,14 +205,8 @@ First follow [the instructions to extract and mount the stock rom files](HOW-TO-
Then extract all the files we need
```bash
# For the Atom L EEA use
~/android/lineage/device/Unihertz/Atom_L_EEA/extract-files.sh ~/unihertz/extracted
# For the Atom XL EEA use
~/android/lineage/device/Unihertz/Atom_XL_EEA/extract-files.sh ~/unihertz/extracted
# For the Atom L TEE use
~/android/lineage/device/Unihertz/Atom_L_TEE/extract-files.sh ~/unihertz/extracted
# For the Atom XL TEE use
~/android/lineage/device/Unihertz/Atom_XL_TEE/extract-files.sh ~/unihertz/extracted
# For the Jelly2 TEE use
~/android/lineage/device/Unihertz/Jelly2_TEE/extract-files.sh ~/unihertz/extracted
```
### Use an allready rooted device
@@ -230,14 +214,8 @@ Then extract all the files we need
If you were able to root your device this is just a small step. Plug in your device and do the follwing
```bash
# For the Atom L EEA use
~/android/lineage/device/Unihertz/Atom_L_EEA/extract-files.sh
# For the Atom XL EEA use
~/android/lineage/device/Unihertz/Atom_XL_EEA/extract-files.sh
# For the Atom L TEE use
~/android/lineage/device/Unihertz/Atom_L_TEE/extract-files.sh
# For the Atom XL TEE use
~/android/lineage/device/Unihertz/Atom_XL_TEE/extract-files.sh
# For the Jelly2 TEE use
~/android/lineage/device/Unihertz/Jelly2_TEE/extract-files.sh
```
## Building the rom
@@ -247,14 +225,8 @@ Prepare the build
```bash
cd ~/android/lineage
source build/envsetup.sh
# For the Atom L EEA use
breakfast Atom_L_EEA
# For the Atom XL EEA use
breakfast Atom_XL_EEA
# For the Atom L TEE use
breakfast Atom_L_TEE
# For the Atom XL TEE use
breakfast Atom_XL_TEE
# For the Jelly2 TEE use
breakfast Jelly2_TEE
```
Do the actual build
@@ -263,14 +235,8 @@ Do the actual build
cd ~/android/lineage
ccache -M 50G
croot
# For the Atom L EEA use
brunch Atom_L_EEA
# For the Atom XL EEA use
brunch Atom_XL_EEA
# For the Atom L TEE use
brunch Atom_L_TEE
# For the Atom XL TEE use
brunch Atom_XL_TEE
# For the Jelly2 TEE use
brunch Jelly2_TEE
```
## Updating the sorces (at a later time)

View File

@@ -1,4 +1,4 @@
How to extract informations from the Unihertz Atom L and XL
How to extract informations from the Unihertz Jelly2
=================================================
## Installing needed utilities
@@ -13,14 +13,8 @@ Make sure unpack_bootimg is build
cd ~/android/lineage
source build/envsetup.sh
# For the Atom L EEA use
breakfast Atom_L_EEA
# For the atom XL EEA use
breakfast Atom_XL_EEA
# For the Atom L TEE use
breakfast Atom_L_TEE
# For the atom XL TEE use
breakfast Atom_XL_TEE
# For the Jelly2 TEE use
breakfast Jelly2_TEE
make unpack_bootimg
```
@@ -83,6 +77,6 @@ To cleanup just unmout the images
```bash
sudo umount ~/unihertz/extracted/system/product
sudo umount ~/unihertz/extracted/system/vendor
sudo umount ~/unihertz/extracted/system/vendo
sudo umount ~/unihertz/extracted/system
```

View File

@@ -1,4 +1,4 @@
How to extract sepolicies from the Unihertz Atom L and XL
How to extract sepolicies from the Unihertz Jelly2
=================================================
### Why would you even do that?

View File

@@ -25,14 +25,8 @@ Make sure lpmake is build
cd ~/android/lineage
source build/envsetup.sh
# For the Atom L EEA use
breakfast Atom_L_EEA
# For the atom XL EEA use
breakfast Atom_XL_EEA
# For the Atom L TEE use
breakfast Atom_L_TEE
# For the atom XL TEE use
breakfast Atom_XL_TEE
# For the Jelly2 TEE use
breakfast Jelly2_TEE
make lpmake
```
@@ -67,7 +61,7 @@ Add the following
```bash
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
PATH="$HOME/bin:$PATH"
fi
```
@@ -85,12 +79,9 @@ Create the folder `~/super` and copy `vendor.img` into it.
## Extracting image files from LineageOS rom files
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_EEA/releases)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_EEA/releases)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_TEE/releases)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_TEE/releases)
- [Jelly2 Region TEE (non-european union)](https://github.com/Meetoul/android_device_Unihertz_Jelly2_TEE/releases)
Download `lineage-17.1-XXX-UNOFFICIAL-YYY-signed.zip` from the latest release page of your device.
Download `lineage-17.1-XXX-UNOFFICIAL-YYY.zip` from the latest release page of your device.
Extract the files from the zip archive into `~/super`.
Then we need to extract the brotli compressed files

View File

@@ -1,4 +1,4 @@
How to install LineageOS 17.1 for the Unihertz Atom L and XL
How to install LineageOS 17.1 for the Unihertz Jelly2
=================================================
## Getting adb and fastboot
@@ -31,7 +31,7 @@ Add the following
```bash
# add Android SDK platform tools to path
if [ -d "$HOME/platform-tools" ] ; then
PATH="$HOME/platform-tools:$PATH"
PATH="$HOME/platform-tools:$PATH"
fi
```
@@ -49,7 +49,7 @@ Note: I've had reports that under Windows adb/fastboot might not recognize the p
## Unlocking
To be able to install anything on the Unihertz Atom L or XL we first need to unlock the bootloader.
To be able to install anything on the Unihertz Jelly2 we first need to unlock the bootloader.
1. Boot your device into the official OS.
2. Go to `Settings > About phone`, tap the "build number" several times to enable developer settings.
@@ -72,10 +72,7 @@ To get LineageOS to boot proberly we also need to disable AVB. Otherwise the boo
## Installing TWRP recovery
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_L_EEA/releases)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_XL_EEA/releases)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_L_TEE/releases)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_XL_TEE/releases)
- [Jelly2 Region TEE (non-european union)](https://github.com/Meetoul/twrp_device_Unihertz_Jelly2_TEE/releases)
1. Download `recovery.img` from the latest release page of your device.
2. Connect your phone to your PC and open a terminal or a command line window.
@@ -86,12 +83,9 @@ To get LineageOS to boot proberly we also need to disable AVB. Otherwise the boo
## Installing LineageOS ROM
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_EEA/releases)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_EEA/releases)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_TEE/releases)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_TEE/releases)
- [Jelly2 Region TEE (non-european union)](https://github.com/Meetoul/android_device_Unihertz_Jelly2_TEE/releases)
1. Download `lineage-17.1-XXX-UNOFFICIAL-YYY-signed.zip` from the latest release page of your device.
1. Download `lineage-17.1-XXX-UNOFFICIAL-YYY.zip` from the latest release page of your device.
2. Connect your phone to your PC and open a terminal or a command line window.
3. Run `adb reboot recovery` on your PC or simply hold volume up while turning power on to boot your device into the recovery.
4. In TWRP select `Wipe > Advanced Wipe`.
@@ -117,25 +111,3 @@ To get LineageOS to boot proberly we also need to disable AVB. Otherwise the boo
1. (Optional) At this point, you can then install the latest Magisk and/or OpenGAPPS Nano at your will. Note that the size of the system partition might only be enough for the "nano" variant of OpenGAPPS. If installing Magisk / OpenGAPPS fails, you can try rebooting into recovery again in advanced menus, then try installing them again.
2. Select `Reboot System` to reboot into LineageOS and enjoy. Note that Magisk might cause your device to boot loop once or twice but it will eventually boot.
## Troubleshooting
### Partitions cannot be resized
If you get an error 7 mentioning `assert failed: update_dynamic_partitions(package_extract_file("dynamic_partitions_op_list"))` you need to do the following:
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_EEA/releases/download/20210226-alpha/super.img-eea.7z)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_EEA/releases/download/20201219-alpha/super.img-seea.7z)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_TEE/releases/download/20210415-alpha/super.img-tee.7z)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_TEE/releases/download/20210415-alpha/super.img-stee.7z)
1. Download `super.img-YYY.7z` from the release page of your device which corresponds with the latest stock rom release.
2. Extract the already resized copy of `super.img` from the downloaded archive.
5. Run `adb push super.img /external_sd` on your PC.
6. In TWRP select `Install`.
7. Use `Select Storage` to switch to your SD card.
8. Use `Install Image` to switch to image installation mode.
9. Select `super.img` from the list.
10. Select `Super (Product, Vendor, System)` partition.
11. Swipe the slider on the bottom to the right to confirm.
12. Continue with **Installing LineageOS ROM**

View File

@@ -1,14 +1,11 @@
How to update LineageOS 17.1 for the Unihertz Atom L and XL
How to update LineageOS 17.1 for the Unihertz Jelly2
=================================================
Every piece of software should allways kept up-to-date. Therefore even this ROM get updates from time to time and you should allways apply these to your device.
## (optional) Updating TWRP recovery
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_L_EEA/releases)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_XL_EEA/releases)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_L_TEE/releases)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/twrp_device_Unihertz_Atom_XL_TEE/releases)
- [Jelly2 Region TEE (non-european union)](https://github.com/Meetoul/twrp_device_Unihertz_Jelly2_TEE/releases)
1. Download `recovery.img` from the latest release page of your device.
2. Connect your phone to your PC and open a terminal or a command line window.
@@ -24,12 +21,9 @@ Every piece of software should allways kept up-to-date. Therefore even this ROM
## Updating LineageOS ROM
- [Atom L Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_EEA/releases)
- [Atom XL Region EEA (european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_EEA/releases)
- [Atom L Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_L_TEE/releases)
- [Atom XL Region TEE (non-european union)](https://github.com/ADeadTrousers/android_device_Unihertz_Atom_XL_TEE/releases)
- [Jelly2 Region TEE (non-european union)](https://github.com/Meetoul/android_device_Unihertz_Jelly2_TEE/releases)
1. Download `lineage-17.1-XXX-UNOFFICIAL-YYY-signed.zip` from the latest release page of your device.
1. Download `lineage-17.1-XXX-UNOFFICIAL-YYY.zip` from the latest release page of your device.
2. Connect your phone to your PC and open a terminal or a command line window.
3. Run `adb reboot recovery` on your PC or simply hold volume up while turning power on to boot your device into the recovery.
4. (Optional) In TWRP select `Wipe > Advanced Wipe`.

View File

@@ -1,10 +1,10 @@
Documentations for the Unihertz Atom L and XL
Documentations for the Unihertz Jelly2
=================================================
- [HOW-TO-BUILD.md](HOW-TO-BUILD.md) - Building instructions for LineageOS 17.1.
- [HOW-TO-INSTALL.md](HOW-TO-INSTALL.md) - Installation instructions for the Atom L/XL.
- [HOW-TO-UPDATE.md](HOW-TO-UPDATE.md) - Update instructions for the Atom L/XL.
- [HOW-TO-EXTRACT_FILES.md](HOW-TO-EXTRACT_FILES.md) - Instructions to extract files directly from the Atom L/XL stock rom files.
- [HOW-TO-INSTALL.md](HOW-TO-INSTALL.md) - Installation instructions for the Jelly2.
- [HOW-TO-UPDATE.md](HOW-TO-UPDATE.md) - Update instructions for the Jelly2.
- [HOW-TO-EXTRACT_FILES.md](HOW-TO-EXTRACT_FILES.md) - Instructions to extract files directly from the Jelly2 stock rom files.
- [HOW-TO-EXTRACT_SEPOLICY.md](HOW-TO-EXTRACT_SEPOLICY.md) - A little guide to extract sepolicy rules from stock or phone.
- [HOW-TO-FLASH-STOCK.md](HOW-TO-FLASH-STOCK.md) - Instructions on how to use the SP Flash Tool for MTK based devices.
- [HOW-TO-FLASH-SUPER.md](HOW-TO-FLASH-SUPER.md) - Instructions on how to modify super.img and flashing it onto the device.

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

BIN
docs/images/jelly2.png Normal file
View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 416 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB