├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Mel-Adrien Dodin 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # OdinV4 2 | # Samsung Odin v4 1.2.1-dc05e3ea - For Linux 3 | 4 | Welcome to the GitHub repository for Samsung Odin v4 1.2.1-dc05e3ea for Linux. This tool allows you to flash firmware and custom binaries to your Samsung devices directly from a Linux environment using only your terminal. 5 | 6 | ## Hardware 7 | 8 | - **Compatible Samsung Device**: The tool is designed to work with Samsung devices that support firmware flashing through Odin. 9 | - **USB Cable**: A reliable USB cable to connect your Samsung device to your Linux machine. 10 | 11 | ## Software 12 | 13 | - **Linux Distribution**: Tested on popular distributions such as Ubuntu 22.04+, Fedora 36+, and others. Other distributions should work but have not been explicitly tested. 14 | - **Dependencies**: Ensure the following packages are installed: 15 | - `libusb`: Required for USB communication. 16 | - `adb`: Android Debug Bridge tool, which might be needed for some operations. 17 | - `unzip`: To extract the `odin.zip` file. 18 | 19 | Install these dependencies using your package manager. For example, on Ubuntu, you can use: 20 | 21 | ```bash 22 | sudo apt-get install libusb-dev adb unzip 23 | ``` 24 | ## Installation 25 | 26 | ### Download and Setup 27 | 28 | 1. **Download Odin:** 29 | 30 | Go to the [Releases page](https://github.com/Adrilaw/OdinV4/releases) and download the `odin.zip` file. 31 | 32 | 2. **Extract the Archive:** 33 | Open a terminal and navigate to the directory where `odin.zip` was downloaded. Extract the files using: 34 | 35 | ```bash 36 | unzip odin.zip 37 | ``` 38 | 3. **Make Odin Executable:** 39 | Change the permissions of the odin4 binary to make it executable: 40 | 41 | ```bash 42 | chmod +x odin4 43 | ``` 44 | 4. **Move odin4 to /bin Directory:** 45 | To make odin4 available system-wide, move it to /bin directory 46 | 47 | ```bash 48 | sudo cp odin4 /bin 49 | ``` 50 | # Usage 51 | To use Samsung Odin, simply run the following command: 52 | ```bash 53 | odin4 54 | ``` 55 | For a list of available commands and options, use the help flag: 56 | ```bash 57 | odin4 -h 58 | ``` 59 | This is how -h command menu looks like 60 | ``` 61 | Usage : odin4 [args...] 62 | Odin4 downloader. odin4 version 1.2.1-dc05e3ea 63 | -v SHOW VERSION 64 | -w Show License 65 | -b Add Bootloader file 66 | -a Add AP image file 67 | -c Add CP image file 68 | -s Add CSC file 69 | -u Add UMS file 70 | -e Set Nand erase option 71 | -V Home binary validation check with pit file 72 | --reboot Reboot into normal mode 73 | --redownload Reboot into download mode if it possible (not working in normal case) 74 | -d Set a device path (detect automatically without this option) 75 | -l Show downloadable devices path 76 | 77 | IMPORTANT : You must set up your system to detect your device on LINUX host. 78 | create this file: /etc/udev/rules.d/51-android.rules 79 | to add a line to the file: 80 | SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev" 81 | (http://developer.android.com/tools/device.html) 82 | And you maybe need to unload a module cdc_acm before downloading. (This is only needed for older kernels.) 83 | $sudo rmmod cdc_acm 84 | OR 85 | echo "blacklist cdc_acm" > /etc/modprobe.d/cdc_acm-blacklist.conf 86 | 87 | Example : 88 | $odin4 -b BL_XXXX.tar.md5 -a AP_XXXX.tar.md5 -c CP_XXXX.tar.md5 -s CSC_XXXX.tar.md5 89 | Example (Select One Device): 90 | $odin4 -l 91 | PATH_OF_DEVICE_A 92 | PATH_OF_DEVICE_B 93 | $odin4 -b BL_XXXX.tar.md5 -a AP_XXXX.tar.md5 -c CP_XXXX.tar.md5 -s CSC_XXXX.tar.md5 -d PATH_OF_DEVICE_A 94 | 95 | Odin Community : http://mobilerndhub.sec.samsung.net/hub/site/odin/ 96 | ``` 97 | ## Using odin4 example 98 | ```bash 99 | Example : 100 | $ sudo odin4 -a AP_XXXX.tar 101 | ``` 102 | ![Screenshot_2022-10-26_04-59-27](https://github.com/user-attachments/assets/9cd99c6c-360d-401c-9ef7-eb27ee6ec924) 103 | 104 | ## Features 105 | • Firmware Flashing: Update your Samsung device with the latest official firmware. 106 | 107 | • Custom Binary Installation: Flash custom recoveries, kernels, and other binaries. 108 | 109 | • Ease of Use: Designed to be user-friendly for both beginners and advanced users. 110 | 111 | ## Troubleshooting 112 | • Device Not Detected: Ensure your device is in Download Mode and properly connected. Check if USB Debugging is enabled and that the necessary drivers are installed. 113 | 114 | • Permission Issues: If you encounter permission errors, ensure you are running the commands with appropriate privileges. 115 | 116 | ## Acknowledgements 117 | Thanks to the community for their support and feedback. For more discussions and support, visit the [XDA Forums thread](https://xdaforums.com/t/official-samsung-odin-v4-1-2-1-dc05e3ea-for-linux.4453423/). 118 | 119 | # License 120 | This project is licensed under the [MIT License](LICENSE). See the LICENSE file for details. 121 | 122 | 123 | ⚠️ I am **not the original creator** of OdinV4. 124 | I simply uploaded the tool here to make it easier for others to access, learn from, and use. 125 | 126 | All credit goes to the original author. 127 | 128 | If you're the original creator and want this repo taken down or credited differently, feel free to contact me. 129 | --------------------------------------------------------------------------------