How to change CID with S-ON, without SunShine

Search This thread

tomitoek

Member
Jul 12, 2019
5
0
Only some versions can be changed ,what cid was your phone and what were you trying to change to ,restore your original file and see if you can run the matching RUU

my CID was HTC__060 and i want to change it to HTC__621, and its work! its got changed to HTC__621, but red message appear then and it cant boot on OS (bootloop on Bootloader) i've restore the original file and the problem still exist. please help me T-T
 

felixpaz1992

Senior Member
May 18, 2014
170
22
Good with everyone, I have read all the thread and I wanted to know if they could clear me the doubt, I have an HTC 10 that is from the Claro operation of Colombia and has a very special CID, so as not to lengthen the cell phone stays in the logo of HTC and I can't find the rom for my CID and I wanted to know if with this procedure it is possible to install a rom stock with another CID since I'm S-ON
 

chu32951

Member
Apr 11, 2013
5
4
Beijing
Just to sort out the steps

To change CID and MID, we only need modify three file: misc, board_info and mfg. sdxx are not needed, because
/dev/block/bootdevice/by-name/misc -> /dev/block/sde1
/dev/block/bootdevice/by-name/board_info -> /dev/block/sdf1
/dev/block/bootdevice/by-name/mfg -> /dev/block/sdf2

misc for Software Version
board_info for CID
mfg for MID

Steps with TWRP:
0. Connect the phone to the PC and reboot to TWRP

adb reboot recovery
adb shell​

you can also do the following steps with rooted android and busybox. In this way you need to add prefix "busybox " to dd

1. Check your original data
Software Version:
dd if=/dev/block/bootdevice/by-name/misc bs=1 skip=2208 count=11​
CID:
dd if=/dev/block/bootdevice/by-name/board_info bs=1 skip=20 count=8​
MID:
dd if=/dev/block/bootdevice/by-name/mfg bs=1 skip=16384 count=16​

2. If the original data match your current value, then you can do the following step.
Just in case, back up the original file

dd if=/dev/block/bootdevice/by-name/misc of=/external_sd/misc.img
dd if=/dev/block/bootdevice/by-name/board_info of=/external_sd/board_info.img
dd if=/dev/block/bootdevice/by-name/mfg of=/external_sd/mfg.img​

Set a lower version than your RUU which will be flashed.
printf 1.01.001.01 | dd conv=notrunc of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208​

or just clear it.
dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=11​

Set your desired CID. (HTC__001 below)
printf HTC__001 | dd conv=notrunc of=/dev/block/bootdevice/by-name/board_info bs=1 seek=20​

Set your desired MID. (2PZC1000 below) Please note that each character is separated by \x00
printf "2\x00P\x00Z\x00C\x001\x000\x000\x000\x00" | dd conv=notrunc of=/dev/block/bootdevice/by-name/mfg bs=1 seek=16384​

3. Repeat commands in step 1 to check the result.


P.S.
If you got "dd: conv option disabled" in step 2, you need to download busybox to enable this feature.
download link
adb push ./busybox-armv8l /tmp/
adb shell "chmod 755 /tmp/busybox-armv8l;mv /tmp/busybox-armv8l /tmp/busybox"

then add prefix "/tmp/busybox " to all dd command.
 
Last edited:

tomitoek

Member
Jul 12, 2019
5
0
To change CID and MID, we only need modify three file: misc, board_info and mfg. sdxx are not needed, because
/dev/block/bootdevice/by-name/misc -> /dev/block/sde1
/dev/block/bootdevice/by-name/board_info -> /dev/block/sdf1
/dev/block/bootdevice/by-name/mfg -> /dev/block/sdf2

misc for Software Version
board_info for CID
mfg for MID

Steps with TWRP:
0. Connect the phone to the PC and reboot to TWRP

adb reboot recovery
adb shell​

you can also do the following steps with rooted android and busybox. In this way you need to add prefix "busybox " to dd

1. Check your original data
Software Version:
dd if=/dev/block/bootdevice/by-name/misc bs=1 skip=2208 count=11​
CID:
dd if=/dev/block/bootdevice/by-name/board_info bs=1 skip=20 count=8​
MID:
dd if=/dev/block/bootdevice/by-name/mfg bs=1 skip=16384 count=16​

2. If the original data match your current value, then you can do the following step.
Set a lower version than your RUU which will be flashed.
printf 1.01.001.01 | dd conv=notrunc of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208​

or just clear it.
dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=11​

Set your desired CID. (HTC__001 below)
printf HTC__001 | dd conv=notrunc of=/dev/block/bootdevice/by-name/board_info bs=1 seek=20​

Set your desired MID. (2PZC1000 below) Please note that each character is separated by \x00
printf "2\x00P\x00Z\x00C\x001\x000\x000\x000\x00" | dd conv=notrunc of=/dev/block/bootdevice/by-name/mfg bs=1 seek=16384​

3. Repeat commands in step 1 to check the result.

I have following the steps, and now my screen turn into black and only response with vibrate.
It cannot boot. What should i do now? Please help me. Im really appreciate for any help ?
 

valvaher

Member
May 17, 2015
41
2
To change CID and MID, we only need modify three file: misc, board_info and mfg. sdxx are not needed, because
/dev/block/bootdevice/by-name/misc -> /dev/block/sde1
/dev/block/bootdevice/by-name/board_info -> /dev/block/sdf1
/dev/block/bootdevice/by-name/mfg -> /dev/block/sdf2

misc for Software Version
board_info for CID
mfg for MID

Steps with TWRP:
0. Connect the phone to the PC and reboot to TWRP

adb reboot recovery
adb shell​

you can also do the following steps with rooted android and busybox. In this way you need to add prefix "busybox " to dd

1. Check your original data
Software Version:
dd if=/dev/block/bootdevice/by-name/misc bs=1 skip=2208 count=11​
CID:
dd if=/dev/block/bootdevice/by-name/board_info bs=1 skip=20 count=8​
MID:
dd if=/dev/block/bootdevice/by-name/mfg bs=1 skip=16384 count=16​

2. If the original data match your current value, then you can do the following step.
Set a lower version than your RUU which will be flashed.
printf 1.01.001.01 | dd conv=notrunc of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208​

or just clear it.
dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=11​

Set your desired CID. (HTC__001 below)
printf HTC__001 | dd conv=notrunc of=/dev/block/bootdevice/by-name/board_info bs=1 seek=20​

Set your desired MID. (2PZC1000 below) Please note that each character is separated by \x00
printf "2\x00P\x00Z\x00C\x001\x000\x000\x000\x00" | dd conv=notrunc of=/dev/block/bootdevice/by-name/mfg bs=1 seek=16384​

3. Repeat commands in step 1 to check the result.

very good day.

I followed all the steps and I get error 14, if you change CID and MID but do not load the new RUU
 

chu32951

Member
Apr 11, 2013
5
4
Beijing
I have following the steps, and now my screen turn into black and only response with vibrate.
It cannot boot. What should i do now? Please help me. Im really appreciate for any help

Can you enter TWRP? Try modifying it back to the original value.

---------- Post added at 12:34 AM ---------- Previous post was at 12:22 AM ----------

very good day.

I followed all the steps and I get error 14, if you change CID and MID but do not load the new RUU

strange, these steps should be the same as AHMADHAFEZY‘s, just replacing the hex editor with printf.

BTW, I tested this steps with RR and TWRP, not stock ROM. I don't know if this will lead to different results.
 

tomitoek

Member
Jul 12, 2019
5
0
Can you enter TWRP? Try modifying it back to the original value.

---------- Post added at 12:34 AM ---------- Previous post was at 12:22 AM ----------



strange, these steps should be the same as AHMADHAFEZY‘s, just replacing the hex editor with printf.

BTW, I tested this steps with RR and TWRP, not stock ROM. I don't know if this will lead to different results.

No, it cant enter TWRP. The phone cant turn on, and it only vibrate when i push power button (also vol up+power button). Please help me ?
 

valvaher

Member
May 17, 2015
41
2
I have a htc u11 whl, I change CID and MID of Taiwan and change it, the problem is that when loading the RUU of Taiwan I get an error FAILED 14 android_info.txt missing or malformed
 
Last edited:

chu32951

Member
Apr 11, 2013
5
4
Beijing
I have a htc u11 whl, I change CID and MID of Taiwan and change it, the problem is that when loading the RUU of Taiwan I get an error FAILED 14 android_info.txt missing or malformed

Did you load RUU in ruu mode?
In download mode, run
htc_fastboot oem rebootRUU
to enter ruu mode.

---------- Post added at 05:31 AM ---------- Previous post was at 05:23 AM ----------

No, it cant enter TWRP. The phone cant turn on, and it only vibrate when i push power button (also vol up+power button). Please help me ?

Sorry, if you can't even enter the bootloader with vol up+power, I don't know how to fix it.

BTW, did you completely power off before entering BL?
 

tomitoek

Member
Jul 12, 2019
5
0
Did you load RUU in ruu mode?
In download mode, run
htc_fastboot oem rebootRUU
to enter ruu mode.

---------- Post added at 05:31 AM ---------- Previous post was at 05:23 AM ----------



Sorry, if you can't even enter the bootloader with vol up+power, I don't know how to fix it.

BTW, did you completely power off before entering BL?

Yes, i completely power off it.
 

zjjshxh

Member
Mar 10, 2019
13
2
Can this tutorial can use for a5dug? I am quiet enjoyable to my u11 US Unlocked but i am using an a5dug and i wanna change cid for more roms XP (HTC Desire 816 Dualsim)
 

Drago3110

Member
Oct 18, 2011
21
6
To change CID and MID, we only need modify three file: misc, board_info and mfg. sdxx are not needed, because
/dev/block/bootdevice/by-name/misc -> /dev/block/sde1
/dev/block/bootdevice/by-name/board_info -> /dev/block/sdf1
/dev/block/bootdevice/by-name/mfg -> /dev/block/sdf2

misc for Software Version
board_info for CID
mfg for MID

Steps with TWRP:
0. Connect the phone to the PC and reboot to TWRP

adb reboot recovery
adb shell​

you can also do the following steps with rooted android and busybox. In this way you need to add prefix "busybox " to dd

1. Check your original data
Software Version:
dd if=/dev/block/bootdevice/by-name/misc bs=1 skip=2208 count=11​
CID:
dd if=/dev/block/bootdevice/by-name/board_info bs=1 skip=20 count=8​
MID:
dd if=/dev/block/bootdevice/by-name/mfg bs=1 skip=16384 count=16​

2. If the original data match your current value, then you can do the following step.
Just in case, back up the original file

dd if=/dev/block/bootdevice/by-name/misc of=/external_sd/misc.img
dd if=/dev/block/bootdevice/by-name/board_info of=/external_sd/board_info.img
dd if=/dev/block/bootdevice/by-name/mfg of=/external_sd/mfg.img​

Set a lower version than your RUU which will be flashed.
printf 1.01.001.01 | dd conv=notrunc of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208​

or just clear it.
dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=11​

Set your desired CID. (HTC__001 below)
printf HTC__001 | dd conv=notrunc of=/dev/block/bootdevice/by-name/board_info bs=1 seek=20​

Set your desired MID. (2PZC1000 below) Please note that each character is separated by \x00
printf "2\x00P\x00Z\x00C\x001\x000\x000\x000\x00" | dd conv=notrunc of=/dev/block/bootdevice/by-name/mfg bs=1 seek=16384​

3. Repeat commands in step 1 to check the result.


P.S.
If you got "dd: conv option disabled" in step 2, you need to download busybox to enable this feature.
download link
adb push ./busybox-armv8l /tmp/
adb shell "chmod 755 /tmp/busybox-armv8l;mv /tmp/busybox-armv8l /tmp/busybox"

then add prefix "/tmp/busybox " to all dd command.

Thank you for this easy way.

I decided to go completely to stock. But with my nandroid backup i was not able to get OTA Updates. And i don't know why, but i couldn't flash the updates manually.

Original CID was VODA102; MID 2PZC10000 and Software 2.33.161.11.
Bootloader is unlocked, too.

I changed my CID to CID HTC__034 (Europe) and used dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=11 to clear the version.

And no problems here. I flashed the RUU without problems and ow i get OTA-Updates and my Phone is unbranded :good::good:

Thank you very much!!!!!
 

phatoutpac

Member
Sep 6, 2011
24
5
37
Kuala Lumpur
OnePlus 8 Pro
Hi Devs,

I made the mistake of relocking my bootloader however I've another problem that is stopping me from restoring my phone thru RUU. Before my phone got locked, I was messing around with CID & MID using the adb shell command and screwed up my numbers - CID now reads HTC__001 (double underscore instead of HTC_001) and MID now reads 20P0Z0C030000000 (instead 2PZC3000)

Is there anything I can do? Is there any method to pull the sde/sdf file from bootloader without adb shell? Will sde/sdf from another HTC u11 help? I'm screwed or Will HTC service center will be able to fix this?

Any advice is much appreciated
 
  • Like
Reactions: Jonas22

Jonas22

Member
Dec 26, 2013
22
8
I've a very similar problem as you phatoutpac. My bootloader is still unlocked, but I'm stucked in the bootloader, no possibility to get in DownloadMode or Recovery, everytime I try, I got redirected to the Bootloader. Long story short:
- Is there any possibility to get access to the partitions, the emmc, use adb shell, etc. without recovery and downloadmode?
- The Phone is a U12+, I've got another u12+ here so a emmc-dump would not be a problem
- Explained my problem here: https://xdaforums.com/t/stuck-in-fastboot-mode-no-download-mode-partition-failure.4197203
- hope it's fine for you, me posting it here, but after months I don't see an alternative, if there are some out there that need a u12+ emmc-dump I can upload mine

Thank you very much!
 

the_steve1

New member
Jun 18, 2019
2
0
This process is fatal on a U11 life
I bricked 2
Soon as i reboot it goes into bootloaser with the msg that incorrect firmware was flashed to this device and phone has been locked
From there RUU can't read battery status and refuses to flash
I can delete partitions, but any remedies I thought of were blocked
 

Eiad Ajam

Senior Member
Jul 24, 2012
405
116
Homs
I have bricked my htc 5g hub
it is stuck in fastboot with red text "Security error, this phone has been flashed with unauthorized software"
can't reboot to download
when trying to boot twrp it gets blank screen (device still recognized in fastboot)

When I try to flash a boot I get the message "FAILED (remote: Flashing is not allowed on PRODUCTION device)"

Any help how can I restore my device ?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 5
    How to change CID with S-ON, without SunShine
    :confused::confused::confused::confused::confused::confused::confused::confused::confused::confused:

    Not so long ago, I got my U11 back under warranty - kindly replaced with a new phone (it has nothing to do with marriage). Naturally, the S-OFF license from SunShine is gone, as it is tied to the motherboard. I know before they could transfer the license to another phone, asked @beaups about it .. received the answer that no, only within a month after the purchase you can transfer the license SunShine. I understand why the month is like for the USA and it’s not that I’m offended .. and for the sake of diversity I didn’t buy S-OFF more on this device and the result is here .. and I’ll put it on xda .. This technique applies exactly to U11, U11 +, HTC 10, HTC One M9 where checked, I think today and to the U12 + too.

    How to change CID with S-ON, without SunShine

    (to a friend: How to save $ 25 or how much he pays for the mean )


    ATTENTION!!! There is a danger that the instructions will not be properly followed, which will cause the phone to scrape and go to the SC. Therefore, if you do not have a full understanding of what it is about or you do not know how to do it, then it is better not to start! Here the author of the post or anyone else on this forum is not responsible for what was done, all responsibility lies only with you.


    Baseline:
    OCEAN DUGL (Dual SIM), Product ID: htc_ocndugl, MID: 2PZC30000, unlocked bootloader Unlocked, the last permanent TWRP configured by the PC to run adb utilities.
    By compulsory preliminary reading: Which version you can remake your U11
    For example, EMEA with SKU 2.33.401.19 and the task to remake in Taiwan, CID HTC__621 Taiwan needs
    RUU for flashing the phone after changing the CID, available for this phone from the cap 2.31.709.1
    #
    Initial data
    Reduced by 88%
    Attached Image
    2240 x 4000 (2.47 MB)
    Reduced by 81%
    Attached Image
    1440 x 2560 (86.28 KB)


    0. Connect the phone to the PC and load it into TWRP and move it aside:
    adb reboot recovery


    1. In order to be able to flash the desired RUU, we clear the software number in the phone:
    1a. Execute the command from the terminal:
    adb shell "dd if = / dev / zero of = / dev / block / bootdevice / by-name / misc bs = 1 seek = 2208 count = 16"

    Should get an approximate result:
    16 + 0 records in
    16 + 0 records out
    16 bytes (16B) copied, 0.007466 seconds, 2.1KB / s

    1b. Check done:
    adb shell "dd if = / dev / block / bootdevice / by-name / misc bs = 1 skip = 2208 count = 16"

    We see instead of the software number an empty space:
    16 + 0 records in
    16 + 0 records out
    16 bytes (16B) copied, 0.006654 seconds, 2.3KB / s

    If everything is so, we move on ..
    2a. Copy to the internal SD the desired section for further editing:
    adb shell "dd if = / dev / block / bootdevice / by-name / board_info of = / sdcard / board_info.img"

    2b. The resulting file can be edited by third-party * programs on Android on SD or copied to your PC (as I did) to the subdirectory where adb utilities, in any way or:
    adb pull /sdcard/board_info.img

    Attention! Save a copy of this to your original file.

    3. On a PC, you can edit this file with a regular editor, such as Notepad, but better, more professionally, Hex Editor
    Attention !!! There is a danger of the human factor, automatic whistles, typos. HTC's CID consists of 8 characters ... for example, Taiwan should be right: HTC__621, Europe: HTC__001, Russsia: HTC__A07. Before saving, check that you have not touched IMEI, which is written together for CID. It is necessary to edit only within 8 characters of CID, otherwise problems cannot be avoided !!!
    We are looking for the current CID and fix it to the desired one:
    #

    save.
    4a. We return the edited file to the phone in SD:
    adb push ./board_info.img /sdcard/board_info.img

    4b. We sew in its place edited board_info.img:
    adb shell "dd if = / sdcard / board_info.img of = / dev / block / bootdevice / by-name / board_info"

    The result can be seen in the download mode with the command fastboot getvar all or fastboot getvar cid
    #

    5. Reboot into download mode:
    adb shell reboot download

    from where we sew a pre-prepared RUU with extSD according to the instructions from the header, confirming it with the Volume + button, or using the RUU firmware method from a PC.
    We end up with a phone on another full stock firmware:
    #

    5a. If someone wants to stay on the stock, then you can close the bootloader for Google Pay and similar applications according to the instructions: HTC U11 - Firmware (Post ziand # 64292895)

    PS It is especially useful for those who want to change Hong Kong to another to display Russian letters in the dialer stock dialers .. etc.
    PSS Of course, there is a technique and MID changes, but I do not post it for reasons of general bricks, especially on U11 ... there you also need to change something else too mfg

    enjoy HTC : derisive:
    4
    Just to sort out the steps

    To change CID and MID, we only need modify three file: misc, board_info and mfg. sdxx are not needed, because
    /dev/block/bootdevice/by-name/misc -> /dev/block/sde1
    /dev/block/bootdevice/by-name/board_info -> /dev/block/sdf1
    /dev/block/bootdevice/by-name/mfg -> /dev/block/sdf2

    misc for Software Version
    board_info for CID
    mfg for MID

    Steps with TWRP:
    0. Connect the phone to the PC and reboot to TWRP

    adb reboot recovery
    adb shell​

    you can also do the following steps with rooted android and busybox. In this way you need to add prefix "busybox " to dd

    1. Check your original data
    Software Version:
    dd if=/dev/block/bootdevice/by-name/misc bs=1 skip=2208 count=11​
    CID:
    dd if=/dev/block/bootdevice/by-name/board_info bs=1 skip=20 count=8​
    MID:
    dd if=/dev/block/bootdevice/by-name/mfg bs=1 skip=16384 count=16​

    2. If the original data match your current value, then you can do the following step.
    Just in case, back up the original file

    dd if=/dev/block/bootdevice/by-name/misc of=/external_sd/misc.img
    dd if=/dev/block/bootdevice/by-name/board_info of=/external_sd/board_info.img
    dd if=/dev/block/bootdevice/by-name/mfg of=/external_sd/mfg.img​

    Set a lower version than your RUU which will be flashed.
    printf 1.01.001.01 | dd conv=notrunc of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208​

    or just clear it.
    dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=11​

    Set your desired CID. (HTC__001 below)
    printf HTC__001 | dd conv=notrunc of=/dev/block/bootdevice/by-name/board_info bs=1 seek=20​

    Set your desired MID. (2PZC1000 below) Please note that each character is separated by \x00
    printf "2\x00P\x00Z\x00C\x001\x000\x000\x000\x00" | dd conv=notrunc of=/dev/block/bootdevice/by-name/mfg bs=1 seek=16384​

    3. Repeat commands in step 1 to check the result.


    P.S.
    If you got "dd: conv option disabled" in step 2, you need to download busybox to enable this feature.
    download link
    adb push ./busybox-armv8l /tmp/
    adb shell "chmod 755 /tmp/busybox-armv8l;mv /tmp/busybox-armv8l /tmp/busybox"

    then add prefix "/tmp/busybox " to all dd command.
    1
    You can find everything on the U11 and U11 + forums, but you must know that playing with files is a big risk, I did so but there were always problems, during the attempts to update the phone hung on the bootloader. In the end, I used the SunShine application, and now everything works fine. It is not known how much and what files, apart from those given by you and me, must be changed to make everything work well.

    Wysłane z mojego HTC U11 przy użyciu Tapatalka

    Unfortunately, it's not possible to buy and use Sanshin for my country.
    1
    Okay so I was successful in changing my sprint to us unlocked version and got the update to the June 2018 which is old but still better than 2017 Nov ,and I think US unlocked will get Pie I'm not sure about Sprint hence why I changed thanks to @ziand for tutorial and op for pointing me to it and saving me from needing to s-off
    1
    Pls help us a tutorial to change from Sprint to US unlocked. Tks in advance .

    just follow the link in op he copy and pasted the translated version ,but what i did was firstly backup your internal such as pics and vids then
    open both the original and translated in 2 tabs because the translated version puts spaces in the commands like:
    adb shell "dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=16"
    became
    adb shell "dd if = / dev / block / bootdevice / by-name / misc bs = 1 skip = 2208 count = 16"

    also just remove the " so
    adb shell dd if=/dev/zero of=/dev/block/bootdevice/by-name/misc bs=1 seek=2208 count=16

    then I copied the file from my internal edited and make sure to back up this file pushed it back to my u11 i used hex editor we change our cid from SPCS_001 to BS_US001 (in the pic from other link the guy changed to TW variant i think HTC__621 only some variants can be changed which share the same mid)
    dont try to boot into system like a normal reboot
    the boot into download mode with cmd:
    adb shell reboot download
    and i used external xd card RUU method to flash the us unlocked ruu
    from
    https://androidfilehost.com/?fid=962157660013070749
    then it will boot and you should be on us unlocked the go to settings and search for updates and they should be 2 updates there for you