[Android 11] Unofficial Lineage OS 18.1 for A21s

Search This thread

grccorps

Member
Mar 1, 2012
47
66
Seoul
WARNING + DISCLAIMER:
By installing this custom ROM, you are VOIDING your warranty. Also, installation of this ROM WILL TRIP KNOX PERMANENTLY, and render apps such as Samsung Health, Private Folder, (+ any apps that depend on KNOX) useless until you get the phone's motherboard replaced at the Samsung C/S center.
Although this software is released in the hope that it will be useful, there is NO GUARANTEE that installing this will not cause any harm to your device. I TAKE NO RESPONSIBILITY FOR ANY BRICKED DEVICES, DAMAGED HARDWARE, OR ANY OTHER PROBLEMS CAUSED BY THIS ROM. You are using this ROM at YOUR OWN RISK. I strongly recommend that you DO NOT continue to the steps below UNLESS YOU FULLY UNDERSTAND WHAT YOU ARE DOING.
While this ROM has been tested with South Korean variant of Galaxy A21s (SM-A217N, CSC changed from LUC->SKC), please keep in mind that it hasn't been tested on any other variant (such as A217F, A217M.)
I would like to express special thanks to all the developers who contributed to the LineageOS port for Galaxy Tab S6 Lite + all the other developers who contributed to sepolicy & hardware parts for Samsung SLSI (Exynos) devices. Porting LineageOS to A21s would have been much harder without them.

After doing some research on this device, I was able to port LineageOS. The original sources are based on Galaxy Tab S6 Lite Wi-Fi version (gta4xlwifi), with some heavy modifications made for the A21s. In the process, I was able to fix some of the problems that were found on GSI (MTP, Fingerprint removal issues, NFC, Wi-Fi hotspot and direct), and added in some enhancements to the kernel.

Unfortunately, installation of this ROM requires Lineage Recovery, and since FBE (File-based-encryption) is enabled by default, it is incompatible with the TWRP.

Screenshot:

COMPLETE.png


NOT WORKING:

- Cell Broadcast (Emergency Messages) is broken in South Korea. The phone shows notifications, but the messages appear broken. Not sure about other countries. FIXED in South Korea as of 2021/9/2. However, its functionality in other countries hasn't been tested.
- Samsung's Proprietary Apps
- In order to use Wi-Fi Direct, you need to install a Wi-Fi direct sharing app from Google Play, as LineageOS doesn't have a sharing app installed by default
- Auto Brightness (The phone doesn't have the sensors for it anyway)
- On very rare occasions(probably once in more than 20 boots), the device's RIL (Phone calls, Data) might start up late when booting. If you see "No service" after booting, please wait for 30-60 seconds.
- VoLTE & VoWifi(not tested) - Unfortunately, this is located deep within Samsung's framework. AOSP-based roms for other Samsung devices don't support it either. Someday, this might be fixed.....

WORKING:
- Everything Else

GITHUB:
Device Source Tree: android_device_samsung_a21s, android_device_samsung_universal3830-common
Kernel: android_kernel_samsung_universal3830-common

Instructions for Installation:

1. BEFORE INSTALLING, make sure that you have UNLOCKED the bootloader of your device. This is a great guide that show how to do it. Also, the phone must be on the Stock ANDROID 11. If you are on binary U6, please use the recovery tar for U6.

2. Download the Lineage Recovery, ROM, Google Apps, ADB, and Odin. Unzip ADB and Odin to somewhere appropriate.

- ROM
- Recovery / Recovery(for U6)
- Google Apps
- ADB
- Odin

3. Enable USB Debugging on the device. Go to settings->About phone->Software information, and tap the build number several times until you see the notification that the devloper settings have been enabled. After enabling developer settings, go to settings->developer settings and check USB debugging.

1.jpg
2.jpg
3.jpg

4.jpg
5.jpg


4. Open Command Prompt, and type "cd <the path where you saved ADB to>".

6.png


4-1. As a test, type "adb devices". After typing it, the phone should show a screen that asks you to grant permissions for USB debugging. Select Yes.

5. On the phone, start holding down the Volume Up and Down keys. KEEP THE KEYS PRESSED UNTIL THE PHONE REBOOTS AFTER YOU TYPE THE COMMAND IN THE NEXT STEP.

9.jpg


6. While holding the keys down. type in the command "adb reboot recovery" on the command line.

10.png


11. After the phone reboots into download mode, press volume up to continue. Make sure that you see the "OEM LOCK: OFF" before continuing.

11.jpg
12.jpg


12. Open Odin. After opening Odin, click on AP, and select the Lineage Recovery Tar file that you downloaded in the step 2. After that, click on Start.

13.png

14.png

15.png


13. After a few seconds, if everything goes well, Odin should show "PASS" and the device should reboot into Lineage Recovery. After the device enters recovery, tap on Apply update->Apply from ADB. In some cases, touchscreen may be unresponsive or slow. If that happens, use Volume Keys to navigate and Power key to select. KEEP THE DEVICE CONNECTED TO THE COMPUTER.

16.png

17.jpg
18.jpg


14. After choosing Apply from ADB, type "adb sideload <the path where you saved the ROM file>" on the command prompt and press enter.

19.jpg
20.png


<CONTINUED ON THE NEXT POST>
 

Attachments

  • 19.jpg
    19.jpg
    1.4 MB · Views: 781
Last edited:

grccorps

Member
Mar 1, 2012
47
66
Seoul
15. If everything goes right, the device should show "script succeeded: result was [1.000000]" While ADB may show errors such as "Failed to read command" at 47%, this is no problem as long as the device says that the script succeeded.

22.jpg


16. Now it is time to install Google apps. On the phone, tap on Apply from ADB again, and on the computer, type "adb sideload <the path where you saved Google apps to>" and press enter.

24.jpg


2x.png


17. After about 1-2 minutes, installation should be complete. Again, ADB might show "Failed to read command" errors. As long as the phone says that it was success, this is no problem. After installing, click on the "back" icon shown below.

27.jpg


18. Choose Wipe data/factory reset, and reboot the device.

28.jpg
29.jpg
30.jpg
31.jpg


19. If everything went well, the phone should reboot into LineageOS. Set up the device and Enjoy!

32.jpg
33.jpg
34.jpg
 

grccorps

Member
Mar 1, 2012
47
66
Seoul
ADDITIONAL TIP: HOW TO ROOT THE PHONE ON LINEAGE 18

On Lineage 18, I patched the kernel so that it would have no problem with the official Magisk app.
Therefore, you DON'T need to use a version that has been modified for A21s.
If you want to have root, you can get the Official Magisk App.

1. Download & Install Magisk from the official source.
2. Select Install. When it asks you to select the boot image, choose the boot image from the Lineage OS ROM file that you downloaded from the step above. After patching the boot image, move & rename it to something you can type easily (ex. /sdcard/rooting.img)
3. Enable developer settings (Settings->About phone->Tap on build number)
4. Go to developer settings and enable USB debugging & root permissions for usb debugging.
5. Connect the phone to the PC.
6. Open the command prompt, and type "cd <the folder where you installed adb>. After that, type "adb root". If the phone asks you for permissions for USB debugging, allow it.
7. After the adb shows "Restarting adbd as root", type "adb shell dd if=/sdcard/<the path to saved boot image>" of=/dev/block/by-name/boot". The output should be something like
" *** records in
*** records out
*** bytes (** M) copied, *** s, **M/s"

8. After seeing the output above, reboot the phone. After rebooting, it should be rooted.
 
Thanks for your work buddy.....
I got Magisk installed an easier way...
Download Magisk Canary .apk
Change .apk to .zip then install the same way as the Rom and Gapps, by ADB sideload.
Factory reset/Format data and reboot.
Done

All we need is a working TWRP.... I've got one working but it shows no files and won't mount anything..... e.g. system, data etc
 

Gxzllen

Member
Jul 4, 2021
14
1
Thanks for your work buddy.....
I got Magisk installed an easier way...
Download Magisk Canary .apk
Change .apk to .zip then install the same way as the Rom and Gapps, by ADB sideload.
Factory reset/Format data and reboot.
Done

All we need is a working TWRP.... I've got one working but it shows no files and won't mount anything..... e.g. system, data etc
What is your device model ...is it SM A217F/DS android 11 U6? Pls reply..
 

grccorps

Member
Mar 1, 2012
47
66
Seoul
Can i download it on u6?😅i'm afraid my phone brick if i do it

If you're on U6, there's a chance that Odin might fail on vbmeta.

A possible solution is:
1. Download Magisk (version doesn't matter)
2. Download the U6 firmware that you're on
3. Using Magisk, patch the AP tar of U6 firmware
4. In the Lineage recovery tar file that you downloaded from above, replace the vbmeta.img with the one from Magisk-patched AP tar file
5. Proceed with the installation as written above

A more fail-safe method would be:
1. Root the phone using a patched Magisk app
2. unpack the recovery.img in the Lineage recovery tar file and copy it into your device's SD card
3. Enable USB debugging on the phone, and connect the phone to adb
4. Using command prompt, type
"cd <path to adb>"
"adb shell"
"su"
"dd if=/sdcard/<path to lineage recovery image> of=/dev/block/by-name/recovery"
"reboot recovery"

After typing these, your device will reboot into Lineage Recovery. After entering recovery, select apply update->apply from adb, and proceed with the installatiom above from Step 14.
 

Gxzllen

Member
Jul 4, 2021
14
1
If you're on U6, there's a chance that Odin might fail on vbmeta.

A possible solution is:
1. Download Magisk (version doesn't matter)
2. Download the U6 firmware that you're on
3. Using Magisk, patch the AP tar of U6 firmware
4. In the Lineage recovery tar file that you downloaded from above, replace the vbmeta.img with the one from Magisk-patched AP tar file
5. Proceed with the installation as written above

A more fail-safe method would be:
1. Root the phone using a patched Magisk app
2. unpack the recovery.img in the Lineage recovery tar file and copy it into your device's SD card
3. Enable USB debugging on the phone, and connect the phone to adb
4. Using command prompt, type
"cd <path to adb>"
"adb shell"
"su"
"dd if=/sdcard/<path to lineage recovery image> of=/dev/block/by-name/recovery"
"reboot recovery"

After typing these, your device will reboot into Lineage Recovery. After entering recovery, select apply update->apply from adb, and proceed with the installatiom above from Step 14.
nice thankyou bro
 

NuzzaimStark

Member
Apr 13, 2019
34
8
Samsung Galaxy A21s
Successfully Flashed! Everything work fine.
Model- A217f /DS
U6 binary ,Android 11 latest.

 

Attachments

  • Screenshot_20210801-151319_Trebuchet.png
    Screenshot_20210801-151319_Trebuchet.png
    191.2 KB · Views: 405
  • Screenshot_20210801-151314_Trebuchet.png
    Screenshot_20210801-151314_Trebuchet.png
    856.8 KB · Views: 361
  • Screenshot_20210801-151331_Trebuchet.png
    Screenshot_20210801-151331_Trebuchet.png
    392.3 KB · Views: 366
  • IMG_20210801_151538_633.jpg
    IMG_20210801_151538_633.jpg
    37.6 KB · Views: 386
Last edited:

grccorps

Member
Mar 1, 2012
47
66
Seoul
Successfully Flashed! Everything work fine.
Model- A217f /DS
U6 binary ,Android 11 latest.

Note: Encountered some problems when I flash (vbmeta) ie, its because of its only for u5.

Odin showed failed at last ,
Phone was unable to boot but
By using hijacking software , bootloader was again running . but when auto reboot lineage recovery was automatically loaded, and tryed your above steps and everything working fine,

Note: pubg is very very better in this ROM.
Close range is also better.

Thankyou grccorps .
Thank you for your review. It's such a great news that it's working on U6.
Yes, PUBG is a hell of a game, Krafton has done such a great job with it :) The kernel has newer mali graphics driver (R26P0 -> R31P0), maybe that could've done the trick (or it may just be due to LineageOS being much, much lighter than One UI)
How is the battery? While I wasn't able to find any abnormal battery drains (both in standby and stress conditions), I'm concered about how it would perform in other devices.
 

Phuc230204

Member
Aug 2, 2021
5
0
Samsung Galaxy A21s
Successfully Flashed! Everything work fine.
Model- A217f /DS
U6 binary ,Android 11 latest.

Note: Encountered some problems when I flash (vbmeta) ie, its because of its only for u5.

Odin showed failed at last ,
Phone was unable to boot but
By using hijacking software , bootloader was again running . but when auto reboot lineage recovery was automatically loaded, and tryed your above steps and everything working fine,

Note: pubg is very very better in this ROM.
Close range is also better.

Thankyou grccorps .
Can you be a little more specific? my phone U6 but idk how to flash recovery can or you give me email so i can exchange?
 

Mihai03

New member
Aug 3, 2021
3
0
hi,so i get this message "only official released binaries are allowed''in download mode,after the vbmeta failed...
SM-A217F/DSN
and in frp hijacker i get ''check device connection or com ports''
 
Last edited:

Mihai03

New member
Aug 3, 2021
3
0
Update:so i succeded to hijack my phone after the error but it wouldn't boot into recovery,and i got everytime a screen with a warning that my phone is not using samsung's official software,and when i press the power button to continue,like it shows,it boots automatically into android.
So what should i do?
And do i need root to do this?
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 8
    ADDITIONAL TIP: HOW TO ROOT THE PHONE ON LINEAGE 18

    On Lineage 18, I patched the kernel so that it would have no problem with the official Magisk app.
    Therefore, you DON'T need to use a version that has been modified for A21s.
    If you want to have root, you can get the Official Magisk App.

    1. Download & Install Magisk from the official source.
    2. Select Install. When it asks you to select the boot image, choose the boot image from the Lineage OS ROM file that you downloaded from the step above. After patching the boot image, move & rename it to something you can type easily (ex. /sdcard/rooting.img)
    3. Enable developer settings (Settings->About phone->Tap on build number)
    4. Go to developer settings and enable USB debugging & root permissions for usb debugging.
    5. Connect the phone to the PC.
    6. Open the command prompt, and type "cd <the folder where you installed adb>. After that, type "adb root". If the phone asks you for permissions for USB debugging, allow it.
    7. After the adb shows "Restarting adbd as root", type "adb shell dd if=/sdcard/<the path to saved boot image>" of=/dev/block/by-name/boot". The output should be something like
    " *** records in
    *** records out
    *** bytes (** M) copied, *** s, **M/s"

    8. After seeing the output above, reboot the phone. After rebooting, it should be rooted.
    7
    WARNING + DISCLAIMER:
    By installing this custom ROM, you are VOIDING your warranty. Also, installation of this ROM WILL TRIP KNOX PERMANENTLY, and render apps such as Samsung Health, Private Folder, (+ any apps that depend on KNOX) useless until you get the phone's motherboard replaced at the Samsung C/S center.
    Although this software is released in the hope that it will be useful, there is NO GUARANTEE that installing this will not cause any harm to your device. I TAKE NO RESPONSIBILITY FOR ANY BRICKED DEVICES, DAMAGED HARDWARE, OR ANY OTHER PROBLEMS CAUSED BY THIS ROM. You are using this ROM at YOUR OWN RISK. I strongly recommend that you DO NOT continue to the steps below UNLESS YOU FULLY UNDERSTAND WHAT YOU ARE DOING.
    While this ROM has been tested with South Korean variant of Galaxy A21s (SM-A217N, CSC changed from LUC->SKC), please keep in mind that it hasn't been tested on any other variant (such as A217F, A217M.)
    I would like to express special thanks to all the developers who contributed to the LineageOS port for Galaxy Tab S6 Lite + all the other developers who contributed to sepolicy & hardware parts for Samsung SLSI (Exynos) devices. Porting LineageOS to A21s would have been much harder without them.

    After doing some research on this device, I was able to port LineageOS. The original sources are based on Galaxy Tab S6 Lite Wi-Fi version (gta4xlwifi), with some heavy modifications made for the A21s. In the process, I was able to fix some of the problems that were found on GSI (MTP, Fingerprint removal issues, NFC, Wi-Fi hotspot and direct), and added in some enhancements to the kernel.

    Unfortunately, installation of this ROM requires Lineage Recovery, and since FBE (File-based-encryption) is enabled by default, it is incompatible with the TWRP.

    Screenshot:

    COMPLETE.png


    NOT WORKING:

    - Cell Broadcast (Emergency Messages) is broken in South Korea. The phone shows notifications, but the messages appear broken. Not sure about other countries. FIXED in South Korea as of 2021/9/2. However, its functionality in other countries hasn't been tested.
    - Samsung's Proprietary Apps
    - In order to use Wi-Fi Direct, you need to install a Wi-Fi direct sharing app from Google Play, as LineageOS doesn't have a sharing app installed by default
    - Auto Brightness (The phone doesn't have the sensors for it anyway)
    - On very rare occasions(probably once in more than 20 boots), the device's RIL (Phone calls, Data) might start up late when booting. If you see "No service" after booting, please wait for 30-60 seconds.
    - VoLTE & VoWifi(not tested) - Unfortunately, this is located deep within Samsung's framework. AOSP-based roms for other Samsung devices don't support it either. Someday, this might be fixed.....

    WORKING:
    - Everything Else

    GITHUB:
    Device Source Tree: android_device_samsung_a21s, android_device_samsung_universal3830-common
    Kernel: android_kernel_samsung_universal3830-common

    Instructions for Installation:

    1. BEFORE INSTALLING, make sure that you have UNLOCKED the bootloader of your device. This is a great guide that show how to do it. Also, the phone must be on the Stock ANDROID 11. If you are on binary U6, please use the recovery tar for U6.

    2. Download the Lineage Recovery, ROM, Google Apps, ADB, and Odin. Unzip ADB and Odin to somewhere appropriate.

    - ROM
    - Recovery / Recovery(for U6)
    - Google Apps
    - ADB
    - Odin

    3. Enable USB Debugging on the device. Go to settings->About phone->Software information, and tap the build number several times until you see the notification that the devloper settings have been enabled. After enabling developer settings, go to settings->developer settings and check USB debugging.

    1.jpg
    2.jpg
    3.jpg

    4.jpg
    5.jpg


    4. Open Command Prompt, and type "cd <the path where you saved ADB to>".

    6.png


    4-1. As a test, type "adb devices". After typing it, the phone should show a screen that asks you to grant permissions for USB debugging. Select Yes.

    5. On the phone, start holding down the Volume Up and Down keys. KEEP THE KEYS PRESSED UNTIL THE PHONE REBOOTS AFTER YOU TYPE THE COMMAND IN THE NEXT STEP.

    9.jpg


    6. While holding the keys down. type in the command "adb reboot recovery" on the command line.

    10.png


    11. After the phone reboots into download mode, press volume up to continue. Make sure that you see the "OEM LOCK: OFF" before continuing.

    11.jpg
    12.jpg


    12. Open Odin. After opening Odin, click on AP, and select the Lineage Recovery Tar file that you downloaded in the step 2. After that, click on Start.

    13.png

    14.png

    15.png


    13. After a few seconds, if everything goes well, Odin should show "PASS" and the device should reboot into Lineage Recovery. After the device enters recovery, tap on Apply update->Apply from ADB. In some cases, touchscreen may be unresponsive or slow. If that happens, use Volume Keys to navigate and Power key to select. KEEP THE DEVICE CONNECTED TO THE COMPUTER.

    16.png

    17.jpg
    18.jpg


    14. After choosing Apply from ADB, type "adb sideload <the path where you saved the ROM file>" on the command prompt and press enter.

    19.jpg
    20.png


    <CONTINUED ON THE NEXT POST>
    7
    Hello everyone,
    I'm really sorry for not responding for several days. Have been busy recently, since the new semester started ㅠㅠ

    After some research, I think I found out causes of several bugs (including audio)
    Also, I think I need to clean up the sources for this ROM, as I haven't done so since I started working on it in July. Some thing have gotten messed up in the middle.
    Right now, I'm completely reworking the ROM. This might take several days.
    Again, I'm really sorry for all the inconveniences caused by the bugs. I'll try my best to do this asap.

    + On the volume issues:
    While testing on my device, I found out that the maximum volume was smaller than that of stock (when compared to S21 or S7). Disabling AudioFX (or changing it into different setting other than "Small Speaker") made the sound louder. However, I also found out that the sound was louder when using some libs from stock, so I will try to get it fixed that way on the next release. Until then, disabling audiofx might be a temporary workaround for this problem.
    3
    15. If everything goes right, the device should show "script succeeded: result was [1.000000]" While ADB may show errors such as "Failed to read command" at 47%, this is no problem as long as the device says that the script succeeded.

    22.jpg


    16. Now it is time to install Google apps. On the phone, tap on Apply from ADB again, and on the computer, type "adb sideload <the path where you saved Google apps to>" and press enter.

    24.jpg


    2x.png


    17. After about 1-2 minutes, installation should be complete. Again, ADB might show "Failed to read command" errors. As long as the phone says that it was success, this is no problem. After installing, click on the "back" icon shown below.

    27.jpg


    18. Choose Wipe data/factory reset, and reboot the device.

    28.jpg
    29.jpg
    30.jpg
    31.jpg


    19. If everything went well, the phone should reboot into LineageOS. Set up the device and Enjoy!

    32.jpg
    33.jpg
    34.jpg
    3
    Hello,
    I would like to thank everyone for sharing their reviews of this ROM.
    This ROM is getting updated every week, so if you are experiencing some bugs, it might be fixed by installing the latest build from the OP.

    So far the changelogs since July 29 release have been:
    - Resolved errors related to thermal control and battery
    - Updated GPU drivers
    - Added code to lessen battery usage
    - Fixed some issues with Camera (saved pictures were way bigger than those from stock)
    - Added support for Binary version U6
    - Added support for Dynamic System Updates
    - Fixed Camera problems in DSU mode, and increased DSU data partition to make it more usable
    - For every build, synced in latest LineageOS source code to get the latest Lineage OS changes and Android security patches. (ex. from 08/07 builds, security patch level was increased from 2021-07 to 2021-08)

    As of now, I'm trying to figure out the cause of the volume and crash issues. Unfortunately, my device is not affected by these issues, so it is somewhat tricky to find a solution to this. (A217N's hardware is somewhat different from A217M/A217F, as it has lower RAM/Storage, no dual SIM, and some CSC-related changes for Korean market. One possible reason for the bugs may be due to the fact that the blobs / kernel settings were for A217N)

    Would it be possible for anyone to get the log from UI crash (or any other instabilities such as reboot)? In order to get the log, when you are experiencing UI crash, please follow these steps:
    1. Connect your device to ADB
    2. Open command line or terminal
    3. run 'adb logcat -b all -d > log.txt'
    and post the log.txt on this thread. It would give a very useful clue in solving this problem.

    Also, if you experienced a reboot/kernel panic/BSOD/or any other similar issues, please follow these steps:
    1. In the developer settings, enable 'Rooted Debugging'
    2. Connect your device to ADB
    3. Open command line or terminal
    4. run 'adb root' and wait for a second
    5. run 'adb shell cat /proc/last_kmsg > last_kmsg.txt'
    and post the last_kmsg.txt on this thread.

    I am very sorry for the inconvenience caused by the bugs. It would be very thankful if you could give a log that shows the problem.