There exist quite a few paid flashing tools for Samsung such as Z3X Samsung Pro, Octoplus, Ultimate Multi Tool (UMT), NCK, Chimera, etc
One of the most popular free tools to flash firmware / ROM to Samsung mobile devices is Odin a lightweight flashing tool developed by Samsung to flash stock firmware or custom flash files into Samsung devices. Odin is very easy to use even for a non technical user and can be used to solve many firmware issues on Android-based mobile devices Resources where you can find answers to any problems arising during flashing, download software / firmware, etc.

Download Odin Tooltip Text
Odin Support forum
GSMhosting forum

How to Flash Samsung Firmware / Stock ROM using Odin tool

Odin software can be used to flash stock firmware, custom firmware, recovery file (TWRP), Stock or custom kernel (tar/zip/img), root package (md5 and tar). Remember to backup all your information before proceeding. There is always a risk that flashing goes bad and you will need to run restore.

  1. Enable USB debugging.
    1. Go to Settings-About-Software information-Build number (click on it 7 times)
    2. Go to Settings-Developer options-USB debugging (turn on)
  2. Install Samsung Android USB drivers for Windows from official site
  3. Download the latest version of Odin flash tool using the link above. Right now, Odin is only compatible with windows platform but you can use Heimdall if you need alternatives for Linux or MAC OS.
  4. Extract the files in the downloaded package to a folder on your PC. After extracting your folder will look like this.
  5. Next step is to run the software. Make sure you run it as an administrator by right-clicking on it and selecting the appropriate option.
  6. Depending on the version you should have Odin Flash tool window looking like this
  7. Connect your Samsung mobile to the computer using USB cable and put it in Download mode. Make sure you have at least 50% battery life. To enable download mode turn off the device then press Power, Home, and Volume down buttons ( newer devices, press the Volume Down + Bixby + Power) button together until you see the warning notification on your screen.

    Odin software will detect the phone and show green COM port under ID:COM. Odin will also show Added in the logs screen.
  8. Now select the firmware you want to be flashed. There are 2 types of stock firmware for Samsung you can come about: single file or 4 file firmware
    • If you are using single file stock ROM click on AP option in Odin and select file with extension .tar.md5. It contains main flashing file (PDA or AP) responsible for your phone’s file system. Flashing this file will not delete data from your cell phone.
    • 4 file firmware consists of Bootloader (BL) file which loads right after the Operating System, Modem files (CP) – Core processor responsible for network connectivity such as Bluetooth, Wifi, GPS, 3G/4G/5G, Common Short Code (CSC) responsible for language and region-specific settings, Main Flash File (PDA or AP) – application processor files containing boot.img and system.img necessary for system operations


    Note that when loading large files such as AP Odin will freeze for a while due to the file size. Do not close the software or end task. Just let it run it course and be patient.

    When you have selected and loaded all files you should see something like this
  9. Click Start to begin flashing the firmware. Allow 5-10 minutes for the ROM to be flashed. Odin will display Pass when the procedure is successfully finished.

How to read Samsung firmware file names

To see version information pertaining to your phone use the following secret codes:

  • Firmware ver: *#1234#
  • S/W ver: *#1111#
  • H/W ver: *#2222#

Let us have a look at the following combination file as an example:
COMBINATION_OJV_FA60_A810FXXU1APJ5

_________________________________________________
OJV = CSC build
________________________________________________
FG00 – Android GO OS
FA90 – Android 9.0 Pie
FA80 – Android 8.0 Oreo
FA70 – Android 7.0 Nougat
FA60 = Android 6 Marshmallow
FA51 = Android 5.1 Lollipop
FA50 = Android 5.0 Lollipop
FA44 = Android 4.4 KitKat
FAJP = Android Jelly Bean
FTMA = Tizen OS
__________________________________________________
A810F = Model
_________________________________________________
XXU – Country Code

ALE Ecuador Alegro
ANC Uruguay Antel
ARO Argentina open
BBE Ecuador unknown
BPC Panama unknown
BTA Brazil unknown
BTM Brazil unknown
BVE unknown BVE
BVO Bolivia open
BVT Bolivia Tigo
CDR Dominican Republic Claro
CEN Puerto Rico unknown
CGU Guatemala Tigo
CHB Chile unknown
CHE Chile Entel PCS
CHF Uknown CHF
CHL Chile Claro
CHO Chile open
CHT Chile Telefonica
CHV Chile CHV
CHX Chile CHX
COB Columbia Movistar
COD Columbia Avantel
COE unknown COE
COL Columbia COL
COM Columbia Comcel
COO Columbia open
CPA Panama Claro
CRC Costa Rica Claro
CRM Costa Rica Movistar
CST Dominica unknown
CTI Argentina Claro
CTP Paraguay Claro
CTU Uruguay Claro
CWW Jamaica CWW
DCN Dominica unknown
DGC El Salvador unknown
DGT Venezuela Digicell
DOR Dominica Orange
EBE Ecuador EBE
ECO Ecuador open
EON Ecuador EON
ICE Costa Rica ICE/Kolbi
IUS Mexico Iusacell
JBS Jamaica unknown
JCN Jamaica unknown
JCW Jamaica unknown
JDI Jamaica JDI
MNX Mexico Nextel
MVL Venezuela MVL
NBS South America Open Line
PBS Panama PBS
PCI Puerto Rico unknown
PCS Guatemala unknown
PCT Puerto Rico PCT
PCW Panama Cable & Wireless
PEB Peru unknown
PEO Peru open
PET Peru PET
PGU Guatemala Claro
PNT Unknown PNT
PSN Argentina Personal
PSP Argentina PSP
PVT unknown PVT
SAM Peru SAM
SEM Mexico open
TBS El Salvador unknown
TCE Mexico Telcel
TDR Dominican Republic Viva
TGP Argentina TGP
TGU Guatemala Movistar
TMM Mexico Movistar
TMR Brazil unknown
TNX unknown TNX
TPA Panama open
TPR Puerto Rico unknown
TTT Trinidad and Tobago open
UFN Argentina Movistar
UFU Uruguay Movistar
UNE Mexico Unefon
UPO Paraguay open
UVC Argentina unknown
UVE Argentina unknown
UVI Brazil unknown
UWT Panama unknown
VMT Venezuela VMT
VNO Venezuela open
VOX Unknown VOX
ZTA Brazil Claro
ZTM Brazil TIM
ZTO Brazil open
ZTR Brazil Oi
ZVV Brazil VIVO
The multi-CSC code is a special code that does identify a specific country or vendor.
TFG Includes CHT, COB, CRM, NBS, PBS, SAM, TGU, TMM, UFN, UFU, VMT
UUB Includes ALE, ARO, BVO, CHO, COO, CWW, EON, PCW, PEO, TCE, TPA, TTT, UPO
UVC Includes CTP
UVS Includes ARO, BVO, CHO, COO, EON, PEO, TCE, TPA, TTT, UPO, ZTO
UVY Includes IUS
UWA Includes CDR, CHL, COM, CPA, CRC, CTI, CTP, CTU, ECO, PCT, PET, PGU
UWE Includes PGU
UWM Includes CGU, COL, TGP
UWT Includes BVO
information on other country codes
__________________________________________________
1 – Binary
__________________________________________________
* It is followed by the letter A: corresponds to the Android version
__________________________________________________
Finally you have: PJ5
this refers to the date information: the first letter is the year and the second is the month. The last number refers to the revision code or the revision number in the month.
__________________________________________________
O = 2015
P = 2016
Q = 2017
__________________________________________________
A = January
B = February
C = March
D = April
E = May
F = June
G = July
H = August
I = September
J = October
K = November
L = December
__________________________________________________
1 = Revision 1
2 = Revision 2
3 = Revision 3
4 = Revision 4
5 = Revision 5
6 = Revision 6
7 = Revision 7
8 = Revision 8
9 = Revision 9
A = Revision 10
B = Revision 11
C = Revision 12
D = Revision 13
E = Revision 14
F = Revision 15
__________________________________________________
E.G. PJ5 = 2016 – October – Revision 5

How to change CSC code on Samsung phones

Enter *#06# using phone dial pad to see the IMEI number for the device. You can then enter *#272*IMEI# to select a specific carrier product code. If your Samsung device does not return a menu, it is not a multi-csc enabled device.
Install an CSC changer app, such as the Phone INFO app.

Note that changing CSC code requires root access and will force factory reset so don’t forget to back up your data