Jump to content

[DEV][ROM][17.11.] CyanogenMod 11 (Android 4.4.4) for ZTE Open C / Kis 3


Guest KonstaT

Recommended Posts

Guest KonstaT
This is my port of CyanogenMod 11 for ZTE Open C / Kis 3 (Beeline Smart2, Moche/MEO Smart A16, ZTE V811W, ZTE V811, Skinny V811, Optus Hop Smart, ZTE Blade M, etc). It is unofficial and unsupported by the CyanogenMod team. It's for advanced users only.
 
Important. Prerequisites!!! You need to install Android KitKat on your Open C first (e.g. EU_FFOS+to+Android.zip will do). You also need to have this ClockWorkMod or this TWRP recovery installed.
 
Screenshot_2014-08-14-19-19-36.png Screenshot_2014-08-14-19-21-17.png Screenshot_2014-08-14-19-21-52.png Screenshot_2014-08-14-19-20-38.png
 
Do not mirror my builds! Please post a link to this page instead.
 
cm-11-20151117-UNOFFICIAL-KonstaKANG-kis3.zip
http://konstakang.com/devices/kis3/CM11
md5:4a9f5251b94248e583394ce413ef4e2f
 
Google Apps:
 
Working:
  • RIL (mobile network, SMS & data) - dual-SIM (V811W)
  • Wifi
  • Audio (playback/input/routing/headphones/etc)
  • Bluetooth
  • Camera (photos, camcorder & panorama)
  • FM radio
  • GPS
  • Hardware acceleration and OpenGL rendering
  • Hardware video decoding & encoding
  • SD card
  • USB-storage (on external sdcard) & adb
  • USB-tethering
  • Wifi-tethering
  • Touchscreen/multi-touch
  • Sensors
  • LEDs
Not working:
  • ???
 
Important!!! If you’re using my open sourced work as a part of your project, be fair and give proper credits, and contribute back by keeping your project open source as well. I've put countless hours of my spare time into this project and I deserve at least this (I'm not getting paid to do this). Free and open source doesn't mean without respect!
 
Sources:
Thanks:
  • CyanogenMod team & everyone who's been working on CM11
Like my work?
btn_donate_LG.gif
Edited by KonstaT
Link to comment
Share on other sites

Guest KonstaT

Merged commits not mentioned in the changelog.

17.11. changelog:

  • add BFQ i/o scheduler and enable it by default
  • patch known vulnerabilities in kernel (CVE-2015-8019, CR-930533)
  • Android security patch level: 1 November 2015 (merged)

8.8. changelog:

  • patch known vulnerabilities in kernel (CVE-2015-5366, CVE-2015-3339 and CVE-2015-1534)
  • patch recently disclosed stagefright vulnerabilities (merged)

10.6. changelog:

  • option to change button backlight brightness
  • enable call recording (available in whitelisted countries where its legal status clear)
  • enable in-call volume boost option
  • fix duplicate sdcard entries when importing/exporting contacts
  • update sensor HAL and few other blobs from recent ZTE stock firmware
  • updates from new ZTE kernel source release (i.e. Goodix GT960F touchscreen support)
  • unbreak headset detection (headset with mic and call button is again registered correctly)
  • disable panic to download mode in kernel (should now reboot instead of freezing)
  • patch known vulnerabilities in kernel (CVE-2014-2523, CVE-2014-9529, CVE-2015-3636, CVE-2015-2041, CVE-2014-9715 and CVE-2015-2922)

28.3. changelog:

  • use userspace implementation to set correct wlan MAC address
  • add camera wrapper to disable unsupported HDR mode
  • update 'Kis 3 Hardware Info' app to v0.7.5
  • build iris fm and pronto wlan drivers into kernel and disable modules support (we're going moduleless :P)
  • patch known vulnerabilities in kernel (CVE-2015-1465, CVE-2014-8160, CVE-2014-9683, CVE-2015-1420 and CVE-2014-8173)
  • remove support for unused hardware in kernel
  • tweak kernel build flags for Cortex-A7
  • add optimized memutils in kernel (thanks to Motorola)
  • patch OpenSSL FREAK attack (CVE-2015-0204 - merged)

13.1. 2015 changelog:

  • add display color calibration option
  • add performance profiles
  • add key disabler (disables hardware virtual keys when navigation bar is enabled just like on OnePlus One)

4.11. changelog:

  • don't automatically enable dual-SIM according to hwversion
  • update bluetooth configuration
  • Kis3Info: add partition layout info (Open C vs. Kis 3)
  • fix importing SIM contacts (merged)

29.10. changelog:

  • new kernel (clean up a lot of ZTE crap and add a ton of updates from CAF)
  • fix bootclass path (possibly caused libdvm to crash occasionally)
  • automatically enable dual-SIM features on V811W (ro.boot.hwversion=wmfA.6)
  • encrypting device works (quite sure it didn't before)
  • enable defferable timer for KSM
  • Kis3Info: add ambient light/proximity sensor info

12.10. changelog:

  • update prima wlan driver (fix wifi weak signal sleep of death issue)
  • set correct wifi MAC address from file (/persist/wifimac.dat) with ZTE kernel driver
  • enable SELinux enforcing
  • set baseband version from modem firmware
  • start with USB in MTP mode
  • bring back initial support for dual-SIM devices (add 'persist.radio.multisim.config=dsds' to /system/build.prop to enable)
  • increase zRAM size

14.9. changelog:

  • fix offline charging
  • some wifi fixes
  • patch CVE-2014-4943 in kernel
  • include Kis 3 Hardware Info app

17.8. changelog:

  • build lights HAL from source
  • fix DivX playback
  • fix haptic feedback on hardware buttons
  • disable Qualcomm network location for now
  • patch CVE-2014-0196 and CVE-2014-3153 in kernel

14.8. changelog:

  • initial release

 

Previous builds:

cm-11-20150808-UNOFFICIAL-KonstaKANG-kis3.zip
http://konstakang.com/devices/kis3/CM11
md5:b2c5bb09516b5d46aa5fa1f409b3ab71

cm-11-20150610-UNOFFICIAL-KonstaKANG-kis3.zip
http://konstakang.com/devices/kis3/CM11
md5:8316826466e8f1e6f72af65c6eca1e4f

cm-11-20150328-UNOFFICIAL-KonstaKANG-kis3.zip
http://konstakang.com/devices/kis3/CM11
md5:d7f5ad69284ac8d43c74fbbc3eafe7ce

Edited by KonstaT
Link to comment
Share on other sites

Guest KonstaT

How to install:

  1. boot into ClockWorkMod
  2. backup and restore -> backup (create a nandroid backup of your current ROM)
  3. mounts and storage -> format /system
  4. wipe data and factory reset
  5. install cm-11-xxxxxxxx-KonstaKANG-kis3.zip
  6. install gapps-kk-xxxxxxxx-signed.zip
  7. reboot now

 

FAQ:

 

Q: I can't find developer options and performance settings, why?
A: Settings -> About phone -> Click 'Build number' several times

Q: I don't have reboot options in power menu, why?
A: Settings -> Developer options -> Advanced reboot

 

Q: When I'm connected with an USB cable to my computer, I can't see my internal sdcard as a storage, why?

A: I've made an executive decision not to include a mount point for internal sdcard. This is because recent Android versions don't allow setting emulated sdcard as secondary storage. Setting rather small emulated sdcard as a primary storage caused issues with games/apps that want to download large amounts of data to the sdcard. Also partition layout is different on Open C and Kis 3 and internal sdcard is handled differently between device variants.

 

Q: There's no transparent status/navigation bar, why?

A: It has been disabled on low memory devices. You can enable it by removing/commenting/changing to false 'ro.config.low_ram=true' in /system/build.prop. There's also an option that will only force high-end graphics (Setting -> Performance -> Force high-end graphics).
 
Q: 'OK Google' voice command doesn't work, why? There's no Google Now page on the homescreen, why?
A: These are features of proprietary Google Now Launcher. 'OK Google' voice command is also disable on low memory devices (see above).
 
Q: There's only a home button on an Open C. How is this going to work?
A: There's 'hidden' back and menu keys on left and right side of the home button. There's also an option to use software navigation bar instead of the capacitive keys.
 
Q: There's an option to enable auto-brightness but it doesn't work, why? Proximity sensor doesn't work either...
A: Open C doesn't have ambient light/proximity sensor. Some Kis 3 variants on the other hand do, so that's why I've kept the support.
 
Q: How do I enable dual-SIM features on my V811W?
A: Add 'persist.radio.multisim.config=dsds' to /system/build.prop or alternatively 'setprop persist.radio.multisim.config dsds' in rooted adb shell/terminal session. This can also be done by flashing the following package in recovery.
 
 
How to build:
 

1. Follow instructions on initializing a build environment up to a point of downloading the source code.

2. Initialize CyanogenMod 11 repo.

repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0

3. Add local manifest that downloads ZTE Open C / Kis 3 device config, proprietaries and kernel source from my github and few CyanogenMod replacement projects from legaCyMod github.

curl --create-dirs -L -o .repo/local_manifests/local_manifest.xml -O -L https://raw.github.com/legaCyMod/android_local_manifest/cm-11.0/local_manifest.xml
curl -L -o .repo/local_manifests/manifest_zte_kis3.xml -O -L https://raw.github.com/legaCyMod/android_local_manifest/cm-11.0/manifest_zte_kis3.xml

4. Sync source code.

repo sync

5. Update Terminal Emulator (you only need to this again when Terminal has been updated).

cd path-to/cm11/vendor/cm/
./get-prebuilts

6. Apply patches. No patches currently required.

 

7. Compile.

cd path-to/cm11/
. build/envsetup.sh
brunch kis3

Use 'repo sync' to pull merged changes from upstream. Use 'make clobber' to clean the build environment. Repeat step 7 to make a new build.

Edited by KonstaT
Link to comment
Share on other sites

Guest okmikel

Hi,

 

I installed CM11 this night an everythink seems to work great except two liitle things:

 

1. The softkeys do not vibrate even I have turned the option on in the audio settings. Lock screen unlock does vibrate, soft keys not. Do I do something wrong?

 

2. Titanium Backup crashes itslef or somtimes the whole system doing large batch jobs (freeze of system, softkeys do not work anymore). Backup or restore of single apps does work, doing a batch backing up all apps crashes after a few apps. Is this a Titanium Backup or CM11 issue?

 

Thank you for your great work.

 

Greetings

Mikel

Link to comment
Share on other sites

Guest KonstaT

Hi,

 

I installed CM11 this night an everythink seems to work great except two liitle things:

 

1. The softkeys do not vibrate even I have turned the option on in the audio settings. Lock screen unlock does vibrate, soft keys not. Do I do something wrong?

 

2. Titanium Backup crashes itslef or somtimes the whole system doing large batch jobs (freeze of system, softkeys do not work anymore). Backup or restore of single apps does work, doing a batch backing up all apps crashes after a few apps. Is this a Titanium Backup or CM11 issue?

 

Thank you for your great work.

 

Greetings

Mikel

Thanks for testing and your feedback.
 
1. It's missing the keylayout for goodix touchscreen. Save this as /system/usr/keylayout/goodix_touchscreen.kl and set correct permissions for the file (644).
key 139    MENU    VIRTUAL
key 172    HOME    VIRTUAL
key 158    BACK    VIRTUAL

Haptic feedback is now there but it's quite short/weak. I'll see if the vibraton duration can be increased in the next build.

 
2. Could be either. Logcat would probably tell a bit more...
Link to comment
Share on other sites

Guest okmikel

Hi,

 

Haptic feedback is working with the file, thank you.

 

With logcat I have masses of this messages:

E/ ( 885): W/int loc_api_server_proc(void*):138] fail receiving msg from gpsone_daemon, retry later
E/ ( 885): W/loc_eng_dmn_conn_glue_msgrcv:153] pipe broken -1
E/ ( 885): W/int loc_api_server_proc(void*):138] fail receiving msg from gpsone_daemon, retry later
E/ ( 885): W/loc_eng_dmn_conn_glue_msgrcv:153] pipe broken -1
E/ ( 885): W/int loc_api_server_proc(void*):138] fail receiving msg from gpsone_daemon, retry later
E/ ( 885): W/loc_eng_dmn_conn_glue_msgrcv:153] pipe broken -1

Hard to see any other message between, I must try again this evening, ATM I am at work.

Edited by okmikel
Link to comment
Share on other sites

Guest KonstaT

With logcat I have masses of this messages:

E/ ( 885): W/int loc_api_server_proc(void*):138] fail receiving msg from gpsone_daemon, retry later
E/ ( 885): W/loc_eng_dmn_conn_glue_msgrcv:153] pipe broken -1
E/ ( 885): W/int loc_api_server_proc(void*):138] fail receiving msg from gpsone_daemon, retry later
E/ ( 885): W/loc_eng_dmn_conn_glue_msgrcv:153] pipe broken -1
E/ ( 885): W/int loc_api_server_proc(void*):138] fail receiving msg from gpsone_daemon, retry later
E/ ( 885): W/loc_eng_dmn_conn_glue_msgrcv:153] pipe broken -1

Hard to see any other message between, I must try again this evening, ATM I am at work.

Hmm, strange I don't see that spamming logs on my device. You could try turning GPS off and rebooting.
 
There's still some issues with GPS (Qualcomm wifi location services) but gpsone_daemon should not be used at all on this device.
 
Edit. Grr, I cleaned up ramdisk a bit too much. :P  Execute following in terminal (or adb shell) and reboot:
su
mkdir /data/misc/gpsone_d
chmod 0770 /data/misc/gpsone_d
chown system.gps /data/misc/gpsone_d
Link to comment
Share on other sites

Guest okmikel

Hi,

 

I cannot find /data/misc/gpsone_d on my phone.

 

root@kis3:/ # chmod 0770 /data/misc/gpsone_d
Unable to open /data/misc/gpsone_d: No such file or directory
10|root@kis3:/ # cd data
root@kis3:/data # cd misc
root@kis3:/data/misc # ll
drwxr-s--- system   shell             1970-01-14 04:22 adb
drwxrwx--- audio    audio             1970-01-14 04:22 audio
drwxr-s--- audit    system            1970-01-14 19:40 audit
drwxrwx--- bluetooth net_bt_stack          1970-01-14 04:24 bluedroid
drwxrwx--- bluetooth bluetooth          1970-01-14 04:22 bluetooth
drwxrwx--- dhcp     dhcp              2014-08-15 02:11 dhcp
prw-rw---- system   gps               2014-08-15 06:49 gsiff_ctrl_q
drwxrwx--x system   system            2014-08-14 21:14 keychain
drwx------ keystore keystore          2014-08-15 12:29 keystore
drwxrwx--- gps      gps               1970-01-14 04:22 location
drwx------ media    media             1970-01-14 04:22 media
drwxrwx--- gps      system            2014-08-15 12:31 quipc
drwxrwx--- system   radio             1970-01-14 04:22 radio
drwxrwx--- system   radio             1970-01-14 04:22 sms
drwx------ system   system            2014-08-14 21:45 systemkeys
drwxrwx--- system   vpn               1970-01-14 04:22 vpn
drwxrwx--- wifi     wifi              1970-01-14 14:19 wifi
drwxrwxr-x system   system            1970-01-14 04:22 zoneinfo
Link to comment
Share on other sites

Guest KonstaT

I cannot find /data/misc/gpsone_d on my phone.

'mkdir /data/misc/gpsone_d' first then. I had it there after a clean install but it had wrong permissions/owner. :o Seemed like setting the permissions stopped the log spam for me but it could have been something else too...

Link to comment
Share on other sites

Guest okmikel

Hi,

 

this worked:

root@kis3:/ # cd data
root@kis3:/data # cd misc
root@kis3:/data/misc # mkdir gpsone_d
root@kis3:/data/misc # chmod 0770 gpsone_d
root@kis3:/data/misc # chown system.gps gpsone_d

Now the gpsone_daemon messages are gone in logccat and I will make a clean logcat output of the Titanium Backup crash.

 

Greetings

Mikel

Edited by okmikel
Link to comment
Share on other sites

Guest okmikel

It finaly worked, I got full log of the Titanium Backup crash after a nearly fresh reboot. I logged everythink in a file with "logcat -f /sdcard/logcat.log" and attached the full log to this post as a zip file.

 

Hope this helps.

 

Greetings

Mikel

 

logcat.zip

Link to comment
Share on other sites

Guest KonstaT

It finaly worked, I got full log of the Titanium Backup crash after a nearly fresh reboot. I logged everythink in a file with "logcat -f /sdcard/logcat.log" and attached the full log to this post as a zip file.

 

Hope this helps.

 

Greetings

Mikel

Dalvik keeps crashing on qcmediaplayer.jar. That shouldn't happen. Iirc there's something wrong with qcmediaplayer.jar on my other device as well but nothing like this. Just another thing to look into...

Link to comment
Share on other sites

Guest boogyboo

Great Job!!!!

 

I've been having issues building the kernel.  No one's sources work on my end...  and i'm not really sure how to make the dt.img from the dt files.  if you could lead me to some info that would be great.

 

i didn't have any trouble with building firefox 1.4 for the phone or building clockworkmod recovery. 

 

anyway, great job

Link to comment
Share on other sites

Guest KonstaT

Great Job!!!!

 

I've been having issues building the kernel.  No one's sources work on my end...  and i'm not really sure how to make the dt.img from the dt files.  if you could lead me to some info that would be great.

 

i didn't have any trouble with building firefox 1.4 for the phone or building clockworkmod recovery. 

 

anyway, great job

Who else has sources? :P

 

That's everything you need to know.
 
In short, you need to compile dtbTool (https://www.codeaurora.org/cgit/quic/la/device/qcom/common/tree/dtbtool?id=LNX.LA.3.5.1-00710-8x10.0) and create a dt.img with something like './path/to/dtbTool -o dt.img -s 2048 -p ./scripts/dtc/ ./arch/arm/boot/' from the root of the kernel tree.
Link to comment
Share on other sites

Guest boogyboo

 

Who else has sources? :P

 

That's everything you need to know.
 
In short, you need to compile dtbTool (https://www.codeaurora.org/cgit/quic/la/device/qcom/common/tree/dtbtool?id=LNX.LA.3.5.1-00710-8x10.0) and create a dt.img with something like './path/to/dtbTool -o dt.img -s 2048 -p ./scripts/dtc/ ./arch/arm/boot/' from the root of the kernel tree.

 

 

yeah i finally stumbled across the updated tools here:  https://github.com/xiaolu/mkbootimg_tools  not long after i posted above. 

 

and i meant kernel sources.  there are several sources for msm8610 available.  although only your source posted in this thread and one from github user ztemt worked as is without having to make several modifications, on my setup anyway.

Link to comment
Share on other sites

Guest KonstaT

and i meant kernel sources.  there are several sources for msm8610 available.  although only your source posted in this thread and one from github user ztemt worked as is without having to make several modifications, on my setup anyway.

What several msm8610 sources? There's only this one I'm aware of:

http://download.ztedevices.com/uploadfiles/copyright/mobilephones/ZTE_V811/ZTE_V811.KK.34x.kernel.tar.gz

 

There's exactly zero msm8610 kernel sources on github user ztemt's account. :o

Link to comment
Share on other sites

Guest boogyboo

in making the dt.img using the dbdTool source you mentioned (which is in the B2G repo for the OpenC), i get an error on two of the dt files:

 

Found file: msm8610-sim.dtb ... ... skip, incorrect 'qcom,msm-id = <' format
skip, failed to scan for 'qcom,msm-id = <' or 'qcom,board-id = <' tag
Found file: msm8610-rumi.dtb ... ... skip, incorrect 'qcom,msm-id = <' format
skip, failed to scan for 'qcom,msm-id = <' or 'qcom,board-id = <' tag
 

 

any ideas???

Link to comment
Share on other sites

Guest boogyboo

What several msm8610 sources? There's only this one I'm aware of:

http://download.ztedevices.com/uploadfiles/copyright/mobilephones/ZTE_V811/ZTE_V811.KK.34x.kernel.tar.gz

 

There's exactly zero msm8610 kernel sources on github user ztemt's account. :o

 

the U9180 3.4 source

 

contains both default and perf configs for the 8610 platform.  it's essentially the same from what i can tell.  of course i'm probably wrong lol.  but i built a kernel with it.

 

i used the commit link you gave me before that you said would be identical to zte's release, yet it never worked for me.

 

i also tried the other branches of the same source that this is from and never could get it to build without changing several things.

 

but i've got them building fine now.

 

and something interesting that i've seen is that i've not had to replace the wifi module yet with the two new kernels i've built based off this source.  i wonder if this has to with the device tree blob integration?

Edited by boogyboo
Link to comment
Share on other sites

Guest KonstaT

in making the dt.img using the dbdTool source you mentioned (which is in the B2G repo for the OpenC), i get an error on two of the dt files:

 

Found file: msm8610-sim.dtb ... ... skip, incorrect 'qcom,msm-id = <' format

skip, failed to scan for 'qcom,msm-id = <' or 'qcom,board-id = <' tag

Found file: msm8610-rumi.dtb ... ... skip, incorrect 'qcom,msm-id = <' format

skip, failed to scan for 'qcom,msm-id = <' or 'qcom,board-id = <' tag

 

any ideas???

Most likely you're doing it wrong e.g. using a source code that is not for this device!

 

the U9180 3.4 source

 

contains both default and perf configs for the 8610 platform.  it's essentially the same from what i can tell.  of course i'm probably wrong lol.  but i built a kernel with it.

Lol, not even close. That's a msm8x26 kernel source. It doesn't have any hardware specific drivers for this device (display panel, touchscreen, camera, sensors, etc). There's zero chance that would ever boot on your device. See this commit what ZTE have done for their msm8610 family of devices (ZTE source on top of CAF).

 

Defconfig means absolutely nothing! There's a default defconfig for every supported msm platform in every CAF kernel. There's even defconfigs for different platforms in mainline kernel which can result to completely idiotic news pieces like this. :P

 

and something interesting that i've seen is that i've not had to replace the wifi module yet with the two new kernels i've built based off this source.  i wonder if this has to with the device tree blob integration?

If you don't change anything in the kernel, the modules should still load. That tells that at least ZTE has released a valid source.

 

This is also getting completely off topic...

Link to comment
Share on other sites

Guest KonstaT
New build. It's getting pretty complete now. :) There's no issues that I'm aware of at the moment so user feedback is required to move forward. ~100 downloads and only one person commented on the actual build. You could at least say thanks or hit the +1 button on the first post if you don't have anything to complain about. ;)
 
Also if there's anyone with other Kis 3 variants (ZTE Kis 3, ZTE V811W, MEO/Moche Smart A16, Билайн Смарт 2 (Beeline Smart 2)), please test and report back. I can only test things on my Open C but I'd like to have other variants supported as well.
 
cm-11-20140817-UNOFFICIAL-KonstaKANG-kis3.zip
md5:70d22ea83b531d0f8b6422eb1a8c4f26
 
-build lights HAL from source
-fix DivX playback
-fix haptic feedback on hardware buttons
-disable Qualcomm network location for now
-patch CVE-2014-0196 and CVE-2014-3153 in kernel
Link to comment
Share on other sites

Guest okmikel

Hi,

 

I installed it this night, great work, thank you.

 

Haptic feedback on softkeys is working now.

 

"gpsone_daemon" loccat messages are gone.

 

Titanium Backup still crashing, now making a complete reboot. I attached a logcat-log as a zip file.

 

Greetings

Mikel

logcat.zip

Edited by okmikel
Link to comment
Share on other sites

Guest blankland

Greate job!

Battery life is short,may be caused by gpsone_daemon issue,I'm trying the new build.

Edited by blankland
Link to comment
Share on other sites

Guest GamblerTobi

Good Job!

I tried to compile it so many times but I always got an error. At the end I flashed the ZIP and it worked. Animation while loading would be cool.

Link to comment
Share on other sites

Guest KonstaT

Titanium Backup still crashing, now making a complete reboot. I attached a logcat-log as a zip file.

Yeah, it's still the same thing with dalvik crashing on optimizing qcmediaplayer. I have couple of ideas and I'll look into when I get around.

 

Good Job!

I tried to compile it so many times but I always got an error. At the end I flashed the ZIP and it worked. Animation while loading would be cool.

Have you built CyanogenMod before? What kind of error?

 

Huh, there's already a bootanimation if that's what you mean. :o

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.