EDIT May 10, 2016: Android security patch for May 1.
EDIT April 25, 2016: Various security fixes, especially the kernel.
EDIT March 18, 2016: Turn off GPS logging because it filled up /data/gps/log/ with garbage
EDIT March 04, 2016: Kernel fix for suspected firmware bug that can potentially hard brick your device, and perhaps a few security fixes from Google
EDIT October 01: 1) Fix battery drain (no deep sleep) when wifi disabled; 2) Fix Bluetooth mouse has no pointer; 3) Fix Bluetooth sound is popping / crackly when screen turned off; 4) Fix autobrightness still a bit wonky. 5) Switch to row i/o scheduler for better latency
EDIT August 24: Fix Wifi rotation lock switch
EDIT July 20: Fix Wifi-direct, bluesleep
EDIT June 25: Sensors working, vold working (usb-otg, external sdcard)
This is Cyanogenmod-11 for Lenovo IdeaTab A2109.
This ROM is currently more feature complete than 4.2.2 and on feature parity with stock 4.1.1. You need to upgrade cwm first, older cwm's do not support kitkat roms. Also, the older cwm included a kernel bug with a potential risk to brick your device (see here for details)
Recovery:
cwm-6.0.5.1-20160217-UNOFFICIAL-kai.img (MD5: 2709d97274ebb8d09b14365695a46dc0)
KitKat (Cyanogenmod-11):
cm-11-20160510-UNOFFICIAL-kai.zip (md5: b1bca2bfcb7c3126e28c34511e04adc4)
Features
Working:
Installation
General installation instructions for people coming from stock (I added some commands that work on Linux, I'm not familiar with Windows beyond XP):
[HOW TO] Install ClockworkMod Recovery and Root | Android Tablet Forum
Unlock A2109 Boot Loader with Ubuntu | Android Tablet Forum
Sources are here:
PJBrs/android_device_lenovo_kai · GitHub
Donations
Donations are currently quite welcome to support ongoing development of Lollipop.
Build instructions
For Cyanogenmod 11.0, first install repo. Then create a root directory for your cyanogenmod source (e.g. ~/src/cyanogenmod). Go into that directory and do:
The -b switch selects which branch you'll build.
Add my local_manifest.xml to .repo/local_manifests/ in the root of your source tree, and then do:
You probably need to get some cyanogenmod prebuilts:
The most difficult step is to get the proprietary blobs. Connect your device, activate adb and put it in your path, go into device/lenovo/kai and run
Note that the script expects stock Jelly Bean to be installed!
I've made a setup-makefiles.sh script that is able to mix kai binaries with grouper binaries, but it does need the grouper vendor tree to be present. See proprietary-files.txt and grouper-unique-blob-list.txt for suggestions and (mediocre) documentation. Download the grouper binaries for KitKat-4.4.4 from here:
Binaries for Nexus Devices
You probably don't need them all but I haven't really thought about which ones to leave out. Basically this is a set of archives that each contain one selfextracting script. If you all run them in the root directory of your cyanogenmod tree, you end up with a vendor tree for grouper. Next, go to the device/lenovo/kai tree and run the following:
Now go back to your the root of your source tree, and then it should be as simple as:
Thanks to cyanogenmod for a great rom and to all those real devs writing compatibility patches!
Finally, a few keywords so that this post at least can be found from Google:
Custom Rom, Lenovo IdeaTab A2109, Android KitKat 4.4.4, Cyanogenmod 11
EDIT April 25, 2016: Various security fixes, especially the kernel.
EDIT March 18, 2016: Turn off GPS logging because it filled up /data/gps/log/ with garbage
EDIT March 04, 2016: Kernel fix for suspected firmware bug that can potentially hard brick your device, and perhaps a few security fixes from Google
EDIT October 01: 1) Fix battery drain (no deep sleep) when wifi disabled; 2) Fix Bluetooth mouse has no pointer; 3) Fix Bluetooth sound is popping / crackly when screen turned off; 4) Fix autobrightness still a bit wonky. 5) Switch to row i/o scheduler for better latency
EDIT August 24: Fix Wifi rotation lock switch
EDIT July 20: Fix Wifi-direct, bluesleep
EDIT June 25: Sensors working, vold working (usb-otg, external sdcard)
This is Cyanogenmod-11 for Lenovo IdeaTab A2109.
This ROM is currently more feature complete than 4.2.2 and on feature parity with stock 4.1.1. You need to upgrade cwm first, older cwm's do not support kitkat roms. Also, the older cwm included a kernel bug with a potential risk to brick your device (see here for details)
Recovery:
cwm-6.0.5.1-20160217-UNOFFICIAL-kai.img (MD5: 2709d97274ebb8d09b14365695a46dc0)
KitKat (Cyanogenmod-11):
cm-11-20160510-UNOFFICIAL-kai.zip (md5: b1bca2bfcb7c3126e28c34511e04adc4)
Features
Working:
- Sound (mic and speakers)
- EGL
- Video-playback
- HDMI-out
- Bluetooth
- Bluesleep
- Wifi
- Wifi-direct (wifi-p2p)
- GPS
- Camera
- USB-OTG
- External sdcard
- SeLinux
- Hardware rotation lock button
- Cast screen to chromecast doesn't work
- Recovery appears to list external SD-Card twice
- Let me know
Installation
General installation instructions for people coming from stock (I added some commands that work on Linux, I'm not familiar with Windows beyond XP):
- Put the ROM on your SD-Card
- (Optional) put gapps on your SD-Card
- Install fastboot and adb on PC
- Reboot to bootloader (e.g., via adb: $ adb reboot bootloader)
- Unlock bootloader ($ fastboot -i 0x17ef oem unlock) WARNING: this results in a factory reset
- Flash recovery ($ fastboot -i 0x17ef flash recovery cwm-6.0.5.1-UNOFFICIAL-kai.img)
- Reboot to recovery
- (Optional) back-up current ROM
- Clean cache and dalvik cache
- Install new ROM
- Reboot
[HOW TO] Install ClockworkMod Recovery and Root | Android Tablet Forum
Unlock A2109 Boot Loader with Ubuntu | Android Tablet Forum
Sources are here:
PJBrs/android_device_lenovo_kai · GitHub
Donations
Donations are currently quite welcome to support ongoing development of Lollipop.
Build instructions
For Cyanogenmod 11.0, first install repo. Then create a root directory for your cyanogenmod source (e.g. ~/src/cyanogenmod). Go into that directory and do:
Code:
$ repo init -u https://github.com/CyanogenMod/android.git -b cm-11.0
The -b switch selects which branch you'll build.
Add my local_manifest.xml to .repo/local_manifests/ in the root of your source tree, and then do:
Code:
$ repo sync
Code:
$ cd vendor/cm
$ ./get-prebuilts
The most difficult step is to get the proprietary blobs. Connect your device, activate adb and put it in your path, go into device/lenovo/kai and run
Code:
$ ./extract-files.sh
I've made a setup-makefiles.sh script that is able to mix kai binaries with grouper binaries, but it does need the grouper vendor tree to be present. See proprietary-files.txt and grouper-unique-blob-list.txt for suggestions and (mediocre) documentation. Download the grouper binaries for KitKat-4.4.4 from here:
Binaries for Nexus Devices
You probably don't need them all but I haven't really thought about which ones to leave out. Basically this is a set of archives that each contain one selfextracting script. If you all run them in the root directory of your cyanogenmod tree, you end up with a vendor tree for grouper. Next, go to the device/lenovo/kai tree and run the following:
Code:
$ ./setup-makefiles.sh
Code:
$ . build/envsetup.sh && brunch cm_kai-userdebug
Thanks to cyanogenmod for a great rom and to all those real devs writing compatibility patches!
Finally, a few keywords so that this post at least can be found from Google:
Custom Rom, Lenovo IdeaTab A2109, Android KitKat 4.4.4, Cyanogenmod 11
Last edited: