KDZZ - Zip Package Creation Tool
For Building Flashable Zip Packages from KDZ Files
This tool is still in development!
This is an Alpha release and there may be bugs.
UPDATE 3/31/2019
Due to a recent KDZ format change, I've hit a wall in the development of this tool.
I started implementing native KDZ and DZ extraction using IronPython.
However, IronPython does not support Python3 which is required in order to properly extract the new KDZs.
With this being said, I am going to start development of a new cross-platform utility, and development of KDZZ will be discontinued.
I apologize for any inconvenience. This tool will still work as designed for old-format KDZs, and I will leave the repo online.
But I will not be working on this utility any longer.
-weakNPCdotCom
Supported Devices
H872
H930ds
H932
Not Supported
LG Aristo 3
*Unfortunately, some models like those listed above are not going to be compatible with this program using the procedure documented below.
The KDZ for these models contains persist and/or vendor images that are split into multiple chunks like the system image. The firmware extraction tool used only has the ability to merge system chunks.
If you are able to find a way to merge the persist/vendor binaries into one bin file, then it will work using the merged bin. However, that is above my skill level.
Requirements
Windows PC
H872 or H932 KDZ File you wish to create a package from
Windows LG Firmware Extract Tool
Installation
- Extract the contents of the KDZZ zip file to the directory of your choice.
In Development
Native KDZ/DZ Extraction
System.img extract/repack
Usage Instructions
Extract KDZ Using Windows LG Firmware Extract
Set your working directory (i.e. C:UsersJDOEDesktopKDZFiles)
Extract the DZ file from the KDZ
Extract the bins from the extracted DZ file
Merge the extracted System bins
Run KDZZ
Open CMD in Windows
cd to KDZZ.exe directory or type
[path to KDZZ.exe] -p "[destination project directory path]" -b "[path to extracted kdz files]"
Example: C:UsersJDOEKDZZKDZZ.exe -p "C:UsersJDOEDesktopH87220f" -b "C:UsersJDOEDesktopKDZFiles"
Hit enter and follow the prompts
Download
Get the latest release from GitHub
View Source
GitHub
BitBucket
Additional Information
KDZZ uses a JSON file "firmware.json" in order to dynamically build an updater-script and Zip package.
Ideally, data can be added to the JSON file to allow support for additional devices.
The JSON breaks down the primary file groups such as: bootloader, modem, dlmode/recovery, etc.
It also specifies which of them do not have a "bak" partition.
To add support for an LG device not listed, you can add another JSON object for your model to this file.
Code:
{
"devices": [
{
"model": "h872",
"bootloader": [
"aboot",
"apdp",
"cmnlib",
"cmnlib64",
"devcfg",
"factory",
"hyp",
"keymaster",
"msadp",
"pmic",
"raw_resources",
"rpm",
"sec",
"tz",
"xbl",
"xbl2"
],
"modem": [
"modem",
"persist",
"rct"
],
"primary": [
"boot",
"system"
],
"dlmode_recov": [
"laf",
"recovery"
],
"nobak": [
"apdp",
"factory",
"sec",
"boot",
"system"
]
}
}
I hope you find this tool helpful. If anybody has any issues with it, please contact me by PM or open a new issue in GitHub.
XDA:DevDB Information
KDZZ, Tool/Utility for the T-Mobile LG G6
Contributors
weakNPCdotCom
Source Code: https://github.com/adanvdo/KDZZ
Version Information
Status: Alpha
Created 2019-02-20
Last Updated 2019-03-31
Very cool.
I'll be playing with it. I'm fairly sure I can follow those instructions (not gonna lie, they'll be a learning curve) now to get the wife off my pc to try it out. Lol... Girl fried hers using the wrong cable. I'm liking this though. Have you been talking with nak3d? Last I spoke to him he was working on something like this also, or y'all are in cahoots or something. I do like how your able to work on any device in there.
Again, very cool I'll throw you some feedback when I get a chance to work with it. Stay cool man
Sent from my LG-H872 using Tapatalk
Ken C said:
Very cool.
I'll be playing with it. I'm fairly sure I can follow those instructions (not gonna lie, they'll be a learning curve) now to get the wife off my pc to try it out. Lol... Girl fried hers using the wrong cable. I'm liking this though. Have you been talking with nak3d? Last I spoke to him he was working on something like this also, or y'all are in cahoots or something. I do like how your able to work on any device in there.
Again, very cool I'll throw you some feedback when I get a chance to work with it. Stay cool man
Sent from my LG-H872 using Tapatalk
Click to expand...
Click to collapse
I will try to post some more detailed documentation today. I was in a rush to get this thing published since it has taken me so long.
No, I didn't work with running on this one. His utility works differently. He actually uses the OTA update files and extracts the update information. My tool creates the entire firmware package without laf and recovery.
You can choose to build a bootloader, modem, fullstock or laf zip package. What it actually does in the background is rename all the bins, arrange them according to the package you want, build the updater script and zip it all up.
Now that the hard part is done I can just work on making it more user friendly and adding features.
@weakNPCdotCom
Very cool man. I was trying to pull that F version you have but it kept stopping at 87% the way it would be cool to just update. I've subscribed to this thread so I'll keep an eye on what your up to
Sent from my LG-H872 using Tapatalk
Good job bud will make it easier on us developers, any plans for a Linux version??
Tia,
Hawk
very CooL
hawknest said:
Good job bud will make it easier on us developers, any plans for a Linux version??
Tia,
Hawk
Click to expand...
Click to collapse
Thanks!
I can actually use the same code, just move it over to .NET Core. So that should be pretty simple. I can try to do that asap.
working for h930ds aka lg v30 plus
weakNPCdotCom said:
Thanks!
I can actually use the same code, just move it over to .NET Core. So that should be pretty simple. I can try to do that asap.
Click to expand...
Click to collapse
How to create firmwire json file for lg v30
sankhauaa said:
working for h930ds aka lg v30 plus
Click to expand...
Click to collapse
awesome!
sankhauaa said:
How to create firmwire json file for lg v30
Click to expand...
Click to collapse
the provided firmware json file already includes an h932 entry for the v30. I cannot guarantee that it will work for any other model, but it should.
Quick Steps for creating a firmware entry in firmware.json (After extracting all of your KDZ files and merging the system image...)
Ignore the following .bin files
PrimaryGPT_X.bin
System_XXXXXX.bin
Each .bin file represents a block that will be flashed. You may need to do a little research to find out which binaries are a part of your bootloader and which are a part of your modem.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Take the name only from the .bin file, and add it to the corresponding group in the json file. For example: for the file "persist_68742.bin" (your filename may vary) you would add a "persist" to the modem group since we know belongs with the modem firmware.
the entries boot and system will always go in the "primary" group
any .bin file that does not also have a "bak" version (i.e. factory_XXXX.bin does not have a corresponding "factorybak_XXXX.bin" file) should be added to the "nobak" group so the program knows we do not need to flash factorybak as it doesnt exist.
laf and recovery should always go in the "dlmode_recov" group. We do not want these partitions to be accidentally flashed due to them being placed in the wrong group.
the resulting firmware entry for the h932 would be
Code:
{
"model": "h932", // or the model number/name of your device
"bootloader": [
"abl",
"apdp",
"cmnlib",
"cmnlib64",
"devcfg",
"factory",
"hyp",
"keymaster",
"logfs",
"msadp",
"pmic",
"raw_resources",
"rpm",
"sec",
"storsec",
"tz",
"xbl"
],
"modem": [
"modem",
"persist",
"rct"
],
"primary": [
"boot",
"system"
],
"dlmode_recov": [
"laf",
"recovery"
],
"nobak": [
"apdp",
"factory",
"sec",
"boot",
"system"
]
}
As i said, the existing entry for the h932 should work for your v30. Definitely make a backup before trying to flash any package created.
As more devices come out, i will try to add additional entries to the firmware file.
Is it possible mod also original system.img?
Markosv76 said:
Is it possible mod also original system.img?
Click to expand...
Click to collapse
This app wont modify the system.img file. However, if you modify it with another program (i.e. debloat it or something) just replace the system.img file in the directory where your bins were extracted with the modified version and it will be used in the zip.
I can look into adding options for modifying the system image. I dont think it would be difficult
weakNPCdotCom said:
This app wont modify the system.img file. However, if you modify it with another program (i.e. debloat it or something) just replace the system.img file in the directory where your bins were extracted with the modified version and it will be used in the zip.
I can look into adding options for modifying the system image. I dont think it would be difficult
Click to expand...
Click to collapse
I modify system.img removing app and add app, I repack system.img and put into the zip, but if I repack sparse system.img the flash don't works, if repack in ext4 the flash is ok but I take bootloop, for this I asked you for this, or if you know to unpack, modify and repack properly
Markosv76 said:
I modify system.img removing app and add app, I repack system.img and put into the zip, but if I repack sparse system.img the flash don't works, if repack in ext4 the flash is ok but I take bootloop, for this I asked you for this, or if you know to unpack, modify and repack properly
Click to expand...
Click to collapse
I can look into it, no problem. In the mean time, have you tried using a kitchen like the free version of superr's kitchen to unpack/modify/repack the image?
weakNPCdotCom said:
I can look into it, no problem. In the mean time, have you tried using a kitchen like the free version of superr's kitchen to unpack/modify/repack the image?
Click to expand...
Click to collapse
No i used imageextractor, I never used a kitchen, superR is free only for Linux or also for Windows?
I think that your tool work on h870
Markosv76 said:
No i used imageextractor, I never used a kitchen, superR is free only for Linux or also for Windows?
I think that your tool work on h870
Click to expand...
Click to collapse
I think the free version is only available for linux.
I cannot guarantee when, but I will add the ability to extract/repack a system image in the future. The first thing I want to do is add kdz/dz extraction to the program to eliminate the need for the windows lg extract tool. Then i will start working on other features.
weakNPCdotCom said:
I think the free version is only available for linux.
I cannot guarantee when, but I will add the ability to extract/repack a system image in the future. The first thing I want to do is add kdz/dz extraction to the program to eliminate the need for the windows lg extract tool. Then i will start working on other features.
Click to expand...
Click to collapse
Great, and thanks!!!
Markosv76 said:
Great, and thanks!!!
Click to expand...
Click to collapse
just in case of the possibility, make sure you don't have 2 system.img files in your firmware directory and/or firmware directory/merge_output when you run the program.
weakNPCdotCom said:
just in case of the possibility, make sure you don't have 2 system.img files in your firmware directory and/or firmware directory/merge_output when you run the program.
Click to expand...
Click to collapse
Ok you mean when I use your tool right?
Markosv76 said:
Ok you mean when I use your tool right?
Click to expand...
Click to collapse
yes
Related
Credits:
birbeck for the usual random java guidance, slushpupie for his previous java guidance, dodgejcr for extreme amounts of testing, and one_love_420 and shift for some great graphics!
testers: JT-, couga6442, happytweak and many others I might have forgot in the furry of three days I built the initial app from scratch.!
Thanks to SDX
Works with HTC Unlock Method:
Tested after using htcdev.com's bootloader unlock method.
Please see the guides at the bottom of this post!
Background:
flash_image (bmlwrite) is an extremely useful utility for flashing custom kernels, boot logos (so far ONLY Samsung devices) and recoveries. This binary has made it possible to easily flash all these items and is used almost everywhere behind the scenes (i.e. in custom recoveries, packaged into a kernel /sbin directoy, included in custom ROMs, etc).
Description:
This android application, FlashImageGUI, is basically a GUI interface for the linux binary, flash_image provided by google in AOSP for loading custom kernels and recovery images onto the phone.
This app allows the flashing of kernels and custom recovery images in normal android mode!
Current Device Support:
Full Kernel, Logo and Recovery flashing: Samsung Moment, Transform, Intercept and Acclaim - the s3c6410 series of devices
Full Kernel (Anykernel and boot.img) Flashing and Recovery (zip file or image) flashing: Sprint HTC One, T-Mobile HTC One, HTC EVO 4G LTE, One S, EVO 3D CDMA and GSM, One XL, Droid DNA, Amaze, Vivid/Holiday, EVO 4G, EVO Shift, Google Nexus 4, Google Nexus 10, Google Nexus 7, Samsung Google Galaxy Nexus, Nexus S/Nexus S 4G & LG Optimus
Full Kernel (zImage) Flashing: Samsung Epic
Check application version for updates
Future Support:
Will continue to test kernels as they are released to ensure compatibility!
YouTube Install Video:
http://www.youtube.com/watch?v=9aqnhFxb__k
Thanks @wwjoshdew !
Install Directions:
Install process is the same as any other .apk. Download to computer and adb push or mount sdcard on computer and copy over or download directly to the phone. Use any file manager, adb, connectbot/terminal emulator to install.
My preferred method, maybe a bit technical: ./adb install c:\downloads\FlashImageGUI.apk
Download Locations
Market (99 cents!): Flash Image GUI
Release version (free): Flash Image GUI
Contact:
Any questions, comments, concerns, or issues, please post in this thread or send me an email! Thanks for all the help and support!
FAQ:
Q: Will this app support a marketplace to pick and chose kernels from?
A: No. Use Kernel Manager!
Q: Can I flash nandroid kernel backups?
A: Yes. Rename the specific image to boot.img and select from inside of Flash Image GUI. **Make sure to also load the associated modules or WiFi might stop working!
Screenshots:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Feedback:
Please post any helpful feedback. I'm always looking to improve the application!
HTC Unlock - User Guides for Flash Image GUI!!
HTC Unlock - Users Guide for ROMs with a Kernel (boot.img file):
1) Unlock using the HTC method and gain root access.
2) Load this application, Flash Image GUI, onto the device, either through the Market or the link provided in this OP.
3) Download ROM .zip file to the sdcard on the device.
4) Open up Flash Image GUI, select Browse and select the ROM .zip file, downloaded to /sdcard in the previous step.
5) Flash Image GUI will provide a warning, reminding that the ROM .zip file will *need* to be flashed in the custom recovery afterward.
6) Flash Image GUI will index the full ROM .zip file searching for the kernel and kernel modules. Once located, the Flash Image button should be enabled.
7) Select the Flash Image button and Flash Image GUI will load the kernel modules and kernel from inside the ROM zip file.
8) Select reboot recovery.
9) Inside the custom recovery, wipe data as ROM requires and load/flash the ROM zip file.
10) Reboot to normal Android mode and all should work including WiFi!
HTC Unlock - Users Guide for flashing ONLY a Kernel (zip file):
1) Unlock using the HTC method and gain root access.
2) Make sure the selected Kernel is compatible with the currently loaded ROM. If not, this will result in a lot of frustration!!! See troubleshooting steps below.
3) Download kernel zip file to /sdcard.
4) Open Flash Image GUI, browse and select kernel zip file, downloaded/loaded to sdcard in previous step.
5) Flash Image GUI will validate the kernel zip file is contains the minimum required files
6) Select the Flash Image button and Flash Image GUI will load the kernel and the kernel modules from the source kernel zip file.
7) Reboot
Troubleshooting after Rebooting:
First step, when experiencing issues flashing is to RE FLASH the files again. Many times, re flashing again will clear up any issues. If not, see the issues/solutions below.
Issue #1: If the device hangs or reboots while on the splash screen, the kernel itself or the ramdisk packaged in the kernel is NOT compatible with your device!!!
Solution for #1: Have to boot into fastboot (or directly into the custom recovery) and load the custom recovery to flash a known good kernel or restore a previously known good nandroid backup. Command: fastboot boot c:\downloads\cwm-recovery.img
Issue #2: If the device hangs or reboots while on the boot animation, the ROM is likely NOT compatible with the kernel!!!
Solution for #2: Have to boot into fastboot and load the custom recovery to flash a known good ROM/kernel combination either from a zip file or restore from a nandroid backup.
I actually used this app the other day I used on my evo lte a lot before s-off. Also makes flashing kernels and recoveries a breeze
Sent from my HTCONE using xda premium
This is a great app. Been using it for a while....thanks.
via phONE.
For the guys who never used it,it works great. Forgot how much it was but it was worth every dime.
Just an amazing app.
Sent from my HTCONE using Tapatalk 2
I made a video showing how to update/install custom recovery using your app! Thanks @joeykrim!
http://www.youtube.com/watch?v=9aqnhFxb__k
wwjoshdew said:
I made a video showing how to update/install custom recovery using your app! Thanks @joeykrim!
http://www.youtube.com/watch?v=9aqnhFxb__k
Click to expand...
Click to collapse
Excellent! I've added a link in the OP. Thanks!
App didn't seem to like philz_touch_5.08.5-m7spr.img wouldn't work for me, verified md5 downloaded it twice wouldn't work, then I renamed it to TWRP.img and finally it work and would allow me to hit the Flash Image button.
im0rtalz said:
App didn't seem to like philz_touch_5.08.5-m7spr.img wouldn't work for me, verified md5 downloaded it twice wouldn't work, then I renamed it to TWRP.img and finally it work and would allow me to hit the Flash Image button.
Click to expand...
Click to collapse
The error message that occurs each time you select a file that doesn't fit the naming criteria says, for a boot.img file, it needs to have the phrase "boot" in the name. Just need to add "boot" to the filename, for example: philz_touch_5.08.5-m7spr-boot.img.
Unfortunately, this limitation came about from beginners flashing incorrect files and overwriting their kernels so the device wouldn't boot. No real way around that issue other than silly filename limitations in an effort to education the users.
I test out the function real quick and the error message does come and go fairly quickly. I'll look at adjusting that so it the error message sticks around a bit longer to make it easier to read it.
Thanks for the feedback and hope that helps!
Thanks for the quick reply. This was definately worth the 99 cents. Since I can never get fastboot drivers to work on windows 8.
Myself, I prefer to adb .img's. But for a person who isnt as familiar with adb or someone who just doesnt want to, this is a great app, well worth the .99cnts. Thanks joey.
***Sent from my Super Groovy Hand Held Porno Machine***
Will this let us flash a firmware update instead of using adb? Thanks
Sent from my HTCONE using Xparent Blue Tapatalk 2
treIII said:
Will this let us flash a firmware update instead of using adb? Thanks
Sent from my HTCONE using Xparent Blue Tapatalk 2
Click to expand...
Click to collapse
Unfortunately, as far as I've seen HTC doesn't allow direct access to the firmware components from the standard booted Android mode. If you see any new information on how to access the firmware components directly, feel free to provide the links here and I'll research.
Thanks for the support!
P990 ROM Converter
from New BootLoader to Old and vice versa
Actually this tool is Tonyp’s idea. All credits to him.
He asked me if I am interested in making a script and automating the rom porting from one bootloader to the other and he assisted me with all the changes that need to be done.
Due to different EOL (end of line) termination in text files between UNIX-Linux (LF) and windows (CRLF), I had to make bash (linux) scripts necessarily. The good thing is that the tool can be used in both windows and linux systems.Installation:
Download and extract the attached ROM-Converter-tools.zip package anywhere you like.
Download and extract in the same folder, a newer ROM-Converter-scripts.zip if exists.
For Windows systems only:
Install Cygwin following the instructions below:
Download setup-x86.exe from here http://cygwin.com/install.html
Attention!! Even if you are running x64 windows system install the x86 version. DO NOT install the x64 cygwin version because two binaries (mkbootfs.exe & mkbootimg.exe used to pack boot.img do not work properly).
Run the setup-x86.exe, when the list of packages is shown make sure you add the following:
Expand Archive and select zip & unzip to be installed
Expand Utils and select cpio to be installed
Expand Perl and select ‘perl: Larry Wall’s Practical..’ and perl_vendor to be installed
(If you are already using cygwin run setup again and add the above packages to be installed.)
For Linux systems only:
Download the attached linux-mkboot-binaries.zip (mkbootfs, mkbootimg), extract them in tool folder and remove the windows ones (mkbootfs.exe, mkbootimg.exe).How to use it:
Put the source ROM.zip(s) in the 'source_zips' folder (otherwise you’ll be prompted to drag n’ drop it in terminal)
Open Cygwin. Type cd (leave a space after cd) and type /cygdrive/c/dir1/dir2/../ROM-Converter-tools
where “c/dir1/dir2/../ROM-Converter-tools” is the full path of the folder you extracted the convert-tool package (e.g C:\dir1\dir2\..\ROM-Converter-tools) and press enter.
In case of long pathname, instead of typing the whole of it, use one of the following tips to easily change to tool's path.
Tip#1: After you type cd , drag n’ drop from windows explorer into cygwin terminal, the folder "ROM-Converter-tools" and it wiil automatically be converted to ‘/cygdrive/c/dir1/dir2/../ROM-Converter-tools’ press enter and that’s it.
Tip#2: After cd /cygdrive/c/ type the 1st one or two letters of the next subdir and autocomplete it's name with TAB.
Type one of these commands in cygwin terminal:
Code:
./convert_rom.sh -stepmode #--> starts in step-mode for debugging purposes
./convert_rom.sh #--> runs unattended (with no pauses).
What it does:
The scripts use as input the 'files2convert.txt' which contains all possible files needed to be converted.
This is for compatibility purposes to support as many roms as possible and for future changes.
files2convert.txt
Code:
/ramdisk/fstab.star
/ramdisk/fstab.p990
/ramdisk/init.cm.rc
/ramdisk/init.cm-star.rc
/ramdisk/init.star.rc
/system/etc/vold.fstab
/system/bin/setup-recovery
/system/bin/check_sdcard.sh
/META-INF/com/google/android/updater-script
More files can easily be added for conversion if needed.
The converter:
Extracts source ROM zip
Unpacks the boot.img
Reads the above files, replacing partitions' mount points, among some othe things, for the selected bootloader
Replaces the kernel image for the selected bootloader
Builds new boot.img
Creates new converted ROM zip
Under 'kernels' folder there are already included the two latest Kowalski kernel images (zImage) for old & new BL and its modules.
You can add more kernels and you’ll be prompted to choose the desired one when converting a ROM (if more than one is found ).
Read how to do this:
kernels folder contains all kernel images (zImage), kernel modules and any other file the kernel needs.
for each kernel there are:
file(s) named: prefix-KernelName[-ver].zImage
folder(s) named: [prefix-]KernelName[-ver]Kernel
where:
prefix must be oldbl or newbl (depending on which bootloader this kernel is for.
KernelName[-ver] is whatever you like [and optionaly its version].
zImage is the extension of the kernel image.
How to maintain kernels folder
A. Update existing kernels
Download the desired kernel package and open it.
Replace its kernel zIamge in kernels folder
Extract its modules and any other file needed and replace all existing ones
B. Add kernels
Download the kernel package and open it.
Find the zImage inside package and extract it into kernels
Rename it this format: prefix-KernelName[-ver].zImage
Create a folder named: prefix-KernelName[-ver]. It will be used to keep kernel's modules and other files needed. If this kernel is released for both bootloaders and its modules are identicaly on both bootloaders (like the existing kowalski one) then name the folder only KernelName[-ver] (without prefix).
Inside this [prefix-]KernelName[-ver] folder create a subdir tree lib\modules
Extract in lib\modules all kernel's modules from kernel package.
If any other file is needed by kernel then create it's subdir tree (assuming that [prefix-]KernelName is the system folder of the kernel package) and extract it there.
Attention: Current version will hopefully work on CM-based ROMs.
Stock based ROMs need more files to be changed, but they are not included yet, because I don't have the whole info needed.
Hopefully @rugglez or someone else will be willing to help.
Till then avoid converting stock-based roms, (or if you do try, then after converting replace the boot.img in converted rom and "system/lib/modules/*" at least with a working boot.img and modules from another stock-based rom, for this bootloader of course. This could work but I am not the expert to say)
ChangeLog:
Version 1.0 Aug 23, 2013
- The two convert2xxx_bl.sh scripts are now integrated into one script convert_rom.sh.
- The new convert_rom.sh also accepts an optional switch [-stepmode].
Code:
./convert_rom.sh -stepmode #--> starts in step-mode for debugging purposes
./convert_rom.sh #--> runs unattended (with no pauses).
- A technique added to preserve whitespaces in converted lines. So converted files keep margins and whitespaces of the source ones.
- Script checks whether source rom is a newbl or an oldbl one, displays an error message if rom is not for the expected bootloader and exits.
Version 0.3b Aug 23, 2013
-a typo fixed in converting scripts
Version 0.2b Aug 23, 2013
-liblgeril.so is also replaced with the one for the oldbl or newbl accordingly.
-A forced removal (switch -f) added when removing files and dirs just in case.
-Converted ROM name will be built automatically from the source name suffixed by -oldbl or -newbl accordingly. (If source rom's name contains 'newbl' or 'oldbl' it will be substituted by 'oldbl' or 'newbl' accordingly)
-Converted ROMs are now created under 'converted_roms' folder.
-Converting to oldbl: Files 'check_sdcard.sh' and 'lgdrm.img' are being removed if exist (as they are not used)
-Converting to newbl: Charger dependent images are also copied in ramdisk (not only the charger binary).
-Kernel modules will also be replaced with the ones coming with specific kernel image.
-Kowalski Kernel images & modules, in kernels folder, are replaced with latest ones dated:2013072013. (it was my fault, the previous ones were downloaded from "releases" download folder and were dated 20230303)
-Some changes in display messages.
Version 0.1b Aug 19, 2013
-1st beta version
I really don't want to have all of the credits.
While it's been my idea to create such a script and I provided the input on what needs to be changed by the script, I couldn't have done it on my own.
I both lack the skills(!) and time.
Steve would say:
Anyways, don't leech. If this helps someone, donations are appreciated:
Donate to spyrosk
Donate to me
spyrosk said:
To convert a new-bl rom to an old-bl rom: Type ./convert2old_bl.sh
To convert an old-bl rom to a new-bl rom: Type ./ convert2new_bl.sh
Click to expand...
Click to collapse
Thanks Android tool guru @spyrosk....and thanks @tonyp
just trying it out. A small comment....people might mistake this....there is no space between the / AND convert2new_bl.sh command line....should be the same with oldbl.sh command....isnt it?
thought of giving a feedback about this.
thanks once again
EDIT: battery charge script cannot be opened error....and cannot be removed error....
Creating new ROM zip ... zip warning: Permission denied
zip warning: Permission denied
something went wrong please zip contents in rom folder manually
done.
SREEPRAJAY said:
Thanks Android tool guru @spyrosk....and thanks @tonyp
just trying it out. A small comment....people might mistake this....there is no space between the / AND convert2new_bl.sh command line....should be the same with oldbl.sh command....isnt it?
thought of giving a feedback about this.
thanks once again
EDIT: battery charge script cannot be opened error....and cannot be removed error....
Creating new ROM zip ... zip warning: Permission denied
zip warning: Permission denied
something went wrong please zip contents in rom folder manually
done.
Click to expand...
Click to collapse
Hi my friend,
First of all sorry again for deleted post(s)..
and thank you.
The "typo" is corrected. Actually it was not a typo but I have noticed that it happens when pasting text from another editor.
Which ROM did you try to convert?
battery charge script cannot be opened error??? On which step did it happen?
I don't try to open any battery charge script
Did you add any file in "files2convert.txt"?
Very interesting tool.
Last july 7th I asked you if this were possibile and didn't have any reply. Now I'm happy that Tonyp convinced you.
Sent from my LG-P990 using xda app-developers app
wals46 said:
Very interesting tool.
Last july 7th I asked you if this were possibile and didn't have any reply. Now I'm happy that Tonyp convinced you.
Sent from my LG-P990 using xda app-developers app
Click to expand...
Click to collapse
I was on vacation sorry and when I came back I forgot to reply.
By that time I couldn't tell for sure anyway, before I have the total "picture" of the work that must be done, I mean.
@spyrosk,
my friend
Which ROM did you try to convert? Latest Avatar 3.1 Nightly OLD to NEW BL
battery charge script cannot be opened error??? On which step did it happen?I don't try to open any battery charge script It happened just the step before making the new ROM Zip
Did you add any file in "files2convert.txt"? NO
Nevertheless, I will try to flash the ROM and see what happens
EDIT:
Just now, I tried to do the PAC Man by Metallica for the Old BL and had the same error of battery charge script....
Same in Django Adios Amigo 1.6.5 to OldBL....see the script error below:
STEP 2: EXTRACTING BOOT.IMG ...
Press [enter] when ready
rm: remove write-protected regular file `out/ramdisk/charger'?
rm: cannot remove `out/ramdisk': Directory not empty
mkdir: cannot create directory `out': File exists
STEP 5: PACKING NEW BOOT.IMG ...
Press [enter] when ready
Selected kernel: kernels/oldbl-Kowalski-126.zImage
Using base address 0x10000000
Using command line ''
error: cannot open './ramdisk/charger' for read
rm: remove write-protected regular file `out/ramdisk/charger'?
rm: cannot remove `out/ramdisk': Directory not empty
Hope this helps in checking....
SREEPRAJAY said:
@spyrosk,
my friend
Which ROM did you try to convert? Latest Avatar 3.1 Nightly OLD to NEW BL
battery charge script cannot be opened error??? On which step did it happen?I don't try to open any battery charge script It happened just the step before making the new ROM Zip
Did you add any file in "files2convert.txt"? NO
Nevertheless, I will try to flash the ROM and see what happens
EDIT:
Just now, I tried to do the PAC Man by Metallica for the Old BL and had the same error of battery charge script....
Same in Django Adios Amigo 1.6.5 to OldBL....see the script error below:
STEP 2: EXTRACTING BOOT.IMG ...
Press [enter] when ready
rm: remove write-protected regular file `out/ramdisk/charger'?
rm: cannot remove `out/ramdisk': Directory not empty
mkdir: cannot create directory `out': File exists
STEP 5: PACKING NEW BOOT.IMG ...
Press [enter] when ready
Selected kernel: kernels/oldbl-Kowalski-126.zImage
Using base address 0x10000000
Using command line ''
error: cannot open './ramdisk/charger' for read
rm: remove write-protected regular file `out/ramdisk/charger'?
rm: cannot remove `out/ramdisk': Directory not empty
Hope this helps in checking....
Click to expand...
Click to collapse
I just converted Avatar-3.1 from old to new. No errors at all.
I don't like the write-protected error: rm: remove write-protected regular file `out/ramdisk/charger'
So it tries after that to remove the out directory but of course it's not empty.
Well,
Remove out directory manually and try again from the beginning..
After step 5, Before you continue to next step try to remove the whole out directory manually again.
Try also to give your account full control to the converter's folder.
This problem seems to he a windows security permission issue. Are you an administrator on the system you use?
-------------------------------------------------------------------
Stock based ROMs need more files to be changed, but they are not included yet, because I don't have the whole info needed.
Hope @rugglez or someone else will be willing to help.
Till then avoid converting stock-based roms,( or after converting replace the boot.img in converted rom with a working boot.img from another stock-based rom for the same bootloader of course. This may work)
Try ONLY CM-based roms.
I forgot to write it in OP. I'll do it asap.
spyrosk said:
I just converted Avatar-3.1 from old to new. No errors at all.
I don't like the write-protected error: rm: remove write-protected regular file `out/ramdisk/charger'
So it tries after that to remove the out directory but of course it's not empty.
Well,
Remove out directory manually and try again from the beginning..
After step 5, Before you continue to next step try to remove the whole out directory manually again.
Try also to give your account full control to the converter's folder.
This problem seems to he a windows security permission issue. Are you an administrator on the system you use?
-------------------------------------------------------------------
Stock based ROMs need more files to be changed, but they are not included yet, because I don't have the whole info needed.
Hope @rugglez or someone else will be willing to help.
Till then avoid converting stock-based roms,( or after converting replace the boot.img in converted rom with a working boot.img from another stock-based rom for the same bootloader of course. This may work)
Try ONLY CM-based roms.
I forgot to write it in OP. I'll do it asap.
Click to expand...
Click to collapse
I have a list of files/folders which I was using to port...Thanks to @rugglez ofcourse...
If you have seen the dev section....I was porting a few ROMs from Old to New BL including the stock ROMs.
So, I will send you the list by PM.
I will try the CM based ones with manual clearing...and will check that
EDIT: I am the administrator...so normally only one account and I have that rights too
thanks once again
Okay, I just used the converter on Win8 x64 to create an oldbl version of my CM10.2 ROM.
I have uploaded the resulting zip here: http://tonyp.basketbuild.com/index.php?dir=main/CM-10.2/oldbl-untested-builds/
It is untested - so do a backup!
I will post the steps I took, this might help some people who never worked with tools like this.
Please try it out with different ROMs - and if the resulting zips work a) post that here and b) share the zip in the respective threads for others to use
If you have any erros post the complete cygwin output here.
To get it do a right-click into the cygwin window, then press Enter - it's now copied into the clipboard!
Okay, off we go:
Preparation (one time only):
Downloaded cygwin. and install it
The path C:/cygwin is perfecly fine.
Just press Next until you get to the paket selection, then use the searchbox to quickly get to the tools needed:
(just click once on it, the first checkbox will get checked. The second one is for the sourcecode, you don't need that).
- zip (Archive)
- unzip (Archive)
- cpio (Utils)
- perl: Larry Wall’s Practical (perl) (you might have to open "perl" and look for it manually)
- perl_vendor (perl)
Downlaod the zip attached at the OP, extract it.
I extracted it to C:/temp/ROM-Converter-tools/
done
ROM conversion:
Open the Cygwin Terminal (either in the start menu or execute the Cygwin.bat at C:/cygwin/)
Put the ROM zip into the source_zips folder
Type:
Code:
cd /cygdrive/c/temp/ROM-Converter-tools
Needs to get adapted to your path if you extracted the ROM-Converter-tools somewhere else.
My path is: C:/temp/ROM-Converter-tools/
(Hint: after /cygdrive/c/ autocompletion with TAB will work!)
I didn't try the drag&drop tip of spyrosk.
Type:
Code:
./convert2old_bl.sh
(or convert2new_bl of course if you're going the other direction)
Follow the instructions on the screen,
As it's still in the debug mode you need to press [enter] a couple times.
This will change in the future.
Done, your converted ROM will be in the out_oldbl or out_newbl folder.
do this tool work with CM7
tonyp said:
Okay, I just used the converter on Win8 x64 to create an oldbl version of my CM10.2 ROM.
I have uploaded the resulting zip here: http://tonyp.basketbuild.com/index.php?dir=main/CM-10.2/oldbl-untested-builds/
It is untested - so do a backup!
[/LIST]
Click to expand...
Click to collapse
uhm ... in my case it got stuck at CM booting logo ... is flashing it recovery sensitive?
spyrosk said:
"...I just converted Avatar-3.1 from old to new. No errors at all.
I don't like the write-protected error: rm: remove write-protected regular file `out/ramdisk/charger'
So it tries after that to remove the out directory but of course it's not empty.
Well,
Remove out directory manually and try again from the beginning..
After step 5, Before you continue to next step try to remove the whole out directory manually again..."
Click to expand...
Click to collapse
Hummmmm, I tried experimenting, and it happened to me the same as the partner "SREEPRAJAY"! ...
Here are the errors I had during the experiments (three files *. pdf);
Hrmph.
Was running the latest CM 10.1 nightly. Rooted, old bootloader, CWM Recovery 6.0.3.1.
Made a Nandroid backup. Wiped everything from recovery, factory reset, flashed this :
http://tonyp.basketbuild.com/download.php?file=main/CM-10.2/cm-10.2-20130821-UNOFFICIAL-p990.zip
According to CWM all flashed and well. I rebooted.
Phone's bricked, won't even boot to recovery, gets stuck in the LG logo. Ouch. Halp ?
Ultramanoid said:
Hrmph.
Was running the latest CM 10.1 nightly. Rooted, old bootloader, CWM Recovery 6.0.3.1...flashed this :
http://tonyp.basketbuild.com/download.php?file=main/CM-10.2/cm-10.2-20130821-UNOFFICIAL-p990.zip
Click to expand...
Click to collapse
But...that ROM is for NEW BootLoader!!!...
Use All-In-One Toolkit to reattach the situation (reinstall again CWM Recovery);
http://forum.xda-developers.com/showpost.php?p=34809475&postcount=1
trocopassu said:
But...that ROM is for NEW BootLoader!!!...
Use All-In-One Toolkit to reattach the situation (reinstall again CWM Recovery);
http://forum.xda-developers.com/showpost.php?p=34809475&postcount=1
Click to expand...
Click to collapse
I know ! ( NEVER flash anything as soon as you wake up without checking twice, kids. )
I saw the one for old bootloader for the 20th, moved up a directory, happily flashed the one for the 21th... and for the NEW bootloader.
Don't have access to a laptop to tinker and won't for a few days. Sigh.
millionsun93 said:
do this tool work with CM7
Click to expand...
Click to collapse
No, and it never will.
GB relies on the old bootloader. It would be a lot of work to make it compatible, which isn't worth the trouble at all.
flat__line said:
uhm ... in my case it got stuck at CM booting logo ... is flashing it recovery sensitive?
Click to expand...
Click to collapse
Ah that's a shame. spyrosk needs to have a look at that when he gets some free time.
You did a full wipe didn't you?
If you did it sound like an error in the fstab.
Ultramanoid said:
I know ! ( NEVER flash anything as soon as you wake up without checking twice, kids. )
I saw the one for old bootloader for the 20th, moved up a directory, happily flashed the one for the 21th... and for the NEW bootloader.
Don't have access to a laptop to tinker and won't for a few days. Sigh.
Click to expand...
Click to collapse
Your partitions are borked and you will have to use nvflash.
I'm sorry about that although I don't really know how you came to the idea to try the untested oldbl builds when you got no PC around to recover.
This could have even happened with the correct rom - again, it is completely untested.
Sent from my LG-P990 using Tapatalk 4
tonyp said:
Ah that's a shame. spyrosk needs to have a look at that when he gets some free time.
You did a full wipe didn't you?
If you did it sound like an error in the fstab.
Click to expand...
Click to collapse
I did the full wipe (I checked: I used the ext4 full wipe zip by dr4go for the old bootloader, as I usually do, using CWM 5.0.2.8)
Note: Firmware flashing procedure is exactly the same for all firmware versions for conversions.
Local Updating using: 9.0.11 is safe
This is a basic write up to convert your bootloader unlocked T-Moilbe OnePlus 6T to the International Version firmware via fastboot flashable firmware files.
Contents:
-Disclaimer
-Full Device Backup - Precautionary - Optional, but Recommended.
-Firmware Conversion Process
-Update after conversion
-Rom Sources
-MSMDownloadTool
-FAQ's
-Additional/Optional Tools
-Credits
Disclaimer:
Like any other form of modding, there are risk involved, we have a near flawless option to recovery by use of the MSMDownload linked at the end of this post, but like with any form of modification, you are solely responsible for what is done to your device and you accept all risk involved, should something go wrong, for the most part, recovery is fairly simply, no matter how bad we screw up, thanks to OP.
Instructions to a full device backup:
1. Download the zip below and extract it to it's own folder
2. Run the backup.bat script
3. It will backup all partitions on your device, including your efs.
4. zip all of the image files and store it somewhere safe.
Backup: https://androidfilehost.com/?fid=11410963190603855581
Steps to convert from stock T-Mobile firmware to Global firmware:
FLASHING STEPS
Requirements:
1. Bootloader Unlocked T-Mobile OP 6T
Unlock Processs Can Be Found Here: https://support.oneplus.com/app/ans...-bootloader-for-oneplus-6t-(t-mobile-version)
2. OOS Stock ROM of your choice: all necessary zip files are included in the rom file, Not the TMOUS branded ROM. (Get the fastboot flashable full rom here: https://forum.xda-developers.com/oneplus-6t/how-to/rom-stock-fastboot-roms-oneplus-6t-t3862516)
3. PC/MAC/LINUX
Flashing Process
1.. Whichever full rom zip you choose, extract its contents. (In my case I used the 9.0.5 full zip)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
2. In each zip file you'll find images.zip as well as others_flashall.zip, extract both of them into the same folder/directory as the rest of the original zip file.
(Optional, download the modded flash-all-partitions-fastboot.bat file at the end of the thread, it includes the reboot command to auto reboot when done flashing)
Attached Below is also a flash-all-partitions-fastboot.sh script for Mac OS users (Note this script will not wipe your device, so if you need to wipe, run the ./fastboot -w command in fastboot manually)
All bat files, images and adb files should all be in the exact same folder, no subfolder(s)
3. Now boot into fastboot using either the vol+/vol- and power key combo or via adb using the following adb command
Code:
adb reboot bootloader
.
4. Once in fastboot run the bat file called flash-all-partitions-fastboot.bat
9
5. When asked, I would advise typing 'Y' for yes to format the device. (wipe only if you're converting for the first time)
The sparse header error is completely normal.
6. Upon completion, the script should pause and say press enter to continue, it will not reboot your device...
WAIT UNTIL NOTHING ELSE IS HAPPENING AND ITS NO LONGER FLASHING ANY FILES
At this point, hit power and reboot.
Note: Modded fastboot flashing script attached at the end with the reboot command included, also attached is a script for MAC users, mac script will not wipe your device, wipe manually if you need to using
Code:
./fastboot -w
B]
All done!
Update After Conversion (You can also update using the conversion process with the new fastboot files)
Use this if you'd like to convert and relock your bootloader or you've locked your bootloader or simply prefer this method.
1. Download the Full Official Rom from here, not the incremental update, the Full ROM only and copy it to the root of your device: HERE
2. Go to settings > system > system updates > tap settings in top right and choose local upgrade or you can use twrp
3. a) if using local upgrade, choose the ROM zip from the list and install, it will install and give you the option to reboot when complete.
b) if using twrp, boot into recovery, choose install zip and select the full rom file and flash, then follow the steps below
The following steps are for users who have/want root or a modified device or used twrp to install the ROM, device will not boot without the following steps if you installed using twrp:
4. Flash twrp installer HERE
5. Reboot back to TWRP
6. Flash Magisk (if you don't won't boot, you only need this step if your system was rooted/modified in any way) Magisk Here
Or you can skip the additional steps and simply do a factory reset.
NOTE: After using the local upgrade option, you can relock your bootloader if you choose to remain stock, enabling widevine L1 for HD videos, as well as a certified play store device.
You can continue with a locked bootloader using the local upgrade option, but be wary that you should confirm we can local upgrade prior to attempting an update. OTA updates will not show, but future local full ROM updates are working as of: current 9.0.11.
relock using fastboot oem lock command, this will wipe your device.
ROM Sources
Mauronofrio's Thread
T-Mobile 9.0 FULL Fastboot ROM
Saythis' International Firmware 9.0.6
Full ROMs directly from OnePlus for Updating Purposes ONLY
Recovery - MSMDownloadTool
If for some WEIRD reason you brick, have a HW mismatch, etc, or you just can't boot go to this thread -> MSMDownloadTool - T-Mobile 9.0
OPTIONAL Steps
Root is available via two Options below:
- OnePlus Rooter
- Manual Root Using a Patched Boot Image
Automated Process
Luckily There are devs looking to make things simpler:
For @Dameon87's automated tool to carry out this process, go to the thread below:
https://forum.xda-developers.com/oneplus-6t/how-to/rom-oxygen-os-9-0-6-fastboot-windows-t3870170
WARNINGS!
-Advisable you disable automatic updates in developer options upon boot if it is enabled.
-Do not attempt to update using the OTA files, so far we've had one softbrick due to it and said user was unable to boot into fastboot to attempt any kind of recovery.
-ALSO DO NOT FLASH WITHOUT THE FILES IN THE FOLDER, IF YOU DO YOU WILL END UP WITH A SOFTBRICK
-If you get either dump mode or fastboot bootloop check your downloaded rom file to make sure its complete, unzip again and flash again
FAQ
Q. Will this enable dual sim functionality?
A. Dual sim functionality works, volte, Wifi calling and vvm.
Q. Can I take OTA's like a regular device?
A. No, sadly.
Q. What about when a new update comes out?
A. Update procedure is written above.
Q. What if I brick or have a HW/SW mismatch?
A. Use the MSMDownloadTool to recover.
Q. Do all the features work?
A. For the most part, there are minor bugs, but they aren't consistent, so can't really say.
Q. Is this a full conversion?
A. Somewhat.
Q. Do I have to wipe everytime I update?
A. No, wiping may only be necessary for conversions, no wipe needed to update.
Q. Do I have to root everytime I update?
A. Yup, sadly.
Q. Do I have to convert to a specific version?
A. Nope, you can convert to any version.
if any edits are suggested, I'll include them.
Credits:
@mackentosh for testing and unfortunately bricking using the OTA File
@Velrix for being the second successful tester, among others.
All the other users who've been testing/contributing to testing
I'll add names when I get to comb through the threads.
@Dameon87 for the correct ROM source link of the unpacked ROM with batch files.
@Krunk_Kracker for the disable auto updates image
Thanks to @Addiso for the Stock T-Mobile Backup images
@mauronofrio for the scripts and for hosting the Rom zip @hartleyshc for testing and confirming full dual sim functionality.
@Saythis - for the 9.0.6 FULL ROM Zip
@Taebom for first testing/confirming 9.0.7 local upgrade
Thanks for the write up! It was getting confusing trying to follow multiple threads and conversations. I'm gonna wait a while before I try this but I know it'll only get better and better.
This will only work with the 9.0.4/5 ROM that has already been converted for use with Fastboot.
The full roms in the post you link do not have the required .bat files for flashing and also must be extracted from the Payload.bin file.
Did you perhaps mean to link to this thread instead? : https://forum.xda-developers.com/oneplus-6t/how-to/rom-stock-fastboot-roms-oneplus-6t-t3862516
Dameon87 said:
This will only work with the 9.0.4/5 ROM that has already been converted for use with Fastboot.
The full roms in the post you link do not have the required .bat files for flashing and also must be extracted from the Payload.bin file.
Did you perhaps mean to link to this thread instead? : https://forum.xda-developers.com/oneplus-6t/how-to/rom-stock-fastboot-roms-oneplus-6t-t3862516
Click to expand...
Click to collapse
Correct, thank you.
Dark Nightmare said:
Correct, thank you.
Click to expand...
Click to collapse
No worries!
nice doing this tomorrow night when my .bin is 7 days old
What's up with persist? No output or not getting flashed? Has anyone run it manually?
Doesn't seem like anything that needs TWRP is flashing to the partitions whether that's a good or bad thing remains to be seen since we have no clue what could brick our devices when flashing those partitions.
LLStarks said:
What's up with persist? No output or not getting flashed? Has anyone run it manually?
Click to expand...
Click to collapse
Sent from my ONEPLUS A6013 using Tapatalk
Edit. I misread. Thanks for the guide..
Does this actually give us 2 IMEIS?
ahrion said:
Does this actually give us 2 IMEIS?
Click to expand...
Click to collapse
No. It's the same imei on both slots.
Will this work with 9.0.5?
Krunk_Kracker said:
Will this work with 9.0.5?
Click to expand...
Click to collapse
Yes. He state's in the OP that he used 9.0.5.
It currently works with 9.0.4 and 9.0.5.
Is there any commands we can use to do flash-all-partitions.bat? My Mac doesn't recognize terminal as a program that can open the .bat file
dchurch85 said:
Is there any commands we can use to do flash-all-partitions.bat? My Mac doesn't recognize terminal as a program that can open the .bat file
Click to expand...
Click to collapse
Open the bat, it references 3 other bats, open those bat files in order (as text files, or just rename them .txt).
Just copy paste each line into terminal and run them that way.
hartleyshc said:
Open the bat, it references 3 other bats, open those bat files in order (as text files, or just rename them .txt).
Just copy paste each line into terminal and run them that way.
Click to expand...
Click to collapse
Thank you!
May be able to make a sh script for terminal.
Can we flash h2os?
Thank you so much to everyone involved. I should be receiving my unlock.bin file today and am anxious to get flashing. I have a few questions if anyone knows the answer:
Is the radio/modem working correctly?
If I understand correctly, after following this guide and flashing to 9.0.5 we CANNOT do future OTAs (say to 9.0.6 for example) as they are released. Is this correct?
Wow, received my token this morning, fired this up and updated. Didn't think it was possible but the update actually made the phone even better.thanks to everyone's pre work in figuring a lot of this out...
Here simple Windows tool (x64 only) to unpack existing or create your own logo.img
Based on Python script by penn5, I only created "wrapper" for comfortable using.
Guide, all simple:
1. Unpack attached archive
2. Edit images logo-*.bmp, keep 24bit color
3. Run "2 Repack.bat"
4. In folder appear done.zip, flash it via recovery
To edit existing logos replace logo.img in folder, run "1 Unpack.bat" and process as above.
Most likely app will work with other modern Xiaomi models.
If you want to try – use your own logo.img, because screen resolution may be different.
File can be copied from fastboot / recovery stock ROM or firmware.
UPD: fixed, file was not created if 7-Zip not installed.
I would like to bring to your attention that this post is currently marked as a question.
While running 2 repack.bat, it ends with error "Can't load module: 7z.dll"
HUe1998 said:
While running 2 repack.bat, it ends with error "Can't load module: 7z.dll"
Click to expand...
Click to collapse
Sorry for long answer.
Oops, my fault, file was not created if 7-Zip not installed.
Re-download ZIP, this problem fixed.
Ive been searching for ages and still havent found how to install twrp on my a33, is it even possible? Im trying to root my a33 with magisk but i need twrp. Im stuck and i dont know what to do
I've rooted through Odin by following this post https://forum.xda-developers.com/t/are-these-rooting-guides-for-the-samsung-a33-5g-good.4475163/ but I'm waiting for TWRP to install custom rom too...
ive rooted my phone with magisk by using odin and a patched ap file by magisk, i installed my official software back because magisk kind of slowed down my devices, but now im waiting for twrp so i can install lineage os
Is TWRP the onl way to install lineage OS?
yes i guess
Dryfty said:
ive rooted my phone with magisk by using odin and a patched ap file by magisk, i installed my official software back because magisk kind of slowed down my devices, but now im waiting for twrp so i can install lineage os
Click to expand...
Click to collapse
how do you want to install Lineage OS? There is still not version of Lineage for A33
you can only get lineage on a33 if you have twrp but a33 doesnt "support" twrp
Dryfty said:
you can only get lineage on a33 if you have twrp but a33 doesnt "support" twrp
Click to expand...
Click to collapse
there is an experimental version of TWRP working, I am using it
Arcangel3 said:
there is an experimental version of TWRP working, I am using it
Click to expand...
Click to collapse
on the a33? can you explain how to install it
Dryfty said:
on the a33? can you explain how to install it
Click to expand...
Click to collapse
attached to you here. Bear in mind it is experimental, but it might work
EDIT: deleting it because it is unstable version, a stable version will be released soon by @Zillion (no pressure )
Arcangel3 said:
attached to you here. Bear in mind it is experimental, but it might work
Click to expand...
Click to collapse
Hey, thanks for sharing! Could you say what's the best custom ROM for this device for the moment? Or where is the list of ROMs? thanks!
vovaxxxx said:
Hey, thanks for sharing! Could you say what's the best custom ROM for this device for the moment? Or where is the list of ROMs? thanks!
Click to expand...
Click to collapse
there is none yet.
But some poeple said that stock ROM for A33 is good enough to not need a custom ROM.
Arcangel3 said:
attached to you here. Bear in mind it is experimental, but it might work
Click to expand...
Click to collapse
Give credits to the guy that made it
Zillion said:
Give credits to the guy that made it
Click to expand...
Click to collapse
I am not sure who made it, was it you? hehe
Dryfty said:
Ive been searching for ages and still havent found how to install twrp on my a33, is it even possible? Im trying to root my a33 with magisk but i need twrp. Im stuck and i dont know what to do
Click to expand...
Click to collapse
bro try this way to root
I want to root my A12 but it not work for my phone.please send me a latest version for A127FXXU7BVI1 isBaseband version
I want to root my A12 but it not work for my phone.please send me a latest version for A127FXXU7BVI1 isBaseband version
forum.xda-developers.com
Arcangel3 said:
I am not sure who made it, was it you? hehe
Click to expand...
Click to collapse
Yup, it got its reasons to not be released.
Zillion said:
Yup, it got its reasons to not be released.
Click to expand...
Click to collapse
should I delete it?
Do we have any better version now?
@Zillion any progress with a relesable version???
Arcangel3 said:
@Zillion any progress with a relesable version???
Click to expand...
Click to collapse
I don't own A33 and I don't know how to make any progress on this :c
I managed to get the Lineage OS "Light" GSI version by AndyYan https://forum.xda-developers.com/t/gsi-13-lineageos-20-light.4509315/ and it works well, but the process to install it is pretty involved and if you do anything wrong, you can easily soft-brick your phone. This process should also work for other gsi roms
First Download the Latest Version of Lineage OS "Light", of which the download link can be found in the thread above or here https://sourceforge.net/projects/andyyan-gsi/files/lineage-20-light/ (There are three versions, vS "Vanilla with Superuser installed" vN "Non-SU Vanilla" and gN "Non-SU with GApps") If you want root, I suggest choosing one of the Non-SU versions and patching the stock AP tar with Magisk before starting this process as the Superuser version provides you a generic superuser app and installing magisk with it greets you with a abnormal state message every time you launch the Magisk Manager.
Second: Unpack the downloaded tar file using 7zip if on windows or with the tar command on linux, and then rename the unpacked .img file to system.img
Third: Get the stock firmware for your device using samloader or some other Samsung firmware downloader and unpack the archive file you get to a directory
Fourth: Unpack the AP tar file, you should get a bunch of files in .img.lz4 format.
Fifth: Find the super.img.lz4 file and decompress it using https://github.com/lz4/lz4/releases and this command
Code:
lz4.exe -d super.img.lz4 super.img
From this point onwards you are better off on linux (I've only tested this on Ubuntu WSL so far), if you're on windows 10+, I suggest enabling Windows Subsystem for Linux and downloading and running the Ubuntu distro from the Microsoft store, you can google how to do that.
Sixth: Within Linux (Ubuntu in my case), install the "android-platform-system-core" package using your preferred package manager (I know that package is available on Ubuntu, but I haven't researched whether any other linux distro has that package available). The main thing we want from that package is the shell script "simg2img" as the super.img is currently sparsed (compressed using the Android Sparse image format).
Seventh: If you already did the steps so far in Linux, just go to whatever directory you have the super.img stored, otherwise if you did everything in windows and have a Ubuntu WSL distro ready, you can copy the super.img directly into the ubuntu distro by going into file explorer and scrolling all the way to the bottom of the navigation pane till you see Linux, of which you can expand to find a Ubuntu network share folder, expand that and drag and drop the super.img into your root folder, as well as the system.img file (renamed gsi rom file).
Eighth: Unsparse the super.img using the command:
Code:
simg2img super.img *whatever*.img
This will give you a raw disk image of super.img that's about 9-10 gb. You can name the output file to whatever you want as long as you can discern which img is which, in fact after running the command you can delete the original as you no longer need it.
From here is where the process gets a bit tricky and I fully recommend reading through this guide: https://forum.xda-developers.com/t/...are-binary-3-may.4053065/page-4#post-82241115
Ignore the fact that the thread is for the Galaxy a51 as the steps work for the a33 as well. When you get to the point where you've unpacked the Super.img, copy the GSI system.img over the stock one.
Now the part that can easily cause you to mess up is that when repacking super.img, you have to get the size of each file, including the unsparsed super.img and input the size in bytes of each file in place of what is given in the long command used to repack the image. The numbers you have to change are as follows:
--device super:4294967296 (Change to the file size of super.img)
--group main:4293513600 (Calculate the sum of the size of each of the .img files that were contained in the super.img, minus product.img as that's not needed)
--partition vendor:readonly:342155264:main (Change to the byte size of your vendor.img, same goes for system, odm and vendor_dlkm. Not sure if vendor_dlkm is required as it's not shown in the guide, but just to be safe, I'd recommend adding that in the same format as shown above for vendor just change vendor to vendor_dlkm)
File sizes can be acquired using the command:
Code:
ls -l
Another thing to note is that all of the file sizes must be divisible by 512 as that's the block size the img uses, if they all are, then you're good to go, if one or more aren't you're probably dealing with a corrupt file or that one of the img files is sparsed or compressed in some way. Once you've confirmed the file sizes are good, run the command. You can ignore the "Invalid sparse file format at header magic" message as it doesn't seem to mean anything bad for the process. You don't have to worry if the sparsed image file size is divisible by 512 as it more than like won't be evenly divisible as the file is compressed now.
Once that's done you can take the new modified super.img (make sure it's named that) out of the linux distro and back to windows.
Recompress the super.img back into super.img.lz4 using the command:
Code:
lz4.exe -B6 --content-size super.img super.img.lz4
Now package the super.img.lz4 file with all of the other files from the AP back into a tar file, I suggest using the tar-md5-script-tool.zip from this thread https://forum.xda-developers.com/t/...sing-odin-without-twrp-phh-lineageos.4114435/
At this point, you can skip to step 24 on that guide and continue from there to install the custom rom, just remember to use super.img.lz4 instead of system.img.ext4.lz4, also ignore the .ext4 part, I think that's a device specific thing and the a33 from what I know doesn't have that.
Once you're done and you've booted up after flashing with ODIN, you should be greeted with the lovely Lineage OS Boot Screen
Bare in mind this is a barebones rom and many features may not work as intended since it's an unofficial build of Lineage OS and is intended to work with many devices without too many issues.