[DEV] [Huawei U8160/U8180] CyanogenMod 9.1 [30/11/2012]

Search This thread

psyke83

Inactive Recognized Developer
Mar 29, 2011
1,267
3,959
CyanogenMod 9.1 Huawei U8160/U8180 Port
Latest release: 20121130 [v0.6] <--- this link is not broken - learn what "RTFM" means
Latest Google Apps package: mini-gapps-ics-20120429b-signed.zip
<--- you must only use the mini-gapps-ics package, as the standard gapps-ics packages are too large for our device

Hey folks,

This is a port of CyanogenMod 9.1, a community-developed Android ROM based on Ice Cream Sandwich 4.0.4, for the Huawei U8160 & U8160 phones. The current port status is beta - may be suitable for daily use, but you must read the ROM Status before deciding whether to use this ROM.

Pre-requisites:

Installation (first time/new users):
  • Open the GooManager application.
  • Navigate to psyke83 -> roms -> u8160.
  • Click on the build you wish to install from the list.
  • Click on the Download button to download the rom.
  • Once the download(s) are complete, reboot into recovery and install the update package, followed by the Google Apps package.
  • Important: if you are updating from a stock ROM, CM7 or any other ROM that is not my personal CM9 build, choose the data wipe option before rebooting!

Latest changelog:
  • 20121130 [v0.6]
  • md5: a2972a18cfbafbce64088433b941a35e
    • updated CyanogenMod source (9.1)
    • enabled compile-time optimizations (-Os, -fstrict-aliasing, switched to gcc4.6)
    • optimized package size/memory usage (mdpi-sw600dp resources removed)
    • full CM9 application list is now included in build (possible thanks to space optimizations)
    • switched from Gallery2 to older Gallery (new app doesn't display static images properly).
    • switched from CM7's FileManager to new CMFileManager (backported from Jelly Bean)
    • switched from Apollo music player to ICS Music (interface is similar to Gingerbread version). Will switch to Apollo when the memory usage is reduced/layout is better optimized for LDPI.
    • added U8160Parts application available at Settings -> Device -> Advanced. This allows configuration of audio attenuation, swap, background process limiting and SD card readahead cache settings.
    • optimization: set default background process limit to 2. This improves memory efficiency for most usage scenarios, but you can reconfigure the setting via U8160Parts if you need to have more applications stay resident in memory.
    • kernel: fully updated, based on latest android_kernel_msm7x25 Gingerbread source with ICS-related drivers/patches added
    • kernel: USB host mode available by default (no separate kernel/package needed)
    • fixed: automatic brightness & lcd button levels
    • fixed: basic camera function (taking pictures, barcode scanner mode working; camcorder not working)
    • fixed: USB tethering
    • fixed: wifi hotspot
    • fixed: compass
    • fixed: U8180 detection (automatic)
    • improved: Trebuchet performance (widgets are not joined to apps by default, reducing memory usage & rendering complexity)
    • many small fixes and improvements.

  • 20120528 [v0.5]
  • md5: 3bacb6a08c447b2389d16b65dc18f8fe
    • updated CyanogenMod source
    • big update based on tilal6991's latest changes - codename "FrozenFissionY" :p
    • kernel: using my latest codeaurora-kernel_huawei_u8160 kernel source with configuration changes to better suit ICS
    • kernel: backported xt_quota2, xt_qtaguid, iface_stat drivers to allow proper networking stats and prevent recurring framework crashes
    • libaudio: adapt Adriano Carrata's rewritten libaudio to ICS with new AudioFilter and audio attenuation enabled
    • framework: fixed cpu deep sleep issue that was caused by wakelock in highspeed serial device (Bluetooth quick switch) - should drastically improve battery life (may now be similar to CM7)
    • framework: optimizations to 2D rendering speed
    • framework: disable UI touch sounds (was slowing down presses + increasing battery drain)
    • include old Music app alongside new Apollo music player (as the latter may have problems detecting media for some people)
    • add VoiceDialer, SoundRecorder, and FileManager from CM7 (as there is no CM9 version yet).
    • Trebuchet: change drawer animation back to default (looks nicer, no change in performance)
    • fix simple2ext compatibility issue. Note: you will need to enable the "mount as ext4" option in the app settings, as CM9 does not auto-mount /sd-ext on boot.
    • increase VM heap to 32MB - should reduce ANR errors.
    • camera partially working (preview works, taking picture not supported by default app)

  • 20120418 [alpha 4]
  • md5: unknown
    • updated to latest CyanogenMod source (now Android 4.0.4)
    • included new kernel (based on CM7's v1.2-batterytest3);

  • 20120212 [alpha 3]
  • md5: unknown
    • fixed/confirmed working - multitouch, telephony, mobiledata, audio (all routing appears to be working fine), bluetooth, mac addresses, accelerated 2D rendering.

  • 20111130 [alpha 2]
  • md5: unknown
    • fixed/confirmed working - gps, sensors, wifi signal indicator, graphics flickering, touchscreen for u8180 users(?)

  • 20111129 [alpha 1]
  • md5: unknown
    • initial port. Touchscreen, wifi, sd card mount works. Graphics working with some flickering/without acceleration.

Thanks to:
  • ac1953 (libaudio, general help on CM7)
  • DSM (assistance with device settings app)
  • tilal6991
  • aorth
  • loyal testers... ;)

Source code:

Downloads:
 
Last edited:

psyke83

Inactive Recognized Developer
Mar 29, 2011
1,267
3,959
CyanogenMod 9 U8160 ROM Status (20121130) [v0.6]:

Working:
  • 2D acceleration (using copybit)
  • Audio
  • Bluetooth
  • Bluetooth tethering (?)
  • Camera - preview, picture taking, barcode scanner mode
  • GPS
  • Lights
  • Sensors
  • Telephony - calling, messaging, mobiledata
  • Touchscreen (multitouch)
  • USB Mass Storage
  • USB tethering
  • Wi-Fi
  • Wi-Fi Hotspot
  • Swap
  • zRam (i.e. compcache)

Not working:
  • Camcorder mode
  • OMX encoders/decoders (e.g. Youtube HQ video playback)

Issues:
  • Bluetooth - when enabled, Bluetooth will cause the phone to constantly hold a wake lock, preventing the phone from sleeping. Turn off Bluetooth when you don't need it.
  • FM Radio - no CM9 radio app yet exists, but libaudio has support included. This means that some third-party apps (e.g. Spirit FM) can work.
  • Gallery - after installing Google Apps, you will have two different Gallery apps installed. We need to use the legacy Gallery app, because the newer Gallery2 (and Google's version, GoogleGallery) requires OpenGL extensions that our phone cannot support. You are free to delete one of the duplicate applications from /system/app using CMFileManager (in root mode).
  • Trebuchet - after first installation, the default background wallpaper may be misaligned, leaving some black banding at the sides. This only occurs on first start, and the problem will correct itself on the next reboot / relaunch of Trebuchet.
  • USB tethering - the phone will freeze if you remove the cable during tethering. Make sure to disable tethering via the menu option manually when you want to remove the phone from the computer.

U8160Parts:
This is my special settings app for our specific device, which you can reach from Settings -> Device -> Advanced. The options available are:
  • Audio attenutation for speaker, headset and FM audio
  • Background process limit: this will limit the amount of background processes, which is very useful for low memory phones. Note: This is also a development option in Settings -> System -> Developer options, but if you configure it there, your choice will not be remembered over reboots. Configure from my application instead, and your choice will always be saved/applied over reboots.
  • SD card read ahead buffer: this is useful if you don't use a dedicated app/script (Link2SD, S2E, etc.) that increases the read-ahead cache for the SD card's sd-ext partition.
  • Swap: this will enable the swap partition (if it exists on your SD card). Using a swap partition larger than 64MB is not recommended, as it may cause lag. Don't mix regular swap and zRam (compcache)
 
Last edited:

adfad666

Inactive Recognized Developer
Jul 29, 2011
763
4,301
Excellent news, I look forward to browsing your sources when I have some free time, maybe even giving you a hand if you haven't figured it out by then :)
 

bk109

Senior Member
Aug 28, 2011
654
192
Dublin,Ireland
Anyone know if this thing is suitable for everyday use on t mobile rapport (u 8180)

Sent from my U8180 using XDA App
Ah,you again... As it's plainly written - it's a TEST BUILD and moreover the list of known issues is again pointed out prominently enough.. So unless you don't mind not being able to make calls, use the keys under the screen or an assortment of other problems,glitches and other issues... Yes,it's suitable for everyday use
 

SWEATTAIMI

Senior Member
Oct 19, 2010
2,051
379
W4ZT3D
Ah,you again... As it's plainly written - it's a TEST BUILD and moreover the list of known issues is again pointed out prominently enough.. So unless you don't mind not being able to make calls, use the keys under the screen or an assortment of other problems,glitches and other issues... Yes,it's suitable for everyday use

Not even test :p not released yet also its says highly recommended for devs , but normal users can also use it xP but you can only do the basics .

Sent from my LG-P500 using xda premium
 

bk109

Senior Member
Aug 28, 2011
654
192
Dublin,Ireland
Not even test :p not released yet also its says highly recommended for devs , but normal users can also use it xP but you can only do the basics .

Sent from my LG-P500 using xda premium
The thing that's going to be released is an alpha/test/wet iDream come true.. And hell,I more than half-expected that an ICS port would either take a long time OR will never become practical,so small 'bugs' like not being able to make calls or use the soft keys aren't biggies ;) What irked me was that guy apparently can't be arsed to read a post or thread,but he can go through the process of registering on xda-devs,getting the app from the market and then asking an already answered question...

Edit: Waaait,only the basics?! Does that mean that I can't get the phone to compute the ultimate question that's answered by 42? Damn,now I'll have to wait for a CM port for a planet-sized organic supercomputer
 
Last edited:

ion_plugged

Senior Member
Aug 26, 2008
63
2
Hi

What are u doing here is wonderfull, i had my share of dev in wm phones and ported an android version to a polaris 200 (Eclair). if i can help in any way tell me and i will do my best (as a secoind project to my exams). I will test thursday and post. Keep up the good work.
 

SWEATTAIMI

Senior Member
Oct 19, 2010
2,051
379
W4ZT3D
its been told old phone that were able to run 1.6 can run ICS, and that's a huge step forward by google that we can revive old phone's to increase more speed that they couldn't possibly get before,

i got ICS running on P500 with non overclock scroll was not smooth, on file manager it keeps lagging,

overclocked the CPU and the scrool was smoother than my CM7, it didn't lag as it does with overcloking, and the port did have 780 Ghz overclocked and my rom im using got 806 and still lagging,

with ICS port with no HW Acceleration enabled scrolling was faster, that's what i call an inprovement!
 
  • Like
Reactions: chriscx

Taki2011

Senior Member
Nov 1, 2011
317
29
Cairo
umm I dont use My huawei Phone For Making calls .. can u give my a ver. to try and adding arabic lang. ? and Plz add Some Ad Hoc Support if u can :)
 
Last edited:

SWEATTAIMI

Senior Member
Oct 19, 2010
2,051
379
W4ZT3D
umm I dont use My huawei Phone For Making calls .. can u give my a ver. to try and adding arabic lang. ? and Plz add Some Ad Hoc Support if u can :)

Dude it sounds easier than it is. We got alot of good devs still our aosp doesn't boot you shall try compile and see how easy it is xD it takes it time not just add you need to make it match with all other hardware libs

Sent from my LG-P500 using xda premium
 

Taki2011

Senior Member
Nov 1, 2011
317
29
Cairo
Dude it sounds easier than it is. We got alot of good devs still our aosp doesn't boot you shall try compile and see how easy it is xD it takes it time not just add you need to make it match with all other hardware libs

Sent from my LG-P500 using xda premium

Oki i Got it =) Thx For Ur Work :)
 

chriscx

Senior Member
Feb 9, 2011
797
102
it's awesome to see that wifi works, cos on my x10 ICS, wifi doesnt work.

Of course we are excited but we have to be patient, devs do that on their free time.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 82
    CyanogenMod 9.1 Huawei U8160/U8180 Port
    Latest release: 20121130 [v0.6] <--- this link is not broken - learn what "RTFM" means
    Latest Google Apps package: mini-gapps-ics-20120429b-signed.zip
    <--- you must only use the mini-gapps-ics package, as the standard gapps-ics packages are too large for our device

    Hey folks,

    This is a port of CyanogenMod 9.1, a community-developed Android ROM based on Ice Cream Sandwich 4.0.4, for the Huawei U8160 & U8160 phones. The current port status is beta - may be suitable for daily use, but you must read the ROM Status before deciding whether to use this ROM.

    Pre-requisites:

    Installation (first time/new users):
    • Open the GooManager application.
    • Navigate to psyke83 -> roms -> u8160.
    • Click on the build you wish to install from the list.
    • Click on the Download button to download the rom.
    • Once the download(s) are complete, reboot into recovery and install the update package, followed by the Google Apps package.
    • Important: if you are updating from a stock ROM, CM7 or any other ROM that is not my personal CM9 build, choose the data wipe option before rebooting!

    Latest changelog:
    • 20121130 [v0.6]
    • md5: a2972a18cfbafbce64088433b941a35e
      • updated CyanogenMod source (9.1)
      • enabled compile-time optimizations (-Os, -fstrict-aliasing, switched to gcc4.6)
      • optimized package size/memory usage (mdpi-sw600dp resources removed)
      • full CM9 application list is now included in build (possible thanks to space optimizations)
      • switched from Gallery2 to older Gallery (new app doesn't display static images properly).
      • switched from CM7's FileManager to new CMFileManager (backported from Jelly Bean)
      • switched from Apollo music player to ICS Music (interface is similar to Gingerbread version). Will switch to Apollo when the memory usage is reduced/layout is better optimized for LDPI.
      • added U8160Parts application available at Settings -> Device -> Advanced. This allows configuration of audio attenuation, swap, background process limiting and SD card readahead cache settings.
      • optimization: set default background process limit to 2. This improves memory efficiency for most usage scenarios, but you can reconfigure the setting via U8160Parts if you need to have more applications stay resident in memory.
      • kernel: fully updated, based on latest android_kernel_msm7x25 Gingerbread source with ICS-related drivers/patches added
      • kernel: USB host mode available by default (no separate kernel/package needed)
      • fixed: automatic brightness & lcd button levels
      • fixed: basic camera function (taking pictures, barcode scanner mode working; camcorder not working)
      • fixed: USB tethering
      • fixed: wifi hotspot
      • fixed: compass
      • fixed: U8180 detection (automatic)
      • improved: Trebuchet performance (widgets are not joined to apps by default, reducing memory usage & rendering complexity)
      • many small fixes and improvements.

    • 20120528 [v0.5]
    • md5: 3bacb6a08c447b2389d16b65dc18f8fe
      • updated CyanogenMod source
      • big update based on tilal6991's latest changes - codename "FrozenFissionY" :p
      • kernel: using my latest codeaurora-kernel_huawei_u8160 kernel source with configuration changes to better suit ICS
      • kernel: backported xt_quota2, xt_qtaguid, iface_stat drivers to allow proper networking stats and prevent recurring framework crashes
      • libaudio: adapt Adriano Carrata's rewritten libaudio to ICS with new AudioFilter and audio attenuation enabled
      • framework: fixed cpu deep sleep issue that was caused by wakelock in highspeed serial device (Bluetooth quick switch) - should drastically improve battery life (may now be similar to CM7)
      • framework: optimizations to 2D rendering speed
      • framework: disable UI touch sounds (was slowing down presses + increasing battery drain)
      • include old Music app alongside new Apollo music player (as the latter may have problems detecting media for some people)
      • add VoiceDialer, SoundRecorder, and FileManager from CM7 (as there is no CM9 version yet).
      • Trebuchet: change drawer animation back to default (looks nicer, no change in performance)
      • fix simple2ext compatibility issue. Note: you will need to enable the "mount as ext4" option in the app settings, as CM9 does not auto-mount /sd-ext on boot.
      • increase VM heap to 32MB - should reduce ANR errors.
      • camera partially working (preview works, taking picture not supported by default app)

    • 20120418 [alpha 4]
    • md5: unknown
      • updated to latest CyanogenMod source (now Android 4.0.4)
      • included new kernel (based on CM7's v1.2-batterytest3);

    • 20120212 [alpha 3]
    • md5: unknown
      • fixed/confirmed working - multitouch, telephony, mobiledata, audio (all routing appears to be working fine), bluetooth, mac addresses, accelerated 2D rendering.

    • 20111130 [alpha 2]
    • md5: unknown
      • fixed/confirmed working - gps, sensors, wifi signal indicator, graphics flickering, touchscreen for u8180 users(?)

    • 20111129 [alpha 1]
    • md5: unknown
      • initial port. Touchscreen, wifi, sd card mount works. Graphics working with some flickering/without acceleration.

    Thanks to:
    • ac1953 (libaudio, general help on CM7)
    • DSM (assistance with device settings app)
    • tilal6991
    • aorth
    • loyal testers... ;)

    Source code:

    Downloads:
    17
    CyanogenMod 9 U8160 ROM Status (20121130) [v0.6]:

    Working:
    • 2D acceleration (using copybit)
    • Audio
    • Bluetooth
    • Bluetooth tethering (?)
    • Camera - preview, picture taking, barcode scanner mode
    • GPS
    • Lights
    • Sensors
    • Telephony - calling, messaging, mobiledata
    • Touchscreen (multitouch)
    • USB Mass Storage
    • USB tethering
    • Wi-Fi
    • Wi-Fi Hotspot
    • Swap
    • zRam (i.e. compcache)

    Not working:
    • Camcorder mode
    • OMX encoders/decoders (e.g. Youtube HQ video playback)

    Issues:
    • Bluetooth - when enabled, Bluetooth will cause the phone to constantly hold a wake lock, preventing the phone from sleeping. Turn off Bluetooth when you don't need it.
    • FM Radio - no CM9 radio app yet exists, but libaudio has support included. This means that some third-party apps (e.g. Spirit FM) can work.
    • Gallery - after installing Google Apps, you will have two different Gallery apps installed. We need to use the legacy Gallery app, because the newer Gallery2 (and Google's version, GoogleGallery) requires OpenGL extensions that our phone cannot support. You are free to delete one of the duplicate applications from /system/app using CMFileManager (in root mode).
    • Trebuchet - after first installation, the default background wallpaper may be misaligned, leaving some black banding at the sides. This only occurs on first start, and the problem will correct itself on the next reboot / relaunch of Trebuchet.
    • USB tethering - the phone will freeze if you remove the cable during tethering. Make sure to disable tethering via the menu option manually when you want to remove the phone from the computer.

    U8160Parts:
    This is my special settings app for our specific device, which you can reach from Settings -> Device -> Advanced. The options available are:
    • Audio attenutation for speaker, headset and FM audio
    • Background process limit: this will limit the amount of background processes, which is very useful for low memory phones. Note: This is also a development option in Settings -> System -> Developer options, but if you configure it there, your choice will not be remembered over reboots. Configure from my application instead, and your choice will always be saved/applied over reboots.
    • SD card read ahead buffer: this is useful if you don't use a dedicated app/script (Link2SD, S2E, etc.) that increases the read-ahead cache for the SD card's sd-ext partition.
    • Swap: this will enable the swap partition (if it exists on your SD card). Using a swap partition larger than 64MB is not recommended, as it may cause lag. Don't mix regular swap and zRam (compcache)
    8
    Update on the kernel work: I've been doing a lot of testing, and I think that I finally managed to solve the battery drain that happens when the phone is idle. My phone has been 19.5 hours idle off-charge and the battery is showing 96% capacity.

    There's still a small bug with the USB drivers (it's enumerating some invalid endpoints). Once I've fixed that, I'll put out a CM7 test build with the new kernel. After some testing by the community, I'll then use it for a refreshed CM9 or CM10.1 build.
    7
    Just to let you guys know, I haven't abandoned you all ;). I've been busy porting the 3.0 kernel for my Samsung phone, but I am also looking at the Huawei kernel too. I currently have a 2.6.35 kernel revision booting on the U8160 (only enough for CWM so far). I'm currently doing some regression testing, as the latest head of codeaurora's android-msm-2.6.35 is not working and I'd like to use the latest version (or perhaps a later kernel if feasible).

    As for CM10.1, unfortunately there is a lot of code missing for legacy support. After the kernel work I may focus on the CM10 branch again and try to get copybit acceleration working. Failing that, I can simply release a new ICS build with new fixes (and maybe the new kernel eventually). If the kernel works well, I may release in a CM7 build too.

    Even if it's only CM9, I discovered important code that was missing in the CM9 source (as well as CM10.x). The ability to force "purgeable assets" was not implemented in the framework, despite the option being present in the Settings app in all CyanogenMod versions. This is a very important feature for memory-limited phones, and improves responsiveness quite a bit.
    4
    Anyone know if this thing is suitable for everyday use on t mobile rapport (u 8180)

    Sent from my U8180 using XDA App
    Ah,you again... As it's plainly written - it's a TEST BUILD and moreover the list of known issues is again pointed out prominently enough.. So unless you don't mind not being able to make calls, use the keys under the screen or an assortment of other problems,glitches and other issues... Yes,it's suitable for everyday use