[Galaxy Ace S5830i Android Development] El_Dark:
How to recover your Galaxy Ace's baseband

ONLY FOR WORKING DEVICES, THIS IS NOT A GUIDE ON HOW TO UNBRICK

#include
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards, thermonuclear
* war, etc. Please do some research if you have any concerns about the
* topics included in this guide before following it! YOU are choosing to
* follow these steps, and if you point the finger at me for messing up your
* device, I will laugh at you.
*
* For any further assistance, please reach an authorized technical service.
*/

a)Pay close attention to the way the commands are shown below, i.e. it's BML not BM1, but not in caps, in minus: bmlXX where XX is the corresponding number.

b)Make sure there is enough space on /sdcard/ at least 50 megabytes to be sure no app will take over that space

c)Use extreme caution when following this guide, you're messing with the bootloader here, if you are doing it wrong, you'll kill your phone with no chance of easy-homemade-recovery like Odin or a USB Jig.

d)If you definitely did it wrong, and no recovery method helps, prepare your pocket to take your phone to a specialized tech center.

This is a very simple tutorial for those of us you who after a really, really bad brick had been seen in the need to flash a determined firmware which is not the corresponding to your phone's country. Well, fear not for I have come to save your 3G!!!

Steps:

Get a phone of the exact same model as yours, in stock (this is important because that will determine if the settings being applied are the actual facotry ones). We will refer to this as the Source phone

Root the source phone, if it's not already rooted (again, this is important, 'cause a non-rooted phone might not allow us to read /dev/bml partitions and/or execute dd command well, although I have to investigate that)

Install terminal emulator on the source phone, if it's not already installed. Alternatively, you can enable USB Debugging and use ADB instead

input the following commands (mind the caps):

# dd if=/dev/bml1 of=/sdcard/Boot_img/BcmBoot.img
# dd if=/dev/bml13 of=/sdcard/Boot_img/sysparm_dep.img
# dd if=/dev/bml14 of=/sdcard/Boot_img/HEDGE_NVRAM8_RF_LE.bin

I have used the directory "Boot_img/" for this case, you can use whatever you want lol :cyclops: but it's important to have these 3 files by themselves as we're putting them into a tar file

Perform the command (For the example I've used BOOT_S5830CVJKL4, but you should use the model name for the boot from the Source phone):

# cd /sdcard/Boot_img/
# tar -cf BOOT_S5830CVJKL4.tar ./*

Dismiss the Source phone, and ready up the "Target" phone, the one to have the newly created boot image applied.

Place the Target phone in download mode

Grab Odin3_V3.07 (Proven to work best with the Ace-i)

Once your phone's been detected, select the PIT file and the Bootloader file (I'm not telling you how to do it here, there are good ODIN tutorials for the Ace-i and I assume you search for them)

Start flashing

?????????????

PROFIT!

There is no need to revert to stock actually, although it *might* be a better idea to flash this over stock rom lol, there's less chance of bricking.

Credits:

[MENTION=1834730]lyriquidperfection[/MENTION] for the PIT Magic application, which has perfect and wonderfully helped me determine the necessary partitions to pick.

[MENTION=3531642]feetsonfire[/MENTION] for an awesome guide on flashing via ODIN

Anyone else who I may have missed, you can mention them below ;)