General Rooting, ODIN, Firmware, CSC Information And Myths Debunked / Noob's Guide To Samsung Devices

Search This thread

erik2041999

Senior Member
Oh I can definitely confirm root works and it works just fine, all done on the exynos version. However I've not been able to recover the widevine L1 once rooted no matter what I tried and I'd also be left with L3 until reflashing back to stock. So do keep in mind currently if you root there's no way of having L1, at least none that I'm aware of and work.
 

Macusercom

Forum Moderator
Staff member
Oh I can definitely confirm root works and it works just fine, all done on the exynos version. However I've not been able to recover the widevine L1 once rooted no matter what I tried and I'd also be left with L3 until reflashing back to stock. So do keep in mind currently if you root there's no way of having L1, at least none that I'm aware of and work.
That's interesting. I have root on my S21 Ultra Exynos but still Widevine L1 according to DRM Info :eek:
 

Alibab

Member
Mar 27, 2014
40
22
Is there any official Samsung source where checksum of the binary file of the actual ODIN is published?
If this does not exist, then theoretically any version of Odein could contain malicious code.

For example, it is possible that it installs some kind of spyware every time you use it or open some kind of backdoor for botnets etc....
 

donkeyman1234

Senior Member
Dec 29, 2009
235
32
Huawei Mate 20 Pro
Sony Xperia 1 II
That's interesting. I have root on my S21 Ultra Exynos but still Widevine L1 according to DRM Info :eek:
S22 ultra rooted, Widevine L1, too.
Screenshot_20220306-051758_DRM%20Info-1.jpg
 
  • Like
Reactions: Macusercom

caioars

Member
Nov 14, 2008
30
3
Hello all, sorry for the question, but is there any way to change the CSC without needing root? just flashing some files?
 
Since I didn't get an answer to my question:

Wanted to toss out some info, in case anyone questioned. For a few years now, my only laptop was my department-issued laptop. I hate using my work computer for anything personal, so I snagged a Surface Pro 7 (i5 processor). I was 90% sure it would work with Frija and ODIN, since its a full Windows machine, but wasn't 100%. Didn't know if there were any differences in the processors for the tablet that would affect it. I knew the Surface Pro X wouldn't work with its ARM architecture.

I can report 100% ODIN and Frija both work beautifully to download and flash Sammy firmware on the Surface Pro with the Core processors. So if you're in the market for a Windows machine and want to be able to flash firmware, the SP works a treat.
 

Buddyjohn

Senior Member
May 15, 2013
168
51
Regina
This may sound silly. But I want some clarification as I've been out of the Samsung game going on 6ish years. If I were to flash the modified ap file for Magisk in Odin. Without unlocking the bootloader. Will that still trip Knox? Or is Knox just for bootloader unlocking?
 

dr.ketan

Recognized Developer / Recognized Contributor
I wonder if that's the reason... I'm running on the exynos, it would be pretty sad if exynos had L3 after root and SD L1... Guess we need more people to post their results on this
May be decryption could be reason. Do you have twrp installed?
Flashing multidisabler will decrypt data partition and may be that breaks DRM
 

JazonX

Senior Member
Dec 16, 2009
2,135
827
Xiaomi Mi 11 Ultra
This may sound silly. But I want some clarification as I've been out of the Samsung game going on 6ish years. If I were to flash the modified ap file for Magisk in Odin. Without unlocking the bootloader. Will that still trip Knox? Or is Knox just for bootloader unlocking?

Same here, Just entered the game again.

You cannot flash any modified Image without unlocking the bootloader. While the bootloader is locked,, You can only flash stock firmware direct from ODIN. Whatever modified partition you flash will trigger and trip the knox. Thereafter SamsungPay, SamsungHealth apps will refuse to work.


May be decryption could be reason. Do you have twrp installed?
Flashing multidisabler will decrypt data partition and may be that breaks DRM

Interestingly, I just received an OTA notification too. Rooted / SD with Magisk not even hidden.
I got a notification for the March OTA.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 28
    Since a lot of people will have their Galaxy S22 Ultra soon and I myself am thinking about either getting an S21 Ultra or S22 Ultra, I wanted to summarise a lot of information I found out during researching as Samsung devices are quite different from OnePlus or Google devices in that they don't support fastboot but only ODIN.

    If you've enjoyed it or it has helped you, a thumbs or or thanks is always appreciated! Feel free to share and link to this thread for newbies to Samsung devices like I am ;)



    Which ODIN version to use?

    There are a lot of ODIN versions out there. Even reputable sources seem to copy & paste files without checking them first. The lastest version is v3.14.1. Any newer version as of now is a hoax as they simply renamed the version to v3.14.4 without any changes

    How to check if you have a trustworthy version?
    • First of all: it should be version v3.14.1.
    • In the ZIP file there is a file called "odin.ini". The second line should be"Title=odin“. If not, some website has changed that.
    • In the same .ini file there should NOT be a:
      [UIOption]
      LED=0

      (Someone apparently ticked that checkbox in ODIN, saved it and uploaded it. The default .ini file does not contain it unless you checked it yourself in ODIN.)
    • In the ZIP file there should NOT be a file called "cpprest141_2_10.dll“. This is a Microsoft file that is not malicious, but doesn't belong in there.
    Since most ODIN files are copy and paste, it should be easy to identify whether you have the right version or not. (Source)



    ODIN: AP, BL, CP, CSC​

    People love to spread information without questioning it. So I came across thing like "BL" stands for bloatware etc. No, it does not.

    • BL (Bootloader)
      This contains all bootloader relevant files (like the BIOS on your PC). This is quite essential as a broken bootloader can brick your device permanently.

    • AP (Application Processor or PDA)
      This contains Android and all relevant files you might know from other device manufacturers. As of now, most devices use a "payload.bin" inside the firmware ZIP. This is exactly that but you can simply unzip the .tar file without needing any tool like Payload Dumper. Though, unzipping it does not help you at all since you can't flash the .img file separately.

    • CP (Core Processor)
      CP contains modem files. On other devices it is included in the payload.bin as "modem.img". Here it is inside CP.tar

    • CSC (Consumer Software Customization)
      CSC contains the country and carrier specific stuff like which apps are pre-installed, which bands are available, 4G/5G, VoWiFi, VoLTE etc. Nowadays it is a multi-CSC but more on that later.

    • PIT (Partition Information Table)
      This contains the partitions if you ever need to re-partition your device. It can be used in the PIT section in ODIN but on newer devices it is contained within the CSC.tar file. So you probably never ever have to worry about it.
    (Source)


    What is the deal with CSC and Home_CSC?
    CSC and Home_CSC are pretty similar. They mostly contain similar files and are flashed by selecting them in the CSC slot. You never ever have or can flash both simultaneously!

    • CSC
      Flashes the CSC part including the PIT file, meaning it will wipe the device entirely and reformat the super partition containing everything from /boot, /system and /vendor

    • Home_CSC
      Flashes the CSC but without the PIT file, meaning it will simply update the firmware but NOT wipe your device. This is what to use for an update. Use the other CSC for a full wipe



    What about F. Reset Time, Auto Reboot and Userdata in ODIN?​

    You should not have to check any boxes if you just want to root. Some people claim to disable "auto reboot". That is a relict from the past and is copy & pasted. Disabling auto reboot will prevent the device from rebooting automatically after an ODIN flash. For stock firmwares and rooting it is not necessary. If you do not want to reboot automatically (because of a custom recovery etc.) you may disable it. But you don't need to do it for rooting.

    F. Reset Time is enabled automatically and resets the flashing counter. There is no reason to not do it afaik. So you don't need to deal with that.

    Userdata is not used on newer devices as it is included in the AP file and used if you use the CSC file to wipe your device. It should be left empty on newer devices.

    (Source)



    Multi-CSC and why changing the CSC is mostly deprecated​

    A lot of questions are asked everyday about the CSC. There are different CSCs for different countries and carriers. Here in Austria we have ATO (Open Austria) for unbranded devices, MAX for T-Mobile devices (now called Magenta here) and so on. Nowadays, there are multi CSC firmware like OXM. They contain many CSC codes within it.


    If you go into Settings > About phone > Software information > Service provider software revision you'll find different CSC codes: AAA/BBB/CCC/DDD

    AAA is the current CSC

    BBB is the best CSC for SIM card 1
    CCC is the best CSC for SIM card 2 (if dual SIM is possible)
    DDD is the factory CSC that cannot be changed

    e.g. DBT/MAX/MOB/ATO meaning DBT (Open Germany) is the current CSC, MAX (Magenta Austria) is the CSC for SIM card 1, MOB (A1 Austria) for SIM card 2 and the device has a factory CSC for Open Austria.
    (Source)

    • With Android 12 changing the CSC is afaik impossible.​
    • If the multi CSC contains both CSC codes (like if I want to switch from MAX to ATO), flashing the same multi CSC firmware in ODIN will do nothing as it is the same firmware.​
    • Very important: the multi CSC firmware is the same for every CSC included. If I were to download ATO and MAX firmwares, I will get the same OXM file with the same SHA256 hash (checked it myself). Flashing it would either update your phone (Home_CSC) or wipe it (CSC) and not change the CSC as it will find your current CSC in the multi CSC and leave it as-is.​
    • A device with XEF (France) will always be XEF even with a different SIM card. Despite showing "XEF" it will use the appropriate settings for the carrier as long as the multi-CSC (e. g. OXM) contains the necessary files.
    Some builds are released only for a certain amount of CSC codes or with a different minor revision (see down below under "Firmware" for an explanation). For example: MAX has minor revision 5, but ATO has 7 now. I could flash ATO revision 7 on my MAX device, but wouldn't receive any OTA updates until I have a firmware that exists for MAX (so either I have to flash minor revision 5 or wait until the next update). Multiple CSCs can be asynchronous despite having the same base firmware. MAX could have more minor updates (e. g. the carrier wanted something fixed) while others are fine at revision 1. That's why some CSC codes have more updates listed and some receive the update earlier.

    DBT for example could be the first to get the new March security patch and other CSCs will follow. Though other CSC codes might have a higher minor revision as there were changes being made afterwards. In some cases DBT will receive another update with these changes, in other cases DBT revision 3 is the latest while other CSC codes are at revision 9. The changelogs are almost always equal though so there is no information to the public on what has changed.

    Think of it like an upgrade path. Major steps are always synced, but minor ones can be CSC specific until a new update syncs them again.

    More information can be read here: Source

    Tripping KNOX​

    If you unlock your bootloader, KNOW will be tripped. I'm simply gonna quote another post here as it explains the impact very well (and I hereby explicitly state that I'm not affiliated in the service the source advertises. I do not vouch for or endorse the use of UNSAMLOCK).
    - Knox will be tripped after a custom binary flash.
    - Samsung Pass, Samsung Pay will never work after root. Safetynet, Samsung Health and Secure folder could be fixed.
    (Source)

    So if you flash a signed Samsung firmware, it shouldn't trip KNOX. If you flash an unsigned firmware, it will trip it. But as a general rule of advice: signed firmware are flashable in ODIN with a locked bootloader. If you unlock the bootloader, you are at risk of tripping KNOX and you are responsible for that happening either way. No matter what I or someone else says on XDA or any other website. So never unlock the bootloader if you can't accept tripping KNOX.

    People say it is a physical fuse that is blown. I can't confirm if this is true but it could also simply be a part of security key stored within the device and deleted when unlocked. Since there is no way of backing it up, it will be lost for good (much like the /persist partition on devices that contains sensor data and is unique and never deleted or else your device becomes messed up permanently). There is no way of knowing but keep that in mind.


    Firmware​


    Firmware versions

    The firmware numbers actually have meaning. Something like "G998BXXU4BVB1/G998BOXM4BVB1/G998BXXU4BVB1" means build version/CSC version/baseband version.

    The first letters are the model version (G998B = S21 Ultra). The last letters (e. g. G998BXXU4BVB1) can be read as follows:

    U4 B V B 1
    ↓ ↓ ↓
    Boot loader version
    Android version
    Year
    Month
    Minor revision


    For this example that means:
    • U4: bootloader version 4 (you can't use any firmware with a lower version than what you have)
    • B: Android version 2 (for the S21 Ultra that shipped with Android 11, B is Android 12)
    • V: 2022 (W = 2023, X = 2024, etc.)
    • B: February (A = January,..., L = December)
    • 1: minor revision 1 (this is a hexadecimal that can be 1–F, with F being version 16)

    The firmware information including the colour coding comes from the CheckFirm app (Source). The provided information and the colour coding is awesome so I took that information and condensed it even further.


    How do I check for firmware updates?

    There are websites out there listing/hosting the firmware files that are easy to find. Other methods are:


    Rooting, OTA updates while being rooted and what not to do​

    There is a lot of misunderstanding regarding rooting and OTA updates afterwards. I'm not explaining how to root your device. There are a lot of XDA threads out there. But I'm going to explain some important information that is not explained well very often.

    When is your bootloader acutally unlocked?
    Simply toggling "OEM unlock", going into download mode and unlocking the bootloader will not actually unlock it. There is a reason why after enabling the bootloader unlock in download mode, you should go to the developer settings and "confirm" it.

    By opening up the developer settings and checking the "OEM unlock" toggle, the bootloader actually becomes unleashed and accepts non-signed images. Meaning an AP file modified by Magisk will now be accepted. If you do not do this, it will not.


    If you flash in ODIN, always flash AP, CP, BL and CSC!
    As explained by topjohnwu: if you just flash the modified AP file to root your device without selecting CP, BL or CSC, ODIN could shrink the /data partition. Always flash all of them (not like on other devices "fastboot boot boot.img" but everything!

    OTA updates are gone...sort of
    If you are rooted, you can't use Samsung's built in OTA updater anymore. That's why you should update your firmware before rooting. You can and may update it via ODIN though:
    • Patch the AP file in Magisk
    • Flash the modified AP, CP, BL and Home_CSC (HOME_CSC NOT and I repeat NOT the normal CSC)
    • Let it reboot and you're up-to-date
    (Source)

    Do not restore the stock boot image!
    topjohnwu also states to not flash the stock boot image (stock AP) as it could brick your device. There should be no reason to unroot (you can leave Magisk and simply not use it). If you flash the stock AP, your device won't boot (probably because it fails to verify the unmodified system). I could flash the modified AP (with CP, BL and Home_CSC) back and it worked fine but YMMV. And what if you've installed some module and you're bootlooping now?

    I'm in a bootloop!
    Since TWRP doesn't support decryption on S21 and newer and I don't want to stay unencrypted, you can't use TWRP. There are two ways of fixing a bootloop caused by a Magisk module:

    • Via ADB debugging:
      Use adb on your PC (lot of tutorials out there), and type in:
      adb shell
      magisk --remove-modules


      However: that requires you to have adb debugging enabled and to have your PC already confirmed as a computer that is allowed to connect via adb. If you have not done this, do this:

    • Boot into safe mode:
      Much like Cydia Substrate back on the iPhone, you may disable Magisk and its modules during boot:

      If you use the device's hardware keys to boot into safe mode by pressing certain keys during booting (look it up, it varies from device to device. It can be volume up/down etc.), Magisk will disable all modules and you can remove them safely without every having to need TWRP, enable ADB debugging beforehand or needing to start from scratch. Everything is explained in the source link down below.
    (Source)

    Does my device have a ramdisk or not?
    Most threads you find about this were at a time when some devices had it and other didn't. To stop you from searching hours about whether this is the case for the S21 or S22 series: they have a ramdisk and system-as-root. There is no need for hijacking the /recovery partition and always boot into recovery to boot into the system with root. You can just root your device with the patched AP file and you're good to go!


    Just please stop wiping /cache in recovery!​

    There is no use in wiping /cache in recovery. It is simply a cache partition for updates and is not used on a live system. There is no use in doing that and you're just wasting your time. But there is a cache that can be wiped and rebuilt: the dalvik-cache. (Source)




    Dalvik cache/ART​

    This is no Samsung specific but actually very good to know:

    Android converts system apps in the background since Android 10 I believe. Meaning that the system apps are only really optimised, if the Dalvik cache has been built. This doesn't apply to user apps from the Play Store as they are re-compiled during installation. When does Android do this?

    If your device is at 100%, plugged in and not in use. But if you're like me and not charging your device past 80%, it will not be built(!)

    To force it, the easiest solution is to use Galaxy App Booster which does exactly that: https://galaxystore.samsung.com/pre...session_id=W_2323c8f409a1da0534d7dcad55e671fb

    Or you can force it with root or via adb without root, you can use "adb shell" and then enter:
    Code:
    cmd package bg-dexopt-job
    after an update and it will populate /data/dalvik-cache with arm and arm64 folders.

    After an update, you can (but don't have to) delete the folders "arm" and "arm64" inside /data/dalvik-cache (DON'T DELETE the "dalvik-cache" folder itself), reboot and then execute the command above in a terminal with root access. This is the only relevant caching that Android does. It has nothing to do with /cache.

    You may also check the folder: usually there are about 200+ files inside arm64. If you've only got a few dozens, the cache probably hasn't been built yet. Keep in mind that since Android 11 building the cache doesn't take a few minutes like Android 10 but sometimes half an hour or an hour as it uses few resources to not slow the device down during optimisation. That makes it quite user-transparent.



    Fix Netflix, Amazon Prime,... playback issues​

    On my OnePlus 7T Pro I had no issues using any of these services (if MagiskHide or now Zygisk is active). Though on my S21 Ultra it always failed to play whatever I did. Turns out that Widevine L1 is good as long as you're not rooted. It works with an unlocked bootloader but fails if you have installed Magisk no matter what you do.

    Turns out there is a Magisk module called liboemcrypto disabler by @ianmacd which essentially removes the file and forces Widevine L3 for as long as the module is active. With this module I could get every streaming app to work again including my cable company's own TV app. You won't have anything higher than SD quality but I have to admit that Netflix and Amazon Prime look okay. It definitely is better than nothing and I just found this by coincidence.

    So if you experience playback issues while being rooted, give this module a try ;)

    Note: Since the Magisk repo is obsolete, the only flashable ZIP I've found is from a fork found here: https://github.com/ScRuFFy7/liboemcryptodisabler. You can create the module yourself though, but for a flash-and-forget-ZIP this is the only ZIP I could find.



    General Information

    Last, but not least: Samsung devices aren't A/B devices. There is no mirrored partition or anything else. You just have your good old super partition and if it is messed up, you need to reflash it. No A/B stuff here.




    I may update this thread in the future :)
    2
    I have bought an S21 Ultra and it came with ATL (Vodafone Spain). I have tried every single method that I found on changing the CSC, but none of them work. For EU firmwares OXM is the combined firmware meaning that ATL and many other European CSC codes are included and automatically applied. For me at least everything works fine despite the device being ATL.

    Afaik there is no way of changing the CSC code once it's set on Android 12. So unfortunately, I don't think you can change it :(




    To be honest: I have not looked into this as I have no need for secure folders. It said so in the linked thread so I guess there is a modded version out there :)
    Best way to change CSC is
    1.Non rooted : Paid tools (plenty of discussion here on XDA)
    2.Rooted, Best thing to edit features ithout changing CSC and keep netork setting as it is

    Hi,
    I am new to modding of samsung devices, thought it will be similar to the rest. Since it was mentioned that secure folder can be fixed. Can you point to the thread or post where they have provided the solution.

    Thnx
    Look my ROM module in development section S22Ultra
    1
    Hi
    Good info for new samsung usres!
    Have you any report anyone have rooted Exynos as well SD with routine magisk patched methos? I have seen another thread how to root but I think no one yet confirmed (unless I have missed)
    1
    Hello
    What is exactly csc code for uk unbranded galaxy S22 BTE or EUX?
    Depends on the device. Afaik on S22 devices the EU CSC code always is EUX. For S21 and lower it probably is BTE contained within the OXM multi-CSC firmware. The CSC stuff got a lot easier on the S22 series since it now uses one firmware/CSC instead of splitting the release into different regions