[Q] Compile CM9 help - Xperia Play Q&A, Help & Troubleshooting

After following this tutorial I compiled CM9 for my r800x and everything works fine but since I first compiled I have edited the SystemUI sources. The problem is when I compile it doesn't compile the new sources. Anyone know what I'm doing wrong? Sorry if this is a noob question.
Extra information (not sure if important but might help find the cause):
Using Xubuntu 12.10
Oracle Java 6
I edited /frameworks/base/packages/SystemUI
I compiled for zeusc instead of zeus

What more specifically did you modify? Not sure why it would not rebuild, unless there's some kind of issue with the timestamps or your system clock. (It knows to rebuild if the source files have a newer timestamp than the compiled files they produced)
You can always just do a clean build. You can even just change the output directory without messing up your current build:
http://source.android.com/source/initializing.html said:
export OUT_DIR_COMMON_BASE=<path-to-your-out-directory>
Click to expand...
Click to collapse
You can set that to a different directory and it will build it all over again, putting all the output in that directory instead. With this different, it won't affect the output of your current build and you can always clear this variable to go back. Then you can use this for comparison. Alternatively you can just wipe out your output directory and build it over. You may also be able to dig into your output directory and delete the compiled files for the sources you have modified and then it should definitely notice and rebuild those.
EDIT: Also note that there are build instructions on the CyanogenMod wiki: http://wiki.cyanogenmod.org/w/Build_for_zeus
On the repo init line you can also say '-b jellybean' instead of ics and it will build CM10 (which is pretty good too but not fully stable, it's CM10.1 that is more unstable)
I also noticed that in the 'stable' release of CM9 for zeus the proximity sensor does not work, but there are patches for it in the repo and I've built from source with CM10 and it works fine.
~Troop

Trooper_Max said:
What more specifically did you modify? Not sure why it would not rebuild, unless there's some kind of issue with the timestamps or your system clock. (It knows to rebuild if the source files have a newer timestamp than the compiled files they produced)
You can always just do a clean build. You can even just change the output directory without messing up your current build:
You can set that to a different directory and it will build it all over again, putting all the output in that directory instead. With this different, it won't affect the output of your current build and you can always clear this variable to go back. Then you can use this for comparison. Alternatively you can just wipe out your output directory and build it over. You may also be able to dig into your output directory and delete the compiled files for the sources you have modified and then it should definitely notice and rebuild those.
EDIT: Also note that there are build instructions on the CyanogenMod wiki: http://wiki.cyanogenmod.org/w/Build_for_zeus
On the repo init line you can also say '-b jellybean' instead of ics and it will build CM10 (which is pretty good too but not fully stable, it's CM10.1 that is more unstable)
I also noticed that in the 'stable' release of CM9 for zeus the proximity sensor does not work, but there are patches for it in the repo and I've built from source with CM10 and it works fine.
~Troop
Click to expand...
Click to collapse
Never even thought about changing the location it is output to or anything like that. Kinda feel dumb not trying that but I will soon. Also I've looked at CyanogenMod's wiki already. And is CM 10 working on zeusc? I thought it was still only zeus but I haven't checked in a while.

bandoncontortion said:
Never even thought about changing the location it is output to or anything like that. Kinda feel dumb not trying that but I will soon. Also I've looked at CyanogenMod's wiki already. And is CM 10 working on zeusc? I thought it was still only zeus but I haven't checked in a while.
Click to expand...
Click to collapse
Cj360 made a zeusc version and uploaded it to fxp cm10 page. I've tested it and it works great
Sent from my Xperia Play (r800x)

Also all I did to SystemUI was add one .java file. I didn't know zeusc had cm 10. I'll check it out.

bandoncontortion said:
Also all I did to SystemUI was add one .java file. I didn't know zeusc had cm 10. I'll check it out.
Click to expand...
Click to collapse
Make sure the timestamp of the file you added is newer than the time you built. Otherwise, make will not realize there is a new file. Seems like you must have modified some other source file though to make use of the new source file.
A simple way to update the timestamp of a file is the "touch" command. If you touch a file before your build, it should always rebuild that file unless you have more serious problems.
Also, I forgot about the zeusc not being as well supported... so hopefully all the fixes for CM10 on the zeusc are in the repositories.
I do like CM10 better than CM9... especially since I figure if we're going to ditch stock-based GB, there's even less reason to live in the past.
~Troop

Changing the timestamp didn't do anything. I'll try deleting the already compiled files and recompile everything over again tomorrow. Also CM10 is a lot better in my opinion too so I'll try it now so hopefully it'll work and fix the problems I'm having.

Trooper_Max said:
Make sure the timestamp of the file you added is newer than the time you built. Otherwise, make will not realize there is a new file. Seems like you must have modified some other source file though to make use of the new source file.
A simple way to update the timestamp of a file is the "touch" command. If you touch a file before your build, it should always rebuild that file unless you have more serious problems.
Also, I forgot about the zeusc not being as well supported... so hopefully all the fixes for CM10 on the zeusc are in the repositories.
I do like CM10 better than CM9... especially since I figure if we're going to ditch stock-based GB, there's even less reason to live in the past.
~Troop
Click to expand...
Click to collapse
CM10 works good on zeusc. Haven't found any bugs and I added the changes to it's SystemUI and it compiled it for me and works great. Thanks for the help!

Related

[Q] Google goggles ipv6

Hi all,
I have Fat Free Froyo installed with the latest 14th Jan 2011 kernel voguimg-240x320-2.6.32-froyo-14-01-11_14.nbh edited to froyo & panel type 2 from t029000.massey.ac.nz but Google Goggles needs ipv6 support.
Is this a kernel problem or a problem with the build itself? I am experienced in linux, so can modprobe or insmod the ipv6.ko but I don't know where to get it from
Any help would be appreciated!
(message for kernel's developers) take this man! he can dev ipv6!
Jumping the gun there a bit
I triage bugs and work on stuff for Ubuntu. Have also ported a few linux bits to ppc64 (PlayStation 3).
I'm pinching the ipv6.ko from slayhers latest kernel build, hopefully that will work insmod-ding or modprobing it into the kernel thru the terminal on the Kaiser itself.
So, fingers crossed, this may be solved in 5 minutes!!
Didn't work, it must be compiled for a different platform...
Anyone have or know where to get a kernel for the Kaiser with ipv6 support, or failing that the correctly built ipv6.ko for the Kaiser so that it can be insmodded?
Getting it compiled in the kernel is the easy bit, although it does use up a lot of space which is limited in the kaiser's kernel so a little tweaking is needed. Getting it to work with the Kaiser's modem and the builds we currently use is a different matter unfortunately. It will take a bit of modding for it to work but it's more then achievable with a bit of free time. Wish i could buy that stuff!!If i get a chance i will get you the ipv6 module for the kaiser's kernel or a kernel with support for it so you can have a play.
I definitely look forward to it! If I knew how and what to modify I'd do it myself, but I thought arch-specific kernels had to be compiled on the arch itself? If that's the case, I can see how free time would be needed, it'd take hours or days to compile the linux kernel at 400MHz
I have compiled kernels before so if/when I learn how to do it myself, I could start to use my own git repo for more recent daily builds or something.
I'm also thinking about starting working on some *buntu stuff (I know Ubuntu is there for the Kaiser, but soem tweaks would help if I get a chance.)
Hmm, a little Googling goes a long way http://www.androidonhtc.com/wiki/Get_Involved << was hard to find that,so hopefully I can add ipv6 somewhere in the 'make menuconfig' options for the kernel.
Are the standard kernel options used by "make vogue_defconfig" ok to use, i.e. will it build a normal useable kernel so that everything works?
xteejx said:
Hmm, a little Googling goes a long way http://www.androidonhtc.com/wiki/Get_Involved << was hard to find that,so hopefully I can add ipv6 somewhere in the 'make menuconfig' options for the kernel.
Are the standard kernel options used by "make vogue_defconfig" ok to use, i.e. will it build a normal useable kernel so that everything works?
Click to expand...
Click to collapse
Yes, that is th correct make file to use. I have built the kernel with IPV6 support, haven't tested it but have attached the module to the post for you to try
Brilliant! I'll try it sometime within the next couple of days, although I might myself be working on a blazing fast kernel specifically for the HTC Kaiser, and it is SERIOUSLY!!!! fast, even at 400MHz I can notice a massive increase in speed with the exact same build, but I haven't economised too much.
I can see the the options for ipv6 in the ncurses menuconfig, so I guess it's just a case of enabling it and building the zImage right?
I seem to be having the old problem with the wifi though, and I know it's kernel related, but there are only patches for it, i.e. the wlan.ko, but can't see how to implement it myself so it's an all-in-one solution
When I get the hang of the Kaiser hardware properly, I might just push through a newer kernel from the armlinux site so watch this space
xteejx said:
I might myself be working on a blazing fast kernel specifically for the HTC Kaiser, and it is SERIOUSLY!!!! fast, even at 400MHz I can notice a massive increase in speed with the exact same build
Click to expand...
Click to collapse
How have you managed that??? What have you done?
I have no idea how it happened, perhaps the other devs add a load of useless options, but all I did was follow the instructions at that link above and compiled a zImage from the 2.6.32 arm branch, using the 2010 arm tools. Used NBHeditor to edit it for Kaiser, panel 2, froyo, flashed it and bang (not literally thank god).
I can't answer any better than that. I used the default options (for now at least) that the vogue build script uses for the kernel, but bluetooth, camera and gps work. No internet connection as yet either through the network or wifi, dumno what I've missed there, and no ipv6 (but can add that easily enough). Wifi doesn't work either, but I'm working on it, although that MAY be the reason why it's so fast...maybe it's missing a few options...still unsure at this point.
I notice that although this is an open community, and people attach NBHs, there are no changelogs or anything showing what the people have done with the kernel to implement some options, so it's kinda holding me back at the minute.
xteejx said:
I notice that although this is an open community, and people attach NBHs, there are no changelogs or anything showing what the people have done with the kernel to implement some options, so it's kinda holding me back at the minute.
Click to expand...
Click to collapse
That isn't true, all tested changes are pushed to git, you can see what has been changed and how from here: http://androidhtc.git.sourceforge.n....git;a=shortlog;h=refs/heads/htc-vogue-2.6.32
*facepalm!*
Didn't see that, will bookmark it and keep an eye on it, perhaps work with it. Thanks for the link
the androidhtc.com site is not related directly to the develop project because no developer is connected to it. Also the git repository it not hosted in linux to go but on sourceforge (so download the correct git). That site is very outdated.
wifi works if you use the correct branch (on sourceforge) and modules.
Am I right in thinking that http://androidhtc.git.sourceforge.n...7c0bf5edc4f5c6d64ce4df29254e8332ce26b;hb=HEAD is the prebuilt kernels and nbhs from the source at http://androidhtc.git.sourceforge.n...og;h=62f075ddd13f378fd252be94c77e4f93d12584fb ??
I think I'm looking at the right tree now.
Flashing the latest NBH: VOGUIMG-320-FROYO-01-16-11.NBH still gives me the wifi error. Do I need to manually add the wlan.ko to it or ??
I could've sworn that an NBH I flashed before had all that in the NBH and it worked fine.
Ok, got it back to how I had it:
Flashed latest.NBH from http://androidhtc.git.sourceforge.n...7c0bf5edc4f5c6d64ce4df29254e8332ce26b;hb=HEAD and dropped androidupdate.tgz to the /andboot folder of the SD card, installed update thru the boot menu and done.
So in reality there's nothing stopping me grabbing the same kernel source, building it and adding ipv6 support in the ncurses kernel config menu and making an NBH from it and flashing that over, and then doing the androidupdate.tgz, although I think with HTCFlasherGUI you can flash a zImage directly right??
Is there something wrong with the git at http://androidhtc.git.sourceforge.net/git/gitweb.cgi?p=androidhtc/kernel.git;a=summary I can't get access, it's showing old stuff. It looks closed since git clone rejects me
xteejx said:
Is there something wrong with the git at http://androidhtc.git.sourceforge.net/git/gitweb.cgi?p=androidhtc/kernel.git;a=summary I can't get access, it's showing old stuff. It looks closed since git clone rejects me
Click to expand...
Click to collapse
No, nothing wrong with it. Just do:
git clone git://androidhtc.git.sourceforge.net/androidhtc/kernel.git
You then need to set it to the correct branch using 'git checkout -b <branch you want> '
It's the 2.6.32 branch you are interested in, you can find out exactly what it's called using 'git branch -a' which will list the available branches.
Cool. Knew something went wrong somewhere, had to be me lol!
I added that ipv6.ko to the NAND via a androidupdate.tgz (only way I could do it), and it didn't work, something about incorrect module format (or something like that).
Are there any prebuilt kernels or NBHs for the Kaiser that include ipv6? Either as a module that I can insmod it in the terminal or built-in?
I hate being upstaged by people that can use Goggles without any problems.
I know slayher's kernels have ipv6, but I flashed the new stock one from http://forum.cyanogenmod.com/topic/4434-froyo-kernels-by-slayher/ and it didn't work. I mean the kernel did, but Goggles didn't - couldn't insmod it either - same invalid module format as the ipv6.ko scooter did for me
Also the git clone didn't work:
Initialized empty Git repository in /home/name/android-git/kernel/.git/
fatal: The remote end hung up unexpectedly

Camera not working on 4.1.1. AOSP VZW full_toro ROM

Please accept my apologies if this has been answered before. I did a search and did not find a similar problem. I am a noob and will read any guide or how to that you refer me to in order to learn how to get better. I am new to Ubuntu/Linux and terminal but if you point me in the right direction I can probably figure it out. I will try to provide as much detail as possible.
I have recently built a Jelly Bean AOSP ROM following this XDA Guide.
I am using Ubuntu 10.04 LTS x64.
repo synced with this branch
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.1.1_r3
which is build JRO03H
I downloaded and extracted the binaries on the Nexus Binairies page. I did notice that prior to building that unlike the ICS branches the JB device/samsung/toro folders do not have a extract-files.sh file
I made an otapackage using the full_toro-userdebug command.
I flashed the rom using ClockworkMod 6.0.1.0. I did a factory reset and wiped the cache prior to flashing. I also installed gapps-jb-20120726. Everything booted up fine and for the most part everything works except for the camera app. When I press the camera button I receive a message that says "Unfortunately, Gallery has stopped working." Or I get a black screen and nothing happens then I'm back in the app drawer. I have tried fixing the permissions and that did not fix the problem.
Can you explain to me what I need to do to get my camera and gallery app working? This is the only issue I have with my rom thus far. Do I need to extract the camera binary some how?
The camera and everything works fine my AOSP IMM76L build but not with my JB Build.
I have flashed other roms such Peter Alfonso's JB rom and his camera works fine, so any directions or links would be greatly appreciated.
Seeing the same.
I have this same JRO03H build (except I use CentOS 6.3 to compile AOSP 4.1.1_r3) with the EXACT same issue you describe. When the camera applet is selected it complains "Unfortunately, Gallery has stopped". Everything else in the build (24hours+ fresh) appears okay so far.
I fixed it.
I figured out the problem and was able to get the camera and everything to work. I did a couple of searches on Google and came across a thread from Android Central. I cant post the link since I have less than 10 post, but pm and I will send it to you.
We are still missing some proprietary files. Namely 6. The camera is named ducati or something and you have to either get it from another rom or extract it from ICS. I personally used Peter Alfonso's github for Jelly Bean and compared his vendor folder to mine and copied lines from his make files. Took me a couple of hours of comparing every file to realize that you need to focus on vendor some other files in core folder.
You can get his github information from his webpage and also look inside his OTA compared to your OTA to make it work. Also if you want to use Google Wallet you are going to have to edit your build.prop file in your OTA to make it not say full_toro use the 4.0.4 release keys.
I'm not at my testbox to walkthrough the steps but that's what I did. But sure to backup your source folder before you start tweaking, Came in handy twice before I got it right.
Hope that helps. Good luck.
could you please share your Rom? I also have the same issue. but still not fix it.
paternal_techie said:
I figured out the problem and was able to get the camera and everything to work. I did a couple of searches on Google and came across a thread from Android Central. I cant post the link since I have less than 10 post, but pm and I will send it to you.
We are still missing some proprietary files. Namely 6. The camera is named ducati or something and you have to either get it from another rom or extract it from ICS. I personally used Peter Alfonso's github for Jelly Bean and compared his vendor folder to mine and copied lines from his make files. Took me a couple of hours of comparing every file to realize that you need to focus on vendor some other files in core folder.
You can get his github information from his webpage and also look inside his OTA compared to your OTA to make it work. Also if you want to use Google Wallet you are going to have to edit your build.prop file in your OTA to make it not say full_toro use the 4.0.4 release keys.
I'm not at my testbox to walkthrough the steps but that's what I did. But sure to backup your source folder before you start tweaking, Came in handy twice before I got it right.
Hope that helps. Good luck.
Click to expand...
Click to collapse
wangyu7988 said:
could you please share your Rom? I also have the same issue. but still not fix it.
Click to expand...
Click to collapse
I am uploading to mediafire as I don't think I have a high enough post count to post the rom here.

[MOD] NFC with Screen Locked/Off CM10, 10.1 & 10.2

I haven't posted enough on XDA to be able to reply to the appropriate development forum post, so I decided to post here. I'm running CM10 on a Sprint Galaxy Nexus (toroplus), and I had been in need of a way to use NFC while the screen was locked, but couldn't find one for the latest build of CM10. I found this thread http://forum.xda-developers.com/showthread.php?t=1709586 but the latest updates only had one for screen off (which is a little less secure IMHO), and when I used it, I would have to turn NFC off and then back on almost every time I used it, which defeated the purpose. I also saw that someone else was having the same issue, so I decided to compile one myself using the latest CM10 source. This was built from source as of 10/31/2012 and has only been tested on the nightly build with the same date. I figured I'd share it with everyone that might be needing the same.
Disclaimers: This requires a rooted phone! This has only been tested on the Sprint Galaxy Nexus running CM10 nightly dated 10/31/2012, but may work with other versions. Do a backup! I'm not responsible for any problems resulting from these files, so backup first!
To install, copy to your SD card. Reboot into recovery. DO A BACKUP! Install the zip from the SD Card. Reboot.
There are two versions I created. One is for when the screen is on, but locked. The other is for when the screen is off.
Update 1/2/2013:
I compiled a version of the screen locked for CM10.1 (Android v4.2.1) for anyone who would like it. I was getting mixed results with the previous file on 10.1. This one is working on my toroplus with the latest CM10.1 nightly. I'll build a screen off version later. I was having some problems with my build VM, so I didn't get to it yet. The new file for CM10.1 is called NFC_Screen_Locked_CM10.1.zip.
Update 1/3/2013:
The CM10.1 version of the screen off version is now posted. File name is NFC_Screen_Off_CM10.1.zip
Update 1/16/2013:
Previous version of NFC_Screen_Off_CM10.1.zip was not working. Should be working now.
Update 1/16/2013:
Added a patch that can be used against CM10 or 10.1 source code to add an option to the settings to switch between screen on, locked, or off NFC. You must build the entire thing from scratch to use this patch. There are logs of guides for building CM. Here's a link to the CM wiki article for toroplus for example. Before executing brunch, copy this file to the root of where you created the repo (the article uses the ~/android/system/ folder for instance) then execute the following two commands:
Code:
tar -xzf nfc-patch.tar.gz
./apply-nfc-patch.sh
Or in the use package manager to untar all of the files (maintaining the directory structure) and then double click and run the apply-nfc-patch.sh file. This will patch all of the necessary files in the build. Then continue with the instructions in the build guide and flash the resulting ROM.
Disclaimer Again: This could break your phone. I'm not responsible for any damages this may cause. This has only been briefly tested on my toroplus with the latest CM10.1 code from the repository.
Credits: Rick C who originally submitted most of this to the CM repository but was rejected.
Update 1/21/2013:
Looks like a recent commit to the repository broke one of the diffs in the patch. Uploaded a new version.
Update 2/13/2013:
Another update to fix an issue with the patch files. I also added a reset script that will do a hard reset for git repos of the affected packages. Don't use this script if you have made any other customizations to the Settings app, NFC app or the frameworks/base code as you will lose them. Just do things in this order:
1) run reset script
2) run repo sync
3) extract tar again
4) run apply script
5) run brunch again
You can use this sequence every time you want to grab the latest code.
If you get errors when running the apply script you can use this command to delete the error files that come up. These files might show up even if the patch works, but the code wasn't exactly what the patch was expecting, but enough to apply anyway.
Code:
find . \( -name \*.orig -o -name \*.rej \) -delete
This set of commands should do the trick for most people to get the latest code, apply the patch and build:
Code:
./reset-nfc-patch-repos.sh
repo sync
tar -xzf nfc-patch.tar.gz
./apply-nfc-patch.sh
source build/envsetup.sh && brunch <your-device-name>
Update 2/27/2013:
Made some fixes to the notes in the previous update based on feedback from mrplowdan.
Update 3/15/2013:
Compiled a new version of the CM10.1 files for those having issues.
Update 10/21/2013:
Added a test version of the screen locked version for CM10.2 now that toroplus has an official CM10.2 nightly. Let me know if there are any issues. I'll add a screen off version when I have some time.
Update 11/19/2013:
Finally getting around to adding a screen off version for CM10.2. The screen locked version has been running well on my toroplus for the last month with no issues.
Has anyone tested this on Maguro?
Just recently got my phone back from service (after 10 weeks) so i'm not re-rooted yet, hence i can not try this on stock myself. Just wanted to give a big thanks to you for creating and developing this this is really a truly great way to make use of the nfc and the way it should have been done from the very beginning. I.ex if your out running, listening to music and for some reason need to pause your music, just swipe a previosly attached nfc-tag on your sleve over your pocket with the phone in. And again to start music. Awsome work, thank you!
Sent from my Galaxy Nexus using xda premium
It may work on Maguro as long as you're using a fairly recent version of CM10. If I knew anyone with a device, I'd test it myself. It's fairly low risk to test. It only replaces a single file. It's the Nfc.apk in the /system/app/ folder. You could always rename your existing file; install this one; and then reboot and test it out. Also, if you're wary of the zip itself, you can just extract the Nfc.apk and copy it to your /system/app/ folder manually, just don't forget to reboot. Then if it breaks you can just delete the new one and rename the old one back. You could also just backup everything; install the zip; and just restore the backup if anything breaks. Anyway if you decide to be adventurous, let us know how it goes. I'll keep this thread updated if CM makes any other changes that break it again. I use it often, so I'll likely find out pretty quickly. Hopefully, they'll add this as a setting in CM10 some day.
Sent from my Galaxy Nexus using xda app-developers app
could i use it on every rom cm based?
It depends on how many modifications were made by the mod around NFC, if any. Also depends on when the last time was that they merged their code with CM. In theory it should work with most CM based mods. You can always try it out as I mentioned above and revert if it breaks. And post here with your results if you try it, so others can benefit.
Sent from my Galaxy Nexus using xda app-developers app
Locked version tried and working maguro. I'm on latest Jellybro. Good work and thanks
Sent from my Galaxy Nexus using xda premium
CM10.1 Update
I compiled a version of the screen locked for CM10.1 (Android v4.2.1) for anyone who would like it. I was getting mixed results with the previous file on 10.1. This one is working on my toroplus with the latest CM10.1 nightly. I'll build a screen off version later. I was having some problems with my build VM, so I didn't get to it yet. The new file for CM10.1 is called NFC_Screen_Locked_CM10.1.zip.
irotsoma said:
I compiled a version of the screen locked for CM10.1 (Android v4.2.1) for anyone who would like it. I was getting mixed results with the previous file on 10.1. This one is working on my toroplus with the latest CM10.1 nightly. I'll build a screen off version later. I was having some problems with my build VM, so I didn't get to it yet. The new file for CM10.1 is called NFC_Screen_Locked_CM10.1.zip.
Click to expand...
Click to collapse
Great work! - many thanks from me!
I'm waiting so long for the Screen-Locked Version ...
Best regards
JoSch
can it be included in cm10.1?
I was just wondering, can't this be somehow merged with stock cm10.1? Add checkboxes in the settings.apk, lots of warnings when enabling it and people who know can use it.
nice work btw
Screen Off for CM10.1
The CM10.1 version of the screen off version is now posted. File name is NFC_Screen_Off_CM10.1.zip
cthulu said:
I was just wondering, can't this be somehow merged with stock cm10.1? Add checkboxes in the settings.apk, lots of warnings when enabling it and people who know can use it.
nice work btw
Click to expand...
Click to collapse
Yes, actually I've been wanting to do this for a while, but I never seem to have the time to dig into the settings UI and how to read that setting. If you or someone else would be willing to create the settings piece and tell me how to access the setting that you create, I'd be happy to alter the NFC service to look at those settings. Ideally there should be a preference with an integer value of 1 for screen off, 2 for screen on but locked, and 3 for screen on and unlocked (default) as that's the value that the service expects currently.
First of all i would like to thank you posting this, just what I was looking for.
Im running one of the latest cm10.1 nightlies (jan 1st or 2nd) and flashed the NFC_Screen_off_CM10.1zip however it doesn't work while the screen is off, though it does work when the screen is on and the phone is locked. I have a Galaxy Nexus (gsm).
When I logcat the phone I don't see NFC being discovered with the screen of but with the screen on and the phone locked I do see that it discovers an NFC event.
Is there anything that can be done about this?
Thanks!
dannyvanderzande said:
First of all i would like to thank you ting this, just what I was looking for.
Im running one of the latest cm10.1 nightlies (jan 1st or 2nd) and flashed the NFC_Screen_off_CM10.1zip however it doesn't work while the screen is off, though it does work when the screen is on and the phone is locked. I have a Galaxy Nexus (gsm).
When I logcat the phone I don't see NFC being discovered with the screen of but with the screen on and the phone locked I do see that it discovers an NFC event.
Is there anything that can be done about this?
Thanks!
Click to expand...
Click to collapse
That's odd. I didn't have an NFC tag handy when I built the screen off version, so I assumed the same changes I made in CM10 would work in 10.1 since the screen locked version worked. I'll test it on my device and see if I can figure it out as soon as I get some free time. Thanks for letting me know!
irotsoma said:
That's odd. I didn't have an NFC tag handy when I built the screen off version, so I assumed the same changes I made in CM10 would work in 10.1 since the screen locked version worked. I'll test it on my device and see if I can figure it out as soon as I get some free time. Thanks for letting me know!
Click to expand...
Click to collapse
I decided to check the files out myself to try and figure it out and maybe quick fix it myself (which would have saved you the time) by referencing to the 10.0 apk's however I found out they differ a lot more from eachother than I expected so it was a bit too much for my skillz. I found this out using a comparison tool and while I was at it I compared the 10.1 screen lock and 10.1 screen off versions. According to my program they are exactly identical in either file structure as in file contents so I'm guessing something must have gone wrong with renaming or I just don't know how to use the tool? I'm just mentioning this as something I came upon, not to ***** or anything! I really appreciate the work you did!
Anyway.. I had some fun figuring things out and learning about decoding apk's and all of that. Thanks for all the hard word so far and I'll just wait patiently upon the new screen-off version.
The screen off one works perfectly for the Toro running the last stable 4.1.2 liquid smooth rom. Awesome work, thanks a million!
Edit: I'm not sure if it makes a difference but I didn't flash it, I pulled the apk from the zip, copied and pasted and reset permissions then restarted.
Fixed CM10.1 Screen Off
irotsoma said:
That's odd. I didn't have an NFC tag handy when I built the screen off version, so I assumed the same changes I made in CM10 would work in 10.1 since the screen locked version worked. I'll test it on my device and see if I can figure it out as soon as I get some free time. Thanks for letting me know!
Click to expand...
Click to collapse
OK, so I uploaded a new version. I actually tested it this time and this one worked for me on my toroplus. Let me know if there are any other issues, but you should be good to go after flashing this one. Sorry it took so long to get around to it. Enjoy!
Settings Patch for CM Source Code
cthulu said:
I was just wondering, can't this be somehow merged with stock cm10.1? Add checkboxes in the settings.apk, lots of warnings when enabling it and people who know can use it.
nice work btw
Click to expand...
Click to collapse
I did a little digging and found that there was a patch submitted to CM10 to include a switch for this in the settings. However, it was rejected by Steve Kondik and abandoned. I took all of the code and merged it into the latest CM10.1 code and it seems to work. I added a patch to the main post, but you have to compile CM from scratch to use it since it touches some framework components. The good news is it should work on any device that CM supports (that uses the NFC.apk though not devices that use NfcNci.apk like the Nexus 4) and should work on both CM10 and 10.1 in most cases.
The patch is basically just a few diff files and a bash script to automate the patching. If anyone is feeling adventurous, feel free to experiment with it. I can't promise it will work for you, but it's fun to try and learn a bit about building CM source code in the process. Basic directions are in the original post. As always I take no responsibility for anything it might break, but I'll be happy to try to troubleshoot if I can. Enjoy!
Thanks for all your effort.
Unfortunately it doesn't work on the nexus 4 but after some googling I found a working version for the nexus 4 on the forums here on xda. Im guessing there's a difference in chips or something...
dannyvanderzande said:
Thanks for all your effort.
Unfortunately it doesn't work on the nexus 4 but after some googling I found a working version for the nexus 4 on the forums here on xda. Im guessing there's a difference in chips or something...
Click to expand...
Click to collapse
Thanks for pointing that out. I clarified the previous post a bit. I should have said it should work with any devices that use Nfc.apk. Newer devices that use NfcNci.apk will not work with the patch.

[Q] RIL Development sgh-t999

Hi everyone,
recently I have built and flashed on my sgh-t999 (galaxy S3 US tmobile version) CM11 Nightly. For my pro0ject however I need to modify two libraries of the Radio Interface Layer (RIL), libril.so and libreference-ril.so. I tried to modify the ones in the forlder /hardware/ril/ and build everything again with no results. Any change that I made to those files (such as ril.cpp in the folder libril) would not affect the functionality of the phone.
Finally yesterday I understood that when I build those libraries for the target cm-d2tmo-eng, those files that I have modified are not considered at all! When the libraries are built indeed, the system automatically takes the libril.so and libreference.so present in the vendor folder!
The problem is that those libraries in the vendor folder and already compiled and I cannot modify them. The question is:
Is there any way that I compile those libraries from the source code that I have modified?
Thanks,
brok85
Given that there is a unified D2LTE Build on CM, can you elaborate on what changes you wish to make to these libraries ?
To answer your question, You can do one of two things.
Grab the CM Source Code from the Device Tree of D2LTE. Make your relevant changes and check in the changes if they boot ok on your device. That way those changes will be included in future builds of CM and other Roms that use it.
If you do not wish to do so, then you will have to compile those libraries using C++ Compiler on a *NIX box and replace them in the Vendor folder.
Perseus71 said:
Given that there is a unified D2LTE Build on CM, can you elaborate on what changes you wish to make to these libraries ?
Click to expand...
Click to collapse
Well, as fisrt I just wanted to insert some log to be able to follow the code execution from the logcat or do something similar.
Perseus71 said:
To answer your question, You can do one of two things.
Grab the CM Source Code from the Device Tree of D2LTE. Make your relevant changes and check in the changes if they boot ok on your device. That way those changes will be included in future builds of CM and other Roms that use it.
Click to expand...
Click to collapse
Sorry but I am kind of new on this things. I have already downloaded the source code from the device tree and made my modifications in the files ril.cpp contained in [path-to-android-source]/hardware/ril/libril/ril.cpp. What I did was commenting the whole code within the function RIL_onUnsolicitedResponse() and listenCallback() such that in theory, the phone is not able to display incoming calls for example. However after flashing the re-built android I am still able to receve calls. How can I "check in the changes if they boot ok on my device"?
Perseus71 said:
If you do not wish to do so, then you will have to compile those libraries using C++ Compiler on a *NIX box and replace them in the Vendor folder.
Click to expand...
Click to collapse
I tried to remove the libril.so in the vendor folder and compile again using
# . build/envsetup.sh
# lunch (and select d2tmo)
# mmm [path-to-android-source]/hardware/ril/libril".
The problem is that when I indicate the target after lunch, the compiler looks for the vendor libraries and stop the build. What I am doing wrong?
Sounds like Compiler Dependacy path is set different from the code base. I will look further before commenting.
For when your changes are for the benefit of the community of users, you check in the changed code back to the Device Tree with detailed comments within the code and while checking in.
Perseus71 said:
Given that there is a unified D2LTE Build on CM, can you elaborate on what changes you wish to make to these libraries ?
To answer your question, You can do one of two things.
Grab the CM Source Code from the Device Tree of D2LTE. Make your relevant changes and check in the changes if they boot ok on your device. That way those changes will be included in future builds of CM and other Roms that use it.
If you do not wish to do so, then you will have to compile those libraries using C++ Compiler on a *NIX box and replace them in the Vendor folder.
Click to expand...
Click to collapse
Perseus71 said:
Sounds like Compiler Dependacy path is set different from the code base. I will look further before commenting.
For when your changes are for the benefit of the community of users, you check in the changed code back to the Device Tree with detailed comments within the code and while checking in.
Click to expand...
Click to collapse
Actually this is what I get after deleting
libril.so in vendor/samsung/d2tmo/proprietary/lib/
and after executing mmm /hardware/ril/libril :
No private recovery resources for TARGET_DEVICE d2tmo
make: *** No rule to make target `vendor/samsung/d2tmo/proprietary/lib/libril.so', needed by `/home/brok85/Documents/android/system/out/target/product/d2tmo/system/lib/libril.so'. Stop.
make: Leaving directory `/home/brok85/Documents/android/system'
If u want to build from source, delete the line that copies in vendor-blobs.mk
If u want to copy the blob instead of building it from source, keep the line
It'll be better if u provide us the device and vendor trees links
blackbeard said:
If u want to build from source, delete the line that copies in vendor-blobs.mk
If u want to copy the blob instead of building it from source, keep the line
It'll be better if u provide us the device and vendor trees links
Click to expand...
Click to collapse
I am not sure to understand what should I provide Sorry, as I said I'm kind of new here...
Also, I can not find vendor-blobs.mk...Where it should be?
brok85 said:
I am not sure to understand what should I provide Sorry, as I said I'm kind of new here...
Also, I can not find vendor-blobs.mk...Where it should be?
Click to expand...
Click to collapse
You said you built a cm11 for ur device. So for that you needed the device and the vendor trees. Give the link of those, if they are on the git
And vendor-blobs.mk would be present in the vendor folder under your device folder
blackbeard said:
You said you built a cm11 for ur device. So for that you needed the device and the vendor trees. Give the link of those, if they are on the git
Click to expand...
Click to collapse
Well I have followed the guide in the following page
http://wiki.cyanogenmod.org/w/Build_for_d2tmo
The link from where I have obtained the repository is
$ repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
and then
$ breakfast d2tmo
blackbeard said:
And vendor-blobs.mk would be present in the vendor folder under your device folder
Click to expand...
Click to collapse
Actually now I think I was able to compile the library following your instructions. Unfortunatly, when I have built and flashed everything in the galaxy S3, I was not able to use the network. Probably some compatibility issue?
When I compiled libril.so, I have obtained it from the folder /hardware/ril/libril which should contain google source code, maybe not compatibale with my device...is it right?
thanks a lot for the help guys
brok85 said:
Actually now I think I was able to compile the library following your instructions. Unfortunatly, when I have built and flashed everything in the galaxy S3, I was not able to use the network. Probably some compatibility issue?
When I compiled libril.so, I have obtained it from the folder /hardware/ril/libril which should contain google source code, maybe not compatibale with my device...is it right?
Click to expand...
Click to collapse
You know, silly question. But just so we can rule out. Did you at any point compiled the CM11 code as is and flashed to the phone ? How did Network behave ? Was everything ok ?
Galaxy S3 is a very open platform with standard hardware and chipsets. So the Default google code should work out of box with it. If you have network issues, then just for kicks you can flash a custom Kernel on top of your compiled CM 11. See how that goes.
Perseus71 said:
You know, silly question. But just so we can rule out. Did you at any point compiled the CM11 code as is and flashed to the phone ? How did Network behave ? Was everything ok ?
Click to expand...
Click to collapse
No silly question at all
I have compiled CM11 as it is and worked perfectly. I could use the network.
Perseus71 said:
Galaxy S3 is a very open platform with standard hardware and chipsets. So the Default google code should work out of box with it. If you have network issues, then just for kicks you can flash a custom Kernel on top of your compiled CM 11. See how that goes.
Click to expand...
Click to collapse
The procedure I have followed is the following one:
1) Delete the llibril.so and libreference-ril.so from the vendor library. These are the pre-compiled vendor libraries that I need to modify.
2) commented the lines from the vendor-blobs.mk that were including those two precompiled libraries.
3) go to android/system/ and run "mmm /hardware/ril/libril" and "mmm /hardware/ril/reference-ril" to obtain the modified libril.so and libreference-ril.so respectively.
4) copied the new libraries just obtained in the vendor folder where the pre-compiled libraries were
5) re-include the lines commented in point 2).
6) run brunch d2tmo
7) flash the .zip obtained
Any mistake?
Perseus71 said:
You know, silly question. But just so we can rule out. Did you at any point compiled the CM11 code as is and flashed to the phone ? How did Network behave ? Was everything ok ?
Click to expand...
Click to collapse
No silly question at all. Yes I have built everything out of the box and worked perfectly. I could use the network.
Perseus71 said:
Galaxy S3 is a very open platform with standard hardware and chipsets. So the Default google code should work out of box with it. If you have network issues, then just for kicks you can flash a custom Kernel on top of your compiled CM 11. See how that goes.
Click to expand...
Click to collapse
I followed the following procedure to include my modified libraries:
1) Eliminate precompiled vendor libraries: libril.so and libreference-ril.so from the vendor folder
2) comment lines in the vendor-blobs.mk that included those two precompiled libraries
3) from /android/system/ executed command "mmm /hardware/ril/librail" and "mmm /hardware/ril/reference-ril" to obtain the modified libril.so and libreference-ril.so
4) copied the new libraries in the vendor folder in the same places were the precompiled libraries were positioned
5) re-include the two lines that were commented in point 2)
6) build everything again with brunch d2tmo
7) flash the .zip obtained
Any mistake?
Unless I am having a brain fart that process seems about right. I wonder if your RIL changes are related to the network
What kind of issues do you see ?
Perseus71 said:
Unless I am having a brain fart that process seems about right. I wonder if your RIL changes are related to the network
What kind of issues do you see ?
Click to expand...
Click to collapse
It cannot even find the network operators. It says that it is impossible to connect and to try later...
mine is the Tmobile version of S3. May this influence?
That would depend on the changes you made. But otherwise not really. The underlying Device tree is unified for all US S3 devices.

boot image

Can somebody explain me the proper way to build the boot image? I'm able to build a pure kernel image but i'ts now what i need to flash into boot partition.
Eh that's a bit complicated, the kindled booting is a uniqueish format. Hashcode made a custom make setup in cm's build system to put it together since it not only has a weird signature but a second bootloader added onto the beginning of it as well. Are you compiling a rom or just trying to rebuild the bootimg?
Sent from my LG-P769 using Tapatalk
Yeah, I've tried to figure out from the CM port how it's built. I've found some code here:
https://github.com/KFire-Android/android_device_amazon_jem/blob/cm-11.0/boot.mk
But I can't figure out how to attach a kernel image, ramdisk, what else.
I'm not building rom, just want to change some features in the stock kernel.
I could attempt to throw one together for you, I think my current setup doesn't bother to check the intramfs as long as it exists in the out directory, I'd just have to replace the kernel and initramfs and attempt a build. O wait I'm in the 8.9" section, I don't have a working build of b2g going for that yet, probably wouldn't be the best idea, would probably work but Idk. You could just build cm from source and pull the bootimg out of the zip it makes. Maybe I can slap together some instructions, I kinda see in the makefile how it works but makefile scripting isn't my forte, its similar to bash but different enough i can get confused at points.
Sent from my Amazon Tate using Tapatalk
Building the whole cm is a bit overhead. I don't need the complete build script but it would be great if you point out some makefiles, or places to look in the source tree, i'll try to fugure out how to use it.
So anyone?
ipipipipip said:
So anyone?
Click to expand...
Click to collapse
ah sorry i have been at work most of the week and passing out once i get home (thank you low stamina). Anyways i thought i had posted something on here about where to look but it seems i didnt, look at this file: https://github.com/KFire-Android/android_device_amazon_jem/blob/cm-11.0/boot.mk#L27
That area (line27ish) should give you the hints you need.
Edit: wait this is a 8.9, wrong link, that would be a nice brick if that was used... Fixed!
most of that file makes sense, the only thing i am unfamiliar with is [email protected] $ usually means a variable or something else i'm trying to rember involving a program, probably storing output from a program as the variable. As to the @ symbol i have heard it means array, not very sure at all about how it works.

Categories

Resources