[Firmwares] Huawei Ascend P1 U9200 - Original Firmwares

Search This thread

arkedk

Senior Member
Sep 13, 2010
1,218
573
Copenhagen
ASUS ZenFone 8
I installed B704 all well .
but the problem is that I can't use google play using this tutorial .
the problem seem that whenever i'm trying to install TWRP or any other thing , my phone getting struct on HUAWEI ASCEND boot screen .


I can't identify the problrm .
I have already rooted it .
But the problem remains ,

plz help

And you're sure the GAPPS package isn't corrupted (check MD5 checksums or redownload) and that it's the GAPPS version for 4.1.x?
And you do know that fastboot mode is supposed to stay on the Huawei logo so you can send your commands to the phone from the cmd while connected to your computer?
 

krishdkiller

Member
Sep 22, 2012
14
1
Kolkata
Thnx

And you're sure the GAPPS package isn't corrupted (check MD5 checksums or redownload) and that it's the GAPPS version for 4.1.x?
And you do know that fastboot mode is supposed to stay on the Huawei logo so you can send your commands to the phone from the cmd while connected to your computer?

Thnx for the reply

.yah gapps is ok .
It's not corrupted .

nd for the fast boot thingy ... Sorry i didn't know that .

thanx
 

ArtheLad

Member
May 14, 2013
27
2
Jakarta
Hi guys, I'm just wondering, do we really (must) flash the vendor update.app after we flash the rom update.app ?. I'm went back from B315 to ICS (official firmware) and I forgot to flash the last process which is flashing into the vendor update.app.

That was almost a month ago, and I do not see any bug or weird things regarding performance. :p

and if I flash the vendor update.app, will it erase all of the application and data installed in the internal storage ? since the update.app only have 900kb size.

Thanks.
 

danee91

Senior Member
Dec 7, 2012
101
34
Budapest, Hungary, EU
Hi guys, I'm just wondering, do we really (must) flash the vendor update.app after we flash the rom update.app ?. I'm went back from B315 to ICS (official firmware) and I forgot to flash the last process which is flashing into the vendor update.app.

That was almost a month ago, and I do not see any bug or weird things regarding performance. :p

and if I flash the vendor update.app, will it erase all of the application and data installed in the internal storage ? since the update.app only have 900kb size.

Thanks.

The B229 has the coulmeter installable component, the vendor update.app has it too, it just replaces with a new coulmeter maybe. I dont think you must install it, but if you do, it won't erase the application and data
 

arkedk

Senior Member
Sep 13, 2010
1,218
573
Copenhagen
ASUS ZenFone 8
Hi guys, I'm just wondering, do we really (must) flash the vendor update.app after we flash the rom update.app ?. I'm went back from B315 to ICS (official firmware) and I forgot to flash the last process which is flashing into the vendor update.app.

That was almost a month ago, and I do not see any bug or weird things regarding performance. :p

and if I flash the vendor update.app, will it erase all of the application and data installed in the internal storage ? since the update.app only have 900kb size.

Thanks.

I',m not quite sure if flashing vendor will reset your device, but I assume it will as it's probably some tiny file for the cust partition that it then needs to reinstall from with a factory reset.
So if you're fine without it just leave it, or do a full nandroid backup and check out the what it does. If it then resets your phone you can just restore your backup.
 

ArtheLad

Member
May 14, 2013
27
2
Jakarta
The B229 has the coulmeter installable component, the vendor update.app has it too, it just replaces with a new coulmeter maybe. I dont think you must install it, but if you do, it won't erase the application and data

I',m not quite sure if flashing vendor will reset your device, but I assume it will as it's probably some tiny file for the cust partition that it then needs to reinstall from with a factory reset.
So if you're fine without it just leave it, or do a full nandroid backup and check out the what it does. If it then resets your phone you can just restore your backup.

Thanks for the answers guys, since currently I have no (known) issues, maybe I'll leave it that way. I'll post when I decide to flash the vendor app :good:

Thanks
 

alittlemisfit

Member
Sep 12, 2013
14
0
Notification Bar

Anyone knows how to disable/unshow the battery stats on b704?
i installed some battery apps and it just doesnt make sense to show 2 battery stats. I wish to "unshow" the default. the phone is rooted. Anyone?
 

testuser0072

Senior Member
Aug 28, 2006
298
251
Anyone knows how to disable/unshow the battery stats on b704?
i installed some battery apps and it just doesnt make sense to show 2 battery stats. I wish to "unshow" the default. the phone is rooted. Anyone?

I'm affraid that is not possible in stock rom without any modification, however you can try install Xposed installer and GravityBox module. There is option to change battery indicator style. I don't know if GravityBox support devices with chipset other than MTK. As author said "Originally, this module was intended for MTK6589 devices. Later on, it was adjusted to support other - non-MTK devices - as well"
 

newbeornotobe

New member
Oct 24, 2013
4
1
fix tethering

Hi everybody !

Nobody is talking about B336 and B704 tethering issue . I'm i wrong ?
I just found a way to fix this : you have to type this in a command shell (use android terminal , or "adb shell" under windows ) :

- su -c "iptables -tnat -A natctrl_nat_POSTROUTING -s 192.168.0.0/16 -o rmnet0 -j MASQUERADE"

Where "rmnet0" is your 3g interface ! but can vary with the country : type netcfg in a terminal to ensure the name of your 3g interface

unfortunately this fix is not permanent , you have to do this each time you want use tethering...
So I'm working on a permanent iptables modification to get it more usable . If this is possible of course !
Any help would be appreciated .
 

arkedk

Senior Member
Sep 13, 2010
1,218
573
Copenhagen
ASUS ZenFone 8
Hi everybody !

Nobody is talking about B336 and B704 tethering issue . I'm i wrong ?
I just found a way to fix this : you have to type this in a command shell (use android terminal , or "adb shell" under windows ) :

- su -c "iptables -tnat -A natctrl_nat_POSTROUTING -s 192.168.0.0/16 -o rmnet0 -j MASQUERADE"

Where "rmnet0" is your 3g interface ! but can vary with the country : type netcfg in a terminal to ensure the name of your 3g interface

unfortunately this fix is not permanent , you have to do this each time you want use tethering...
So I'm working on a permanent iptables modification to get it more usable . If this is possible of course !
Any help would be appreciated .

WiFi Tethering has worked flawlessly for me on B704 ever since I first installed it when it was released.
I not sure what this fix does, but is it just changing the DHCP assigning to a different IP range from 192.168.43.0 to 192.168.0.0?

Or is this USB thethering as I haven't tried that?
 
Last edited:

newbeornotobe

New member
Oct 24, 2013
4
1
fix tethering

WiFi Tethering has worked flawlessly for me on B704 ever since I first installed it when it was released.
I not sure what this fix does, but is it just changing the DHCP assigning to a different IP range from 192.168.43.0 to 192.168.0.0?

Or is this USB thethering as I haven't tried that?

French community (and european as well ) have all the same issue with tethering : we are able to connect to the wifi hotspot when activated but can not have internet connection ! the P1 is not the only device suffering this issue with jelly bean update .
however this is NOT A BUG ! ITS A FEATURE :Jellybean tag a tethered connection as a tethered connection for the operator (carrier) (hope you know what i try to mean)
Google INTENDED to respect carrier tethering rules in "taging" a connection when its a tethered one ;)

this fix does not change your ipadress , it mask the tethered flag by adding an iptables rule .

For usb tethering there is two way : -sharing the wifi conection (works perfectly but not very usefull)
- sharing the DATA (or 3g connection if you prefer) don't work just like in wifi mode
To make USB tethering work you have to change the interface in the command line for "rndis0" so we have :

su -c "iptables -tnat -A natctrl_nat_POSTROUTING -s 192.168.0.0/16 -o rndis0 -j MASQUERADE"

code.google.com/p/android/issues/detail?id=38563

here is an interesting topic about this issue . post #105 is the most interesting one !
 
Last edited:
  • Like
Reactions: jayfkay

arkedk

Senior Member
Sep 13, 2010
1,218
573
Copenhagen
ASUS ZenFone 8
French community (and european as well ) have all the same issue with tethering : we are able to connect to the wifi hotspot when activated but can not have internet connection ! the P1 is not the only device suffering this issue with jelly bean update .
however this is NOT A BUG ! ITS A FEATURE :Jellybean tag a tethered connection as a tethered connection for the operator (carrier) (hope you know what i try to mean)
Google INTENDED to respect carrier tethering rules in "taging" a connection when its a tethered one ;)

I'm a European citizen from Denmark and have not faced those challenges. Is there local French laws that prohibits French carriers to allow tethered data sharing from your mobile device, or is this strictly French carrier policies that want to make more money by providing tethering as part of their subscription plans for a added fee?

I think AT&T in the US had similar policies where you have to have tethering as part of your subscription plan to be able to do so.

And thanks for the info about the tagged data, good to know there is ways around it with iptables.
 

newbeornotobe

New member
Oct 24, 2013
4
1
I'm a European citizen from Denmark and have not faced those challenges. Is there local French laws that prohibits French carriers to allow tethered data sharing from your mobile device, or is this strictly French carrier policies that want to make more money by providing tethering as part of their subscription plans for a added fee?

I think AT&T in the US had similar policies where you have to have tethering as part of your subscription plan to be able to do so.

And thanks for the info about the tagged data, good to know there is ways around it with iptables.

You're right ! "European" is a bit to much ! i badly expressed myself . AT&T carrier's policies and French ones are not so different . But i have read about similar cases in Italy , Spain ,Deutchland and Great Britain! Do not forget that Denmark people are the happyest people in europe ... ;)

about iptable You're right too ! I'm trying to write a script to automate the command effect (but i"m not a developer at ALL... ). For now it is like this :
#!/system/bin/sh
su
iptables -tnat -A natctrl_nat_POSTROUTING -s 192.168.0.0/16 -o rmnet0 -j MASQUERADE
iptables -tnat -A natctrl_nat_POSTROUTING -s 192.168.0.0/16 -o rndis0 -j MASQUERADE
and so on for all interfaces...

Edited with Smanager with "run when connection change" option checked...

...and It WORKED ! one time... not anymore :crying:. however in a terminal shell it always work nicely :)
Do you know how I have to name it and where to place it ?. Even an idea ?
My goal is to have it automatically executed when i launch the "Wifi hotspot"

Thank you for all you have done Arkedk and for continuing to fallow this thread . You seem to be the last man standing since o-l-a-v broke his phone screen !
 
Last edited:

JuLx64

Member
Sep 1, 2013
43
8
Paris
I'm a European citizen from Denmark and have not faced those challenges. Is there local French laws that prohibits French carriers to allow tethered data sharing from your mobile device, or is this strictly French carrier policies that want to make more money by providing tethering as part of their subscription plans for a added fee?.

Most French operators explicitely allow tethering as a standard service, with no surcharge. If you have any issue with the tethering function, it's certainly not because of the operator, or at least not the French one.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 27
    Original Firmwares
    Since I got my Ascend P1 I've been playing around with it alot.
    Here's my list of official firmwares for the Ascend P1.

    DISCLAIMER
    I am not responsible for any bricked devices.

    Software downloads
    TWRP-2.4.4.0_P1.zip (7.0 MB)
    https://mega.co.nz/#!hg4SCQoT!VGUiFxRo6RhlZWCEdbOSWQzsp0AyDDDNbePj9QO4Uok
    MD5: 8e95c08d8bb33bf6e393a558c88d611f

    cwm_touch_recovery_viva_beta.zip (5.8 MB)
    https://mega.co.nz/#!I0A3GZKQ!I3YBzyz63NivAdH7b0tMcSjP5-JmIwuOpUkfCx0Fljg
    MD5: cc13117567ad2c85be408c4ab2fdbdcf

    CWM-6.0.1.9.U9200.zip (7.0 MB)
    https://mega.co.nz/#!Uxxi1brY!J1XcZghxObG-LPm3Dk3jnVIgFu984YnZjVdfikfQxBA
    MD5: bc8dbd969e301d49289f24c93872c6f0

    SuperSU package with Busybox
    CWM-SuperSU-v0.98.zip (670 KB)
    https://mega.co.nz/#!Yt42WZ6I!Lrc182C2sUYFjOD83MZ-hn_YI8hFkjhPQ3xcvOM23FA

    Root access on all firmwares (Ice Cream Sandwich + Jelly Bean) using TWRP
    When you've flashed one of your official Huawei firmwares you need to do this.

    1. Flash or boot into Teamwin Recovery on your Huawei Ascend P1
    2. Go to the "Mount" menu and mount System.
    3. Then go to the Reboot menu and reboot the system.
    4. When it detects you are not rooted TWRP will ask if you want to root.
    5. Swipe to do so and let it boot back into the system.
    6. When done just hit the SuperSU icon and let it setup for the first time. Either by downloading a flashable zip or by going to the Play Store.
    7. After that you've got a rooted device.

    Root access on all Huawei Ice Cream Sandwich (4.0.X) firmwares using CWM
    Now to get root access on the Ascend P1 I've done it in a couple of different ways.
    Download the SuperSU package with Busybox and place it on your external SD card (The card you can put into the side of the Ascend P1)

    The easiest way for me was to boot ClockWorkMod Recovery from fastboot.
    You need to have ADB and fastboot drivers set up and activated USB debugging on your device.
    When that is done you can do some command lines to check the device is recognized and ready to go.

    Step 1:
    Launch a Command Promt and go to the directory where your ADB is setup.

    Step 2:
    Connect your device to the computer and make sure USB debugging is activated under the Developers options.

    Step 3:
    Type in:
    ADB devices
    and you should get a long unique ID of your device.

    Step 4:
    Type in:
    ADB reboot bootloader

    Step 5:
    When the phone has rebooted into bootloader (There will just be a Huawei logo) check if the device is responding by typing:
    fastboot devices if it's not you need to install the fastboot driver (Android ADB Interface).

    Step 6:
    If it's there you need to boot to the new CWM recovery by placing the CWM recovery image (cwm_touch_recovery_viva_beta.img) in the same library as your fastboot folder and type:
    fastboot boot cwm_touch_recovery_viva_beta.img
    Then your phone will reboot into CWM recovery where you can chose the SuperSU package with Busybox zip file and flash it.
    That will gain root to your phone.

    Step 7 (Optional):
    When you're in the CWM recovery you can backup your entire device so you always can get back to it if you need to.
    This is done in the back and recovery menu.


    HOW-TO Flash these different regions.
    If you're coming from a different region firmware than the one you want to flash, you have to do some preparations before it will flash.
    This is due to a verification in the recovery and build.prop.
    So for this to work you need to have root access on your current firmware.

    When you flash a different region firmware the recovery checks the build.prop for matching regions.
    The relevant part is at the bottom an looks like this.

    Code:
    ro.product.board=U9200
    ro.confg.hw_systemversion=U9200-1V100R001C185B103_SYSTEM
    ro.build.display.id=U9200-1V100R001C185B103
    ro.product.model=U9200
    ro.product.brand=Huawei
    ro.build.tags=ota-rel-keys,release-keys
    ro.product.manufacturer=HUAWEI
    ro.product.name=U9200
    ro.product.device=hwu9200
    ro.build.id=HuaweiU9200
    ro.build.version.incremental=C185B103
    ro.build.description=U9200-user 4.0.3 HuaweiU9200 C185B103 ota-rel-keys,release-keys
    ro.build.fingerprint=Huawei/U9200/hwu9200:4.0.3/HuaweiU9200/C185B103:user/ota-rel-keys,release-keys

    Here you must replace all the current build details which in this case is U9200-1V100R001C185B103 and if you want to move to U9200-1V100R001C00B226 you need to replace it with that or any of the other region build numbers.
    I will add CWM flashable zip files for the different regions later.
    So here is the edited version.

    Code:
    ro.product.board=U9200
    ro.confg.hw_systemversion=[COLOR="YellowGreen"]U9200-1V100R001C00B226[/COLOR]_SYSTEM
    ro.build.display.id=[COLOR="YellowGreen"]U9200-1V100R001C00B226[/COLOR]
    ro.product.model=U9200
    ro.product.brand=Huawei
    ro.build.tags=ota-rel-keys,release-keys
    ro.product.manufacturer=HUAWEI
    ro.product.name=U9200
    ro.product.device=hwu9200
    ro.build.id=HuaweiU9200
    ro.build.version.incremental=[COLOR="YellowGreen"]C00B226[/COLOR]
    ro.build.description=U9200-user 4.0.3 HuaweiU9200 [COLOR="YellowGreen"]C00B226[/COLOR] ota-rel-keys,release-keys
    ro.build.fingerprint=Huawei/U9200/hwu9200:4.0.3/HuaweiU9200/[COLOR="YellowGreen"]C00B226[/COLOR]:user/ota-rel-keys,release-keys

    Now with that done you need to flash the recovery.img from the build you want to move to.
    I will supply the recovery.img files later.
    I've put some recovery.img in some of the packages. But will upload them separately later when I've extracted them all.

    Now this is very similar to what you did when rooting.

    Step 1:
    Do a reboot to bootloader again by typing:
    ADB reboot bootloader

    Step 2:
    Check the device is there by typing:
    Fastboot devices

    Step 3:
    Flash the recovery by typing:
    Fastboot flash recovery recovery.img (the recovery name can vary)

    Step 4:
    Type:
    Fastboot reboot

    Let it boot up and then go to:
    Settings->Storage->Software Upgrade->SD card Upgrade->Confirm->Upgrade
    This will erase all apps and settings, so remember to backup your stuff.

    There is also a force upgrade mode which you can enter by holding down Volume Up and Volume Down keys right after the vibration when the device boots up.


    Installation of EmotionUI B704 with all langauges enabled.
    SO DON'T SETUP YOUR PHONE RIGHT AFTER YOU'VE FLASHED IT, YOU WILL HAVE TO DO A FACTORY RESET!

    So if you flash B704 you'll notice when you want to change the locale on it that it only contains 4 languages, some Asian ones and English.
    To get all languages you'll need to flash a zip in TWRP that I made to enable them again.

    Procedure:
    1. Flash B704 through normal means (stock recovery)
      If it fails you need to flash the intermediate firmware then flash B704 (intermediate firmware can be found in the download links below).
    2. When B704 installation is complete reboot the device to bootloader.
    3. From there boot TWRP 2.4.4.0 with the command:
      Code:
      fastboot boot "recovery_image_name.img" (usually just recovery.img or twrp_recovery.img but can vary)
    4. Flash GAPPS for 4.1.x (http://goo.im/gapps/gapps-jb-20121011-signed.zip)
    5. Flash my language enabler package - This can be found below in the links section or as an attachment.

      Optional step if you want root:
    6. When you do a Reboot system from TWRP it will ask you if you want to root as it can see you don't have it.
    7. If you want that just slide the slider and click the SuperSU icon when your back in Android.
    8. If you don't want root just click the button above that ignores that.

      Final step:
    9. When you're booted back into Android go to Setting > Backup & Reset and press the Factory data reset button.
      This is necessary if you want the languages to be enabled as the settings is being read and reinitialized from the cust partition.
      Screenshot_2013-08-31-21-44-54_zpsa11ec277.png~original


    Official Huawei Firmwares

    English Huawei Ascend P1 EmotionUI website
    Chinese Huawei Ascend P1 EmotionUI website

    Intermediatepack.zip (235.7 MB)
    https://mega.co.nz/#!48x2hLBa!EkJ2NxuM4-kGmj38a_QbywtQFaIASxA2deT4ZmCsizQ
    MD5: 0ceb2b4cb89ecfcc138855e798a7d7e2

    U9200-1V100R001C00B226.zip (486.2 MB) [Generel Global Version]
    https://mega.co.nz/#!1xIQ3CpK!KOWAh3CoerA5UI9WcYdKDTqCvmdAJ6wNI6A1MlPK__4
    MD5: 3e14da9fac783dc5494fcf5b105ed4ed

    U9200-1V100R001C00B229.zip [Generel Global Version]
    MD5: d8faf295f41981f4f79c9cf7416fd454
    https://mega.co.nz/#!Bh5BzZzK!dCEzsU_a3tO-UWdz_qsjaE-h7tZr0RIXib6f6v2g_3Y
    Included in package: boot.img, recovery.img and build.prop

    U9200-1V100R001C185B105.zip (501.4 MB) [North European Version]
    https://mega.co.nz/#!U4QBTJAY!PHV2tw3wn85QZ3isW6h0uke1vJcKH78waol4ADSL6M0

    U9200-1V100R001CHNC00B124.zip (532.3 MB) [Chinese Version]
    http://www.multiupload.nl/H0JQLQ5PTD
    MD5: 76d1b1d0500ee6ce30e6c1cb94348281

    U9200-1V100R001CHNC00B525_681031.zip (658.5 MB) [EMUI 1.5 Jelly Bean Beta]
    https://mega.co.nz/#!A5BDyTqQ!UkfiiQCf3e8dCBryH-SNsib6GosVVNq0TeNtKHmD5R8

    U9200-EmotionUI_1.5_V100R00G411D00B315.zip (923.2 MB) [Global EMUI 1.5 Jelly Bean Beta]
    https://mega.co.nz/#!IlxGgCSa!E4NNy1ee_57dreKlCGvUGURfojtu5JC_pH15ohBHJ-0
    MD5: 241df4f9105c9ffbb2eee98dbdd142cb

    U9200-EmotionUI_1.5_V100R001CHNC00B605SP01.zip (588.0 MB) [Chinese EMUI 1.5 Jelly Bean Beta 2013-07-24]
    https://mega.co.nz/#!AxxhBbab!LqbhWBtuKfeie7sHoo69-gxniHUMr25KpcNkE_eUPpg
    MD5: 7cbe1045136e071a9eb45009a0b5d67a

    U9200-EmotionUI_1.6_V100R001CHNC00B701.zip (602.0 MB) [Chinese EMUI 1.6 Jelly Bean Beta 2013-08-08]
    https://mega.co.nz/#!94YQjbwJ!GCjjAyUdhpLehdw-ZF41-CrDl8tkMydK5k-uJCOzStI
    MD5: b9ec867dc064d7324eb2d7a2002abd8a

    U9200_EmotionUI_1.6_V100R001CHNC00B704.zip (611.8 MB) [Chinese EMUI 1.6 Stable Jelly Bean 2013-30-08]
    https://mega.co.nz/#!FpxFELrD!DRt26h3GZzh9G1jmR4tFSw9wdq0NOomUZFG2BkqywR0
    MD5: ac400e52face499f6ca3c69ee95999ab

    Language enabler works for both B704 & B706.
    U9200_EmotionUI_1.6_B704_enable_language-signed.zip (283 KB)
    https://mega.co.nz/#!lkAiyb6b!FemgigBmdVDOCX60uV3VhAKDvQNFh_En8ji4iKu3LOk
    MD5: c7dbb50f41fc014056530971c5a6bf70

    Unofficial Huawei Ascend P1 ROMS
    Cyanogen Mod 10.1
    Cyanogen Mod 10.2
    MoKee OpenSource
    MIUI
    JellyBeer
    AOKP
    PAC
    RootBox
    4
    Holy f**k!
    English EmUI version is released!
    http://en.ui.vmall.com/downloadp1.html
    It says it's based on ICS and still Beta. I'm going to bed now, can anyone try it for me?

    Edit: According to http://en.ui.vmall.com/wordpress/ only these fw's can update to this EmUI beta:
    U9200-1V100R001RUSC10B101,
    U9200-1V100R001RUSC10B102,
    U9200-1V100R001RUSC10B103.

    I've extracted recovery.img from English EmUI beta + made build.prop for U9200-1V100R001RUSC10B103. And the firmware (Update.app) itself is included in this package: https://mega.co.nz/#!PwRAXKLb!Te0BNRrUgsU3zEgjiM-nyXzx5flL49Z-GS0i_ZvAF4w

    To flash it i suggest you follow my guide (link in signature) or arkedk's guide, page one this thread :)
    3
    Someone said some P6 features are integrated in B708, better power management, etc...

    B708 released:

    http://zh.ui.vmall.com/emotiondownload.php?type=Ascend P1

    MEGA link

    https://mega.co.nz/#!l5cyCSiY!ZdKKHUOghWTRB9gaHx6tkl9P2WtX1ROR87r0rGpNrJk
    3
    Yes, it's there. But when I try to edit it with ES Explorer I get an error when I want to save it. How can I make the change :confused:
    Edit : got it ! Apparently ESE can't modify read-only files, I used X-Plore which has an option doing just that.

    I found 650 Mb of logs in data/gps which I could delete with ESE, I feel much lighter now !

    ES File Explorer can do root browsing and editing just fine.
    You just have to mount the partition as RW.
    Screenshot_2013-09-07-09-11-32_zpsbb7267c0.png~original
    Screenshot_2013-09-07-09-11-37_zps27001903.png~original
    Screenshot_2013-09-07-09-11-47_zps8c6c68fa.png~original
    3
    Updated thread. Rewrote some stuff, added new rooting method and added more firmwares.