Pages

Showing posts with label how. Show all posts
Showing posts with label how. Show all posts

Friday, January 20, 2017

The HTC M8 to be launched on 25 03 2014




It seems that we finally know the date – 25.03.2014 looks like the day when HTC will launch their new flagship device and the HTC One (M7) successor – HTC One M8 which is rumoured to be called "HTC One+" or "HTC One 2" or just " HTC One (M8)".

About the device itself we know pretty much already. Recently we wrote about the design (The HTC One 2014 (M8) design exposed) and weve seen some popular mock-ups made by hamdir in HTC One 2014 (M8) target renders, a visual compilation of all the leaks. I must say this all looks promising and we still hope to see HTC M8 equipped with Qualcomm Snapdragon 805 instead of an already one year old Snapdragon 800 SoC.

Have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!


For latest news / announcements follow Android Revolution HD on popular social platforms:

Read More..

Thursday, October 27, 2016

HTC ROM Update Utility RUU variants explanation

Owners of HTC devices might be a little confused when it comes to understanding the current method of numbering used by HTC to mark their software updates. Here you can find a short explanation of this matter.

First of all, we all know that HTC sells their devices all over the world. Every carrier and region of the world has some more or less different "local settings". By "local settings" I mean things like: emergency call numbers, languages, time-zone settings, network settings, carriers branding, GPS settings and more. Because of that each software for even the same device must be different.

Secondly, even the same device might use different hardware related to the region of the world. For example, HTC One is available in at least 6 different hardware configurations. One of the main difference is modem version. GSM version of the HTC One uses MDM8215 chip and LTE variant has MDM9215. Verizon (US) is known to have MDM9615. So thats already 3 different versions of the same device.

Every HTC update has the following numbering structure:

a.bb.ccc.d

a - the first number of the software. Normally it doesnt increase very often, but when it does, it usually means newer Android version.
bb - this number is also a software number. Increasing bb number means some more or less major update based on the same Android version, but sometimes it might even bring newer version of the HTC Sense.
ccc (also cc or cccc) - this is the number of the region/carrier. It has nothing to do with the software itself being newer or older. More details below.
d (sometimes dd) - the third part of the software version (the fourth one in the RUU name). Usually indicates some minor update with some hot fixes.


Example: 3.20.401.3

So basically, when you are interested in the software version, you should look at a.bb.d (3.20.ccc.3) because ccc (401) means only the region/carrier variant of the software.

Here is the list I was able to gather of possible RUU variants:

a.bb.61.d - Orange UK (United Kingdom)
a.bb.65.d - Orange CH (Switzerland)
a.bb.69.d - Orange PL (Poland)
a.bb.73.d - Orange FR (France)
a.bb.75.d - Orange ES (Spain)
a.bb.110.d - T-Mobile UK (United Kingdom)
a.bb.111.d - T-Mobile DE (Germany)
a.bb.112.d - T-Mobile AT (Austria)
a.bb.113.d - T-Mobile CZ (Czech Republic)
a.bb.118.d - T-Mobile PL (Poland)
a.bb.161.d - Vodafone UK (United Kingdom)
a.bb.163.d - Vodafone FR (France)
a.bb.165.d - Vodafone IT (Italy)
a.bb.166.d - Vodafone CH-DE (Switzerland - Germany)
a.bb.168.d - Vodafone GR (Greece)
a.bb.169.d - Vodafone AT (Austria)
a.bb.206.d - O2 UK (United Kingdom)
a.bb.207.d - O2 DE (Germany)
a.bb.401.d - World Wide English (WWE)
a.bb.415.d - Arabic (UAE/Middle East)
a.bb.468.d - Turkey
a.bb.497.d - Morocco
a.bb.498.d - WWE Brightpoint US (United States)
a.bb.502.d - Cingular US (United States)
a.bb.531.d - T-Mobile US (United States)
a.bb.631.d - Rogers Canada (WWE)
a.bb.651.d - Sprint US (United States)
a.bb.661.d - Telus WWE (Canada)
a.bb.666.d - Bell Canada
a.bb.707.d - Asia (WWE)
a.bb.708.d - Asia HK (Hong Kong)
a.bb.709.d - Asia TW (Taiwan)
a.bb.720.d - Asia (India)
a.bb.728.d - Virgin AU (Australia)
a.bb.751.d - Chunghwa Telecom (Taiwan)
a.bb.771.d - Hutchison 3G UK (United Kingdom)
a.bb.777.d - ?
a.bb.841.d - Telsra WWE (World Wide English)
a.bb.862.d - Voda-Hutch AU (Australia)
a.bb.901.d - TIM IT (Italy)
a.bb.911.d - SK Telecom (South Korea)
a.bb.980.d - Optus AU (Australia)
a.bb.999.d - HTC Test RUU
a.bb.1400.d - China
a.bb.1401.d - ?
a.bb.1403.d - HTC China CMCC (China Mobile Communications Corporation)
a.bb.1540.d - HTC One U.S. Developer Edition
a.bb.1600.d - ?
a.bb.1700.d - HTC One Google Edition

The list is quite long, and Im sure there are still some some missing. If you know more variants, please let me know in the comments section.

The 401 and the 707 devices are usually the first ones that HTC prepare updates for. Carrier branded software is usually months after the WWE updates.

Finally, keep in mind that each software version is connected with the CID (Carrier ID) and MID (Model ID) of your device. That means you cant use whichever version you want, unless you have S-OFF on your device. Each ROM Update Utility.exe package will check your device details (bootloader version, MID and CID) before starting the update process.

Have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!
Read More..

Sunday, September 11, 2016

How to Fix a corrupted DATA partition on the HTC One


Since the HTC One was released, Ive had a few users asking me to help them fix their broken device. They couldnt boot their system or access anything on the DATA partition from inside custom recovery. Why this happens so often on the HTC One I have no idea...

Here is a short guide explaining how to fix this problem without sending the device for repair under warranty.

Short Explanation

This method can be used to fix any other partition too, just remember about changing the mount point number - from "mmcblk0p37" to the relevant one. For example, the SYSTEM on the HTC One is "mmcblk0p35". In some rare cases the mkfs.ext4 attributes (like dir_nlink or resize_inode) might change too! To get a list of all eMMC mount points on HTC devices use the command cat /proc/emmc. Never format RAW partitions! This method can be used only to format EXT4 partitions. Not following the guide properly might end in permanent damage to your device. I do not take any responsibility for that.

Some people might also find this helpful in case of need to remove the entire contents of the virtual SD-card. As long as the virtual SD-card is not a separate partition, (i.e. it is emulated space on the DATA partition [/data/media]) it cant be formatted - only wiped clean. I wrote an in-depth explanation of how the virtual SD-card works on Android here - Virtual SD card on Android.

How Do I Recognise The Problem?

When trying to mount the DATA partition from inside the custom recovery using the mount /data command you will most likely see this output: mount: mounting /dev/block/mmcblk0p37 on /data failed: Invalid argument

To be 100% sure you can check filesystem structure with the following command: /sbin/e2fsck -n -f /dev/block/mmcblk0p37

Repair Process

Note: the content of your DATA partition will be lost, including the contents of your virtual SD-card! I also assume you already have custom recovery flashed and you are a Windows user - LINUX people please amend as needed.
  1. Download this mini-sdk package and extract it to c:mini-sdk
  2. Download this mkfs.ext4 binary and put it into c:mini-sdk
  3. Connect your device to the PC
  4. Boot your device in recovery mode
  5. Open a command prompt on the PC (cmd.exe), type and confirm each command with ENTER:
  6. cd /d c:mini-sdk
  7. adb push mkfs.ext4 /tmp
  8. adb shell
  9. chmod 777 /tmp/mkfs.ext4
  10. /tmp/mkfs.ext4 -b 4096 -O ^huge_file,^dir_nlink,^ext_attr,^resize_inode,^extra_isize -m 0 /dev/block/mmcblk0p37
Image of the whole command in one line to avoid mistakes:

Now your DATA partition will be formatted. It is not the same as "wiping", which is only removing all or just some files from particular partition. Formatting means that the entire partition will be re-created with the above attributes. You should see the following output:

mke2fs 1.41.12 (17-May-2010)
Filesystem label=  
OS type: Linux 
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1703936 inodes, 6815744 blocks
0 blocks (0.00%) reserved for the super user
First data block=0
208 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768,98304,163840,229376,294912,819200,884736,1605632,2654208,4096000
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 25 mounts or 180 days, whichever comes first. 
Use tune2fs -c or -i to override.
Your DATA partition is now completely empty, so we need to copy our particular ROM zip file there:
  1. Copy ROM zip file to c:mini-sdk and rename it to "rom.zip"
  2. In the same command prompt window type and confirm each command with ENTER:
  3. mount /data
  4. mkdir -p /data/media/0
  5. exit
  6. adb push rom.zip /data/media/0
Copying rom.zip to the device will take a few minutes. Wait until its done. The output should be: xxxx KB/s (xxxxxxxxxx bytes in xxx.xxxs). Now you can flash rom.zip from inside custom recovery. Done!

Have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!
Read More..

Saturday, July 30, 2016

How To Fix Wi Fi connecting issues on the HTC One running Android 4 4 2

It turned out that HTC One users have lately some problems with connecting their devices to the Wi-Fi routers after the Android 4.4.2 update. Here we present the iconography solution of this problem.

  1. Open Settings panel and click on the "Wi-Fi" tile
  2. Tap on the "3 dots" menu in the upper right corner
  3. From the list select "Wi-Fi Direct"


  4. You will now see that your device is called "Android_ed2c". Tap on the "3 dots" menu in the upper right corner
  5. From the list select "Rename device"
  6. Replace the "Android_ed2c" with  the "HTC One" text and hit "OK" button


  7. Done!
Have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!
Read More..

Monday, June 27, 2016

How To Flash firmware package on the HTC device


Flashing so called "firmware" is as popular these days as flashing "custom ROM". For HTC old-boys its nothing complicated, but some fresh Android users might find it difficult to understand the differences between "firmware" and a "custom ROM". As a result they might be afraid to upgrade OS on their device or even accidentally hard/soft brick it. Before continuing please read this article: How To: Find the proper firmware variant on the HTC device.


First of all let’s make some definitions clear. Both "Firmware" and "ROM" has their own dictionary definitions, but in this guide we need to use the same context of these words as you can find on popular articles and forums.

Your device is equipped with eMMC memory (embedded MultiMediaCard) - a place where every kind of data is stored. This eMMC memory in Android OS is called mmcblk0. But for a various reasons this memory space has to be divided into several smaller parts (f.g. not every kind of data can be stored on the same type of a filesystem). As a result, the eMMC memory is separated into different partitions (RAW, EXT3, EXT4) - smaller or bigger. To indicate the correct partition, each of them has its own number - p1, p2, p3, p(...) etc. The whole partition name indicates also the eMMC number its located in - mmcblk0p1, mmcblk0p2, mmcblk0p3, mmcblk0p(...) etc.

To see a lit of all the partitions on your device just type cat /proc/emmc in the adb.exe command shell.

Doing that you can also see the original name of each partition. The list you can see above is what we call "firmware", and what "custom ROM" is made of is usually just "boot" and "system" partitions. In other words - custom ROM represents "system", "boot" (sometimes "userdata" too) and everything else you can see on the list is a "firmware".


Important: Every signed and official firmware.zip can be flashed on a particular device only. Information about the device and its variant can be found inside android-info.txt in the firmware.zip package.

Question: Where firmware comes from? There are 2 ways: official and non-official. Usually firmware package comes together with the OTA (.zip) update. Inside the OTA package you can find firmware.zip archive (always signed). The non-official way is based on decrypting and extracting content of the RUU (.exe)

Question: Is everything from the list above always included in the official firmware.zip? No. HTC updates only these components (partitions) where there were changes in the code, usually related to the Android OS update or security changes in the bootloader (hboot). That means firmware.zip might have "adsp", "boot", "radio" inside and weigh 10 MB or it might contain a lot more and weight even 50 MB.


Signed (official) firmware packages can be flashed on both S-ON and S-OFF device. Once modified (unsigned) firmware.zip cant be flashed on the S-ON device. If your device is S-ON then you have to re-lock the bootloader. As long as your device is S-ON you also cant downgrade the firmware version.


Important: Make sure you have a correct MID (Model ID) and CID (Carrier ID). To check that use fastboot getvar all command. Everything you do, including following this guide, you do at your own risk!



Flashing Process
  1. Download this mini-sdk package and extract it to c:mini-sdk
  2. Copy firmware (.zip) package to c:mini-sdk and rename it to "firmware.zip"
  3. Connect your device to the PC
  4. Boot your device in fastboot mode (vol down + power ===> fastboot)
  5. Open a command prompt on the PC (cmd.exe), type and confirm each command with ENTER:
  6. cd /d c:mini-sdk
  7. fastboot getvar all (open android-info.txt inside firmware.zip and check if MID and CID matches)
  8. <optionally> fastboot oem lock (if your device is not yet re-locked)
  9. fastboot oem rebootRUU
  10. fastboot flash zip firmware.zip and wait for the process to be completed. Sometimes flashing firmware once doesnt work, so flash firmware.zip again using the same command.
  11. fastboot reboot

In case of further questions I prepared a little Q&A part:
  • What is firmware.zip?
Firmware.zip is a part of Over The Air (OTA) update from the HTC. It contains important parts of the firmware like radio, bootloader, recovery, kernel etc.
  • Why its important to flash firmware.zip and when should I flash it?
It is recommended to have the latest firmware on your device for the best modem performance and overall system stability. Sometimes its necessary to have the latest bootloader too, because otherwise your device might not work well with the new system update.
  • Why its important to flash it before flashing custom ROM?
Because firmware.zip contains boot.img (ramdisk and kernel) that will replace custom boot.img from any custom ROM you already have. Thats why you have to flash firmware.zip first, because otherwise boot.img will be overwritten with the stock one. If you already flashed firmware.zip after flashing custom ROM, just flash this particular custom ROM again.
  • Does firmware.zip contain recovery?
Yes, it does contain recovery image, thats why after flashing firmware.zip you will have to flash custom recovery again to be able to flash custom ROM afterwards.
  • Can I flash any firmware.zip on my device?
Not if your device is S-ON. To be able to flash firmware.zip on the S-ON device, your MID number (example: PN0710000) and CID number (example: HTC__001) must match the firmware.zip version you are about to flash.
  • If my MID or CID doesnt match, can I brick my device if I try to flash firmware.zip anyway?
As long as your device is S-ON flashing firmware.zip with non matching MID or CID will result in error and nothing will be flashed, so there is no risk of brick.
  • Do I need to have locked, unlocked or relocked bootloader to be able to flash firmware.zip?
Your bootloader needs to be relocked.
  • If I cant flash newest firmware.zip because of wrong modeid (MID) or cidnum (CID) does it mean I cant use custom ROM based on the latest HTC update?
In most cases you should be able to use any custom ROM as long as hboot update is not mandatory.
  • What if there is no firmware.zip for my MID/CID?
Try to find latest OTA update for your original stock ROM and extract it. Firmware.zip should be inside.

Do you have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!


For latest news follow Android Revolution HD on popular social platforms:

Read More..

Thursday, May 26, 2016

How To Find a proper firmware variant for the HTC device


This guide is related to the previously published article - How To: Flash firmware package on the HTC device. The goal of this guide is to expose the problem of a matching firmware version for the particular HTC device. Please read it carefully and in case of any questions leave a proper comment in the comments section at the end of this article.

Every firmware.zip has 2 main attributes: modelid (MID) and cidnum (CID).

  • MID contains a codename of your device. For example the "0P6B1000" is the international version of the HTC One M8, while the "0P6B13000" is the T-Mobile U.S. version of the HTC One M8.
  • CID is the carrier software codename. For example the "HTC__J15" code represents the unbranded international version of the HTC One M8, while the "T-MOB010" code represents the T-Mobile U.S. software. Different CID numbers are usually used for mobile operators to include different regional settings, languages or to include some extra software (Wi-Fi Calling, Visual Voice Mail etc.).

Both MID and CID can be found in the android-info.txt inside each firmware.zip. This is how android-info.txt looks like (as an example I used firmware.zip from the international version of the HTC One M8):


Once you know the version of the firmware you have, you need to check if your device can be safely flashed with that particular firmware.zip. To check that:
  1. Download this mini-sdk package and extract it to c:mini-sdk
  2. Connect your device to the PC
  3. Boot your device in fastboot mode (vol down + power ===> fastboot)
  4. Open a command prompt on the PC (cmd.exe), type and confirm each command with ENTER:
  5. cd /d c:mini-sdk
  6. fastboot getvar all

This is an example output from the international version of the HTC One M8:


What you are looking for is the "modelid" and "cidnum".
  • If your device is S-ON then both modelid and cidnum must match.
  • If your device is S-OFF then modelid is critical to match, but cidnum can be changed either by changing CID of your device or by editing android-info.txt.
  • Edited firmware.zip cant be flashed on the S-ON device.
  • If your device is S-ON then you cant downgrade your current firmware version.
If both CID and MID numbers match you can safely flash the firmware.zip package - How To: Flash firmware package on the HTC device.

Do you have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!


For latest news follow Android Revolution HD on popular social platforms:

Read More..

Wednesday, April 6, 2016

How to Fix a random reboots on the HTC One M8


Some time ago I described a method to format the /data partition on the HTC One (M7) - How to: Fix a corrupted DATA partition on the HTC One. This method is suitable for more HTC devices (all with EXT4 support) and with the mkfs.ext4 tool you can format system and cache partitions as well. All you need to know is the proper /dev/block/mmcblk0pXY number of the partition you want to format.

However, formatting the partition always means that your data will be gone. On the HTC One M8 I noticed a problem, most likely caused by the wp_mod.ko module (module to disable system R/W protection). When the module is loaded too late and anything ever gets changed before the module is loaded the file-structure of the /data partition might (and probably will) get corrupted. As a result your device will reboot each time youll try to make and change on the /system partition (even if mounted as RW). So removing, copying, moving, re-naming or editing any file on a system partition will result with the following message in the kernel log (last_kmsg.txt):


Formatting the /data partition is not the best idea for some and its not needed in most cases.

Repair Process
  1. Download this mini-sdk package and extract it to c:mini-sdk
  2. Download this fsck.ext4 binary and put it into c:mini-sdk
  3. Connect your device to the PC
  4. Boot your device in recovery mode
  5. Open a command prompt on the PC (cmd.exe), type and confirm each command with ENTER:
  6. cd /d c:mini-sdk
  7. adb push fsck.ext4 /tmp
  8. adb shell
  9. chmod 777 /tmp/fsck.ext4
  10. /tmp/fsck.ext4 -fn /dev/block/mmcblk0p47

This will fix your /data partition and you should see the following output (numbers in the last line will be different in each case):

e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/block/mmcblk0p47: 19050/712704 files (2.7% non-contiguous), 2320338/2850816 blocks


Your /data partition is now fixed and you should no longer experience random reboots problem on your device (assuming that the corrupted /data partition was the source of the problem). Keep in mind that the fsck.ext4 -fn command can be used to check other EXT4 partitions on any device that has EXT4 file-system structure. All you need to know is the partition name or block number.


Do you have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!


For latest news follow Android Revolution HD on popular social platforms:

Read More..

Thursday, March 24, 2016

How to Enable Harman Kardon sound effect of the HTC One M8

Just few days ago HTC announced the new HTC One (M8) Harman & Kardon Edition. The HTC One (M8) Harman & Kardon edition has been designed for consumers who appreciate high-quality audio and want the best smartphone on the market without compromise. It’s a special edition of the critically acclaimed HTC One (M8) that builds upon the iconic all-metal design in a new brushed black finish with champagne accents, and is another example of HTC’s commitment to offer the best audio experience on a smartphone.

Today we present you how to enjoy this revolutionary audio experience on your “regular” HTC One (M8).

First of all it seems that the changes between the regular M8 and the M8 H&K Edition are only or mainly software related. We believe that the sound processor is the same in both units, however the firmware of that sound processor is probably different. To such conclusion led us the particular part of the M8 Sprint firmware.zip package called adsp.img (Advanced Digital Sound Processor) which is usually the same between each device variants and stays the same since the first device software release date, but in this case it was different. We found out that the adsp.img from the Sprint HTC One M8 was different to the others One M8 variants so its probably needed for a proper H&K sound mod function.

The rest of the changes are located on /system partition:
  • system/customize/ACC/default.xml
<item type="boolean" name="support_harman">false</item> has to be changed to
<item type="boolean" name="support_harman">true</item> to make the OS "think" that youre actually using the H&K M8 Edition. This boolean item wasnt present in the early HTC One M8 1.24.401.4 software version.
  • system/etc/tfa/playbackHM.* / playbackHM_l.* files which are mostly related to the equalizer settings
  • system/etc/audio_policy.conf tuned for higher sampling_rate values (up to 192000)
  • system/lib and system/lib/hw libraries, mostly related to the part of the SoC responsible for the audio
This all might sound a little bit complicated, but in fact it was just an explanation about the changes that are required software-wise to enable the H&K support on the regular HTC One M8.

The tricky part is that to flash adsp.img on international version of the HTC One M8 youll need to have Security OFF (S-OFF) device. Without S-OFF you can only update files located on the system partition on your device. Below you can find proper ZIP packages that are suppose to be flashed using custom recovery. First one (for S-OFF devices) together with system partition will also update the adsp.img. The other one (for S-ON devices) will update only system files, however you might not notice any sound improvements without the adsp.img.

Download links:

Harman & Kardon sound mod for the HTC One M8 S-OFF
Harman & Kardon sound mod for the HTC One M8 S-ON

Thanks to baadnewz for brining the initial version of the modification.

Do you have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!


For latest news follow Android Revolution HD on popular social platforms:

Read More..

Friday, February 12, 2016

How To recalibrate battery life on HTC devices

This method is an official one, recommended by the HTC Technical Support Team. Finally we have some alternative to the old myth related with re-calibrating the battery by removing the batterystats.bin file from /data/system location, as it has no impact on the battery life.

So if youre having some problems with battery life, for example it rapidly or erratically discharges (the battery indicator says 18% left but then suddenly, 5 seconds later your device is OFF) this procedure should help, as it clears all battery stats, coordinates and normalizes charging. At least HTC Technical Support says that :)

The procedure is simple:
  1. Make sure that Fastboot option is disabled in Power settings.
  2. Turn off your phone.
  3. Plug phone into HTC charger and charge for two minutes or more.
  4. While charging, hold down volume-up + volume-down + power button and continue holding. Phone will turn on and off repeatedly every 15 seconds or so while continuing to hold all three buttons.
  5. Keep this going for 2 minutes, then release all buttons when phone is ON.
  6. Now, let phone charge fully normally (with phone either on or off) and battery level reporting, charging and battery life should be normalized.
So... have you tried it? Did it help? Let me know!

Do you have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) below this post!


For latest news follow Android Revolution HD on popular social platforms:

Read More..