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

Search This thread


May 27, 2012
Link him to your CM9 Rom :p also I still use my U8160 sometimes haha. Now i have a pc I suppose I could try something for this phone
I'm late to the party, guys; nevertheless, that would be awesome, kaikun97. I've been on cm7 for like forever, ? I should now just go ahead and test somesome of the cm9 and 10 roms I've seen posted elsewhere on here.

In the meantime, thank you very much, psyke73 for all the wonderful development I've seen you did on our device, whether or not you're continuing in the future.


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.


    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:

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

    • 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)

    • 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.

    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)
    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.
    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.
    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