[ThinkTank] CyanogenMod for CMP741e

Dee_V3

Member
Feb 17, 2013
2
0
The only problem I've just found is that the system partition is full I have to investigate that but all the hardware does work.

Move busybox(fix permission if using file explorer) using ADB and it should fix it.

Open ADB and use these commands:

adb shell
su
ln -s /system/xbin/busybox /system/bin/busybox
 

spock1104

Member
Feb 9, 2013
22
10
I made a little more progress with the driver, found that the problem looks like it's actually caused by the bitshift. I replaced it and it seems to follow my finger, but now the first 50 pixels don't register touch. I don't get a lot of time to look at this, so maybe someone else can. I'm attaching a compatibility zip with my test configuration, and my modified source code. Use this with [rom] CyanogenMod 10 - git myfluxi - SlateDroid.com

For recovery, CWM Recovery 6.0.1.2 for Allwinner A10 LY-F1/TREQ Tablets - xda-developers has been working well for me. I highly recommend you backup first! For the more advanced users, version 6 brings two backup options, and the default is a format that will diff between the last time you back up and the current. It'll probably be useful for dev purposes to switch to the "tar" method, which is the old one and will dump all the files in a useable/recoverable/tweakable format.

Sound seems to work fine, rotation and camera not working. I wanted to get the touchscreen going (i.e. usable tablet) before I worked on those. I've been using the "show touches" and "pointer location" options in the developer options to troubleshoot the touchscreen. I have not modified the tablet to boot the touchscreen on startup, so through adb you will have to insmod /system/lib/modules/gt811_ts.ko This was done on purpose as I've experieced the occasional lockup with the driver loaded.

Also the usual disclaimer anyone places with these, I make no guarantees that this won't break your tablet, kill your pet, bring about the reckoning, etc.

DO NOT TRY THIS IF YOU DO NOT HAVE A GT811 TOUCHSCREEN. If you're unsure, from a terminal on the tablet run lsmod.

Anyone looking at my source code, you'll also find that I swapped the input_x and input_y. I got sick of the driver considering x to be vertical and y to be horizontal.

View attachment $cmp741e_3_0_50_compatibility_alpha_1.zip

View attachment $gt811_modified_source.zip

One last warning, I tried using agk4444's port and my screen is getting picked up by goodix_touch.ko instead of gt811.ko. If I try to load gt811.ko I get a ctp error. This would suggest I'm still running the script.bin from my compatibility, so I highly recommend you back up your original! http://elinux.org/Hack_A10_devices Otherwise the nanda backup that mastermind278 has may work.
 
Last edited:

spock1104

Member
Feb 9, 2013
22
10
I'm afraid my development may have halted, at least for a while. I created and flashed a bad image and couldn't get back to recovery. Flashed gooseberry and then to agk4444's cm9, but now my internal sd is corrupt and the tablet thinks it only has 306mb ram. I need to find or create a compatible phoenixcard img to get going again.
 
Last edited:

spock1104

Member
Feb 9, 2013
22
10
Definitely don't make my mistake and use gooseberry unless you want to set yourself up for a headache.

Standard /dev/block:
/dev/block # ls
ls
loop0 loop2 loop4 loop6 nanda nandc nande nandg nandi ram1
loop1 loop3 loop5 loop7 nandb nandd nandf nandh ram0 zram0

/dev/block after flashing gooseberry:
loop0 loop4 mmcblk0 nandc nandg platform
loop1 loop5 mmcblk0p1 nandd nandh ram0
loop2 loop6 nanda nande nandi ram1
loop3 loop7 nandb nandf nandj zram0


emmc got moved from nandi to nandj, which doesn't play nice with these tablets.


EDIT/UPDATE: Problem resolved, created semi-working phoenixcard image, will update later with results.
 
Last edited:

spock1104

Member
Feb 9, 2013
22
10
So first off, let me stress that if you have the GT811 tablet and end up stuck, do not use the Craig image and also do not use an image designed for another tablet. Because hardware configurations vary, you can severely mess the tablet up (as I experienced first hand).

Instead, I bring you a Phoenixcard/Livesuit image that fully boots! I'm not sure if you'll have your touchscreen or not, I've made the necessary modifications but I restored my tablet before I added the driver to the package. CMP741E_GT811.img

I have also added CWM 6.0.1.2 and reboot-recovery.sh (source http://forum.xda-developers.com/showthread.php?t=1802268), so although it is mostly stock you do not have stock recovery. This is so that if a mistake occurs in development (like I made, oops) one can flash this and then immediately switch to whatever they want to use. After boot, all you should need to do is go to a terminal and type 'sh reboot-recovery.sh'

This is assembled using mastermind278's boot.img and bootloader.img dumps, they are what was "different" between the two variants that caused the tablet to freeze on boot.

And without further ado, a how to guide on replicating these results:
1. Get a base image. I based this on the zet6221 image available on Craig's website Craig Electronics Inc. but my image will also work as a base, depending on which version of the tablet you want to build for.
2. Extract the image. I used LiveSuit images - linux-sunxi as my guide using RedScorpio.
3. Optional: Copy the folder to a new one, maintaining .img.dump as the end of the name
4. Optional depending on what you're doing, but I replaced boot.fex and bootloader.fex with mastermind278's image files. They also need to be copied to _iso/*.fex.iso, and I confirmed they're binary copies.
5. The fex files are sparsed ext4 and can be converted to full ext4 and edited based on the steps in Slidepad 704ce - Cook your own ROM
6. Copy the generated fex files back to your dump folder and in the _iso folder.
7. Run RedScorpio on the dump folder to generate a new img
8. You now have a custom image usable with Phoenixcard and Livesuit!


As an aside, I'm definitely looking forward to getting CM10 working with a new kernel. I'm running agk4444/Christian Troy's CM9 again, and noticed that 1. PPI higher than 128 isn't supported without going into phablet mode. and 2. Google Chrome still crashes. Other than that, I switched the governor to fantasy and it overall it runs nicely.
 
Last edited:

spock1104

Member
Feb 9, 2013
22
10
I have a new theory on what is going on with the attempts to compile the gt811 driver and have semi-confirmed it. There's an array (config_info) that is written to the screen controller on initialization. The source code contains three different arrays. I tried all three and the behavior changed around for each of them, but none of them were correct. If anyone can find a way to get the config_info that is being written by the stock driver I may be able to finally crack this, as right now I'm at a loss.
 

highroller

Member
Jan 11, 2013
16
0
How is your progress on cm10 for cmp741e? Did you fix those problems you mentioned?

This is modified version of Christian Troy Unofficial CM10
Don't use this if you don't know how to restore you Tablet.
Thanks to Christian Troy
I just grabbed his Cm10 flashable zip and replaced it with boot.img-kernal from mastermind dump.

This worked on my tablet that has gt811 LCD. It will only work on tablet that has gt811.

https://www.dropbox.com/s/o4wapzxjgj9dkhs/cm10_a10_20130212-signed.zip

Things that don't work yet
1. NO AUDIO
2. Looks Like HW video doesn't work Yet
3. Camera doesn't work yet. Looking to edit Camera.cfg in etc section.

Any ideas to fix those will be appreciated.
Thanks to Mastermind for the dump
 

spock1104

Member
Feb 9, 2013
22
10
My theory on how the driver works checked out. I don't know why I missed it after several passes but I finally found our config data in the stock driver with a hex editor. For anyone else that happens across this needing to get their device config from a stock gt811 driver, the sequence always starts with 06 a2, ends with 01, and is 106 bytes long.

I also got drivers for the dmard06 (g-sensor) and gc0329 (camera) to compile but neither seem to be working quite right. Not sure what's up with the dmard06 yet, but in the case of gc0329, /dev/video0 isn't getting created.

So, if you're okay with using CM10 without camera and rotation for now, give this a try! Even better, please have a look at the camera and/or g-sensor and see if I did anything wrong and/or if you can get it working. Sound and touch are both working. Chrome still crashes, but the stock browser is now usable. Opera now screams. YouTube is playing HQ. Trebuchet launcher is still terrible, I recommend using Nova Launcher. Best of all: the tablet will think it is a Nexus 7.

Usual disclaimer - I'm not responsible if you break anything, but sincerely hope you don't!

First install myfluxi/PJotr25 CM10 , then cmp741e_3_0_50_compatibility_alpha_2.zip, and lastly (optional) 4.1.2 gapps

Let me know how it goes!
 
Last edited:

spock1104

Member
Feb 9, 2013
22
10
I may have gotten the gsensor working. Android HAL is a pain... I'll see what I can do about releasing an alpha3 compatibility tomorrow. All that's left is the camera?

*edit* here it is: cmp741e_3_0_50_compatibility_alpha_3.zip

the dmard06 would seem to be a clone of the bma250, a straight copy of the driver source works with simply modifying the expected device id in response to the i2c probe. If I wanted to really get this working I'd have to compile a full rom, the HAL is hard coded to expect certain devices. Maybe I'll get there eventually, but for now I took the same approach the manufacturer did and made it look like a bma250.

The camera driver included will in fact create a /dev/video0 if it is loaded on startup (i renamed it to gc0308.ko on my tablet), but unless you're helping me troubleshoot I don't recommend doing so. The camera app only shows a blank screen, and i2c gets messed with in a way that makes rotation not work and prevents the tablet from sleeping.

If you're not interested in the camera, then by all means enjoy!
 
Last edited:

spock1104

Member
Feb 9, 2013
22
10
A gent going by the handle of ugers has compiled CM10.1. It's not absolutely stable, some menus within settings crash on me, but overall it's performing nicely.

3.0.50 kernel available at 4.2 for Allwinner - SlateDroid.com - Page 9
confirmed working with previously posted 3.0.50 compatibility

3.0.62 kernel available at 4.2 for Allwinner - SlateDroid.com - Page 10
confirmed working with cmp741e_3_0_62_compatibility_alpha_1.zip

Still no camera, for now. However, chrome no longer crashes, and seems to run decently.
 

zacanger

Senior Member
Aug 20, 2013
11
1
Hey folks, I'm new to this forum, only discovered it because I was looking at buying a cheap tab and I always check whether there's a verified root method and a port or official CM for any Android device I buy. I am an active member of AndroidForums and Rootzwiki and a lurker of several years on XDA, though. I recently bought the zet6221 version (which, curiously enough, came rooted, with SU and busybox, according to RootCheck), and have been trying some of the CM9 Roms from the tutorial thread (haven't tried the CM10 yet).

Basically I wanted to just say hi, and I'm totally up for testing anything and reporting errors/issues/whatever. For $50 used, this tablet's pretty okay already, but if CM10 can be run reliably and with all functionality, that'd be awesome.
 

Padhula

Member
Nov 27, 2013
1
0
I meant eventually :)
11.jpg
 
Top