Hey Guys
So one of the biggest questions I have seen in the last couple weeks since the Rogers captivate was released is how to root. I figured I would write a nice tutorial for everyone to make it easier!
Method 1: SuperOneClick
This is the easiest way, however most people have not been able to achieve root using this. Try this first if no luck move to method 2. Instructions on how to root using SuperOneClick can be found here
Method 2: Manual Root using ADB and Terminal
This one takes more time and not as easy to do as you have to do everything manually. But haven't heard of any problems with it yet
Step 1: Install <PDANet> Drivers. Just download the file and install. Select Samsung drivers. No need to actually install PDAnet on the Captivate you just need the drivers from the install. Follow the instructions with the installer to properly install the drivers.
Step 2: Download <Andriod SDK>.
- Extract the Android SDK .Zip file to C:\AndroidSDK (this should name the new folder created AndroidSDK in the C directory.
- Go to your start menu and search cmd or click run and type in cmd to open command prompt
- Type the following into command prompt, hitting enter at the end of each line
cd C:\AndroidSKD\Tools
adb devices
- You should see a serial number pop up. This is the serial number of your phone. This means ADB is set up
Step 3: Download <RageagainsttheCage Rooting Files>
- Extract them to the c:\AndroidSDK\tools\ folder. HAS TO BE IN THIS FOLDER FOR THE FOLLOWING COMMANDS TO WORK
Step 4: Unplug phone if it is plugged in. Then, on the phone, go to Settings > Applications > Development and make sure USB Debugging is Checked ON.
Step 5: Plug phone back in to computer. Make sure SD are not mounted
Step 6: Reopen Command prompt if not open. In the command prompt enter the following, pressing enter at the end of each line
cd c:\androidsdk\tools\
adb devices
adb push Superuser.apk /sdcard/
adb push su /sdcard/
adb push rageagainstthecage-arm5.bin /data/local/tmp/
adb shell chmod 0755 /data/local/tmp/rageagainstthecage-arm5.bin
Step 7: On the phone, go to Marketplace and download Terminal Emulator
Step 8: Leaving the phone plugged in, open the Terminal Emulator on the phone. Type the following, pressing enter at the end of each line
cd /data/local/tmp
./rageagainstthecage-arm5.bin
Step 9: WAIT. It will take a full minutes for the rage root to install. When finished you will see "Forked Childs". DO NOT DO ANYTHING TILL YOU SEE THIS. Terminal will allow you to type as it goes back to $ while it is installing BUUT DO NOT DO ANYTHING JUST WAIT(Cannot stress this enough)
Step 10: once "Forked Childs" appears, exit the Terminal App, and then reopen it. Instead of $ you should now see #. If not redo Step 7. Otherwise continue.
Step 11: Type the following hitting enter at the end
cat /proc/mounts
This should bring up a list (Easiest to view in landscape mode. Look for the following
/dev/block/XXXXXXXXXX /system YYYY ro 0 0 (the XXXXXXXXX part should be different depending on which device you have. The YYYY part will either be; ext2, ext3 or yaffs2 or something similar. )
My YYYY was rtf , not sure if it will be the same for everyone (though i assume it is)
Step 12: Now in the terminal window, using the info from above, enter the following, hitting enter at the end of each line (Be sure to enter spaces where needed as below)
mount -o rw,remount -t YYYY /dev/block/XXXXXXXXXX /system
cat /sdcard/Superuser.apk > /system/app/Superuser.apk
cat /sdcard/su > /system/bin/su
chmod 4755 /system/bin/su
mount -o ro,remount -t YYYY /dev/block/XXXXXXXXXX /system
exit
Step 13: Close terminal window if still open. Check your app drawer and, assuming everything was completed properly, you should see Superuser. If not redo Step 12, again watching for spaces and using the correct info from Step 11.
ACKNOWLEDGEMENTS
I, in no way shape or form, came up with the above method or tools. This method was modified from and composed from the method decribed over at Theunlockr.com for ease of use and to root the Captivate specifically. I big thanks go out to those guys!
ORINGAL LINK CAN BE FOUND HERE
WARNING
I am not responsible for any damage doone to the phone or its file system as a result of this tutorial. It is for educational purposes only. You have been warned!
THANK YOU!
No other method was working for me (not SuperOneClick, not these ADB instructions). Sure enough, using Terminal Emulator, I was able to get #. I wasn't able get this through adb, nor was I through SuperOneClick (infinite loop @ "mount" command).
I noticed a few things:
-When I compared filesizes from your provided Rage Root files, to the ones that were included in this thread (which also come with SuperOneClick—and which I was unable to get working), I noticed major differences. This gave me hope!, as I'd tried everything else that I knew how to prior to this point.
-My "XXXXXXXXXX" was actually only 4 characters: "stl6".
-My "YYYY" was only 3 characters ("rfs").
-SuperUser showed up on my applist without even requiring a reboot.
THANKS AGAIN
I shall now attempt to apply a lagfix; I will report back with results.
--Bah: no luck. RyanZA's OCLF V2.2+ returns error:
Could not mount /dev/block/mmcblk0p2 onto /dbdata/rfsdata: mount: No such file or directory
--OCLF V1+ returns error:
Could not create /data/linux.ex2 - dd: can't open '/data/linux.ex2': Permission denied
Uh-oh.
PhrProfess said:
THANK YOU!
No other method was working for me (not SuperOneClick, not ). Sure enough, using Terminal Emulator, I was able to get #. I wasn't able get this through adb, nor was I through SuperOneClick (infinite loop @ "mount" command).
I noticed a few things:
-When I compared filesizes from your provided Rage Root files, to the ones that were included in this thread[/url] (which also come with SuperOneClick—and which I was unable to get working), I noticed major differences. This gave me hope!, as I'd tried everything else that I knew how to prior to this point.
-My "XXXXXXXXXX" was actually only 4 characters: "stl6".
-My "YYYY" was only 3 characters ("rfs").
-SuperUser showed up on my applist without even requiring a reboot.
THANKS AGAIN
I shall now attempt to apply a lagfix; I will report back with results.
--Bah: no luck. RyanZA's OCLF V2.2+ returns error:
Could not mount /dev/block/mmcblk0p2 onto /dbdata/rfsdata: mount: No such file or directory
--OCLF V1+ returns error:
Could not create /data/linux.ex2 - dd: can't open '/data/linux.ex2': Permission denied
Uh-oh.
Click to expand...
Click to collapse
Yup same problem here. I was able to root it manually a few days ago, but have as of yet been unable to lag fix it.
Strange. After I rooted I had no problem using RyanZa's Lagfix. Your still using the stock rom after rooted correct?
deacfire said:
Strange. After I rooted I had no problem using RyanZa's Lagfix. Your still using the stock rom after rooted correct?
Click to expand...
Click to collapse
Correct. I've tested out quite a few apps from the market, though.
When I mount my device, I notice that there are some files on my internal SDCard:
-su
-Superuser.apk
-nv_data.bin
-busybox (why is this there, I uninstalled that)
-update.zip
...and some folders:
-layar
-twc-cache
-Android -» data -» com.cooliris.media
-Android -» data -» com.google.android.apps.maps
-svox
...These all have subdirectories.
Not knowing what a default internal SD directory ought to look like, I wonder: Could any of these be causing a conflict? I read that some said not to have any apps installed on the SDCard while trying to mess around (with ROMs, I think), so I tried removing what I could, and then rebooting (and some folders respawned), and reapplying the fix—no dice. I've since replaced all of the folders and the files.
Stock rom here as well.
Hrmm not quite sure why lag fix isn't working for you guys. Just a quick question, in RyanZa One Click, is "Un-Root Device" green?
I still have no problems applying RyanZa Lag Fix to my Captivate as I had to redo it last night after i switched back to the Rogers stock rom after testing Cog 2.2. My guess, and it is just a guess, is that the root never applied properly. Have you tried rerooting the device?
deacfire said:
Hrmm not quite sure why lag fix isn't working for you guys. Just a quick question, in RyanZa One Click, is "Un-Root Device" green?
I still have no problems applying RyanZa Lag Fix to my Captivate as I had to redo it last night after i switched back to the Rogers stock rom after testing Cog 2.2. My guess, and it is just a guess, is that the root never applied properly. Have you tried rerooting the device?
Click to expand...
Click to collapse
Thought I might give you some info as well since i've been messing with mine for about a week now. I was able to root the device, oneclick did not work originally for this and I used ADB method similar to what you had here. After this I went for the lag fix, everything was green like it was supposed to be, installed the ext2 tools no problem and then get the same error about unable to mount when applying lag fix.
At this point I used OCLF to unroot the device and it did, I then used the oneclick to re-root which it did this time, in terminal I can su properly and again all the tools are green in OCLF. Tried to lagfix and failed again so I started making some changes manually based on the error messages that were out put. Created the folder it was trying to mount to for instance and then set the permission to this to 777 that would allow world write access, this allowed it to create the new partition in ext2 but when mounting the loopback device it fails saying it doesn't exist (which it doesn't I looked) so while I did get a bit further the lag fix still fails. I would gladly apply the lag fix manually through the terminal if I knew everything that was being done to re-format the partitions for ext3 but I can't seem to find that info anywhere.
Next best thing I would guess is to install a stock rom from rogers from someone else and see if there are any differences, I'm guessing based on the devices in the /dev folder that there are more then one image on the devices some set up more similar to AT&T that the lag fix will work on.
mrprefect said:
Thought I might give you some info as well since i've been messing with mine for about a week now. I was able to root the device, oneclick did not work originally for this and I used ADB method similar to what you had here. After this I went for the lag fix, everything was green like it was supposed to be, installed the ext2 tools no problem and then get the same error about unable to mount when applying lag fix.
At this point I used OCLF to unroot the device and it did, I then used the oneclick to re-root which it did this time, in terminal I can su properly and again all the tools are green in OCLF. Tried to lagfix and failed again so I started making some changes manually based on the error messages that were out put. Created the folder it was trying to mount to for instance and then set the permission to this to 777 that would allow world write access, this allowed it to create the new partition in ext2 but when mounting the loopback device it fails saying it doesn't exist (which it doesn't I looked) so while I did get a bit further the lag fix still fails. I would gladly apply the lag fix manually through the terminal if I knew everything that was being done to re-format the partitions for ext3 but I can't seem to find that info anywhere.
Next best thing I would guess is to install a stock rom from rogers from someone else and see if there are any differences, I'm guessing based on the devices in the /dev folder that there are more then one image on the devices some set up more similar to AT&T that the lag fix will work on.
Click to expand...
Click to collapse
Try the stock rom in the main Rogers Captivate forum. It is one i used to go from Cog 2.2 back to stock and it applied the root and lag fix without a hitch. Give it a try and let us know!
deacfire said:
Try the stock rom in the main Rogers Captivate forum. It is one i used to go from Cog 2.2 back to stock and it applied the root and lag fix without a hitch. Give it a try and let us know!
Click to expand...
Click to collapse
Happen to have a link right to the forum? so many threads to search through...
I'm new to the whole android thing though I've been working with linux for years but its a bit of a learning curve coming from a blackberry.
also what are you using to flash your device?
I'm having the same problem. Let me know if you somehow fix it.
Sent from my SAMSUNG-SGH-I896 using XDA App
I was finally able to get my last night.
Turns out my first root attempt was a failure. I had to unroot via an update.zip method as i did not have the permissions to remove the files from terminal.
Once unrooted i then did the update.zip method for the I897, and modified the script to look for I896 instead. It worked flawlessley. I am now getting the pop-up asking for root permissions. I had never seen it work previously.
I was then able to install OCLF without any problems. (and it popped up asking for root)
I am now rooted and lag fixed. Previous quadrant score was at 860's and i pulled a 2285 last night after the OCLF.
Can you please tell us how to modify script and how to flash back to stock..I need to return my phone and superuse app wont go away after unrooting and factory reset
inningsdefeat500 said:
Can you please tell us how to modify script and how to flash back to stock..I need to return my phone and superuser app wont go away after unrooting and factory reset
Click to expand...
Click to collapse
Well i cannot help you flash back to stock as i don't quite know how to do that yet myself. But i can help you unroot, re-root, and lag fix.
I have found the files again and uploaded them to rapid share with the necessary modifications.
Download THIS FILE and once downloaded, rename it to update.zip Be careful not to name it update.zip.zip by accident.
Place the file into the root of your sdcard.
Shutdown the phone with the power button, or pull the battery out and put it back in.
Enter recovery mode:
While holding the volume up and volume down buttons press and hold the power button until you see the white text that says SGH-I896, then release the power button only.
When in recovery mode use the volume down key to highlight reinstall packages, then press the power button. It should say completed and reboot the phone.
Once the phone has rebooted, do the exact same thing again, only use THIS FILE instead. Dont forget to rename the file again!
Then install the OCLF from market. Install the EXT2 tools first. Then run the lag fix installer.
I assume you already know how to enter recovery mode, but this way someone else searching for a fix will have all the info at their disposal here.
EDIT!!!
Some mirrors for the files
For the UN-Root files go HERE
For the ROOT files go HERE
Hi all i am very lost here....i have tried for hours the last few days on how to root this i896 with the super one click method with no luck....anyways i was speaking to my brother earlier and he has done it with his bell vibrant no problem....anyways what i want to know is what is the purpose of rootindg the phone? I thought it was for downloading 3rd party apps or whats the purpose for superuser? The reason why i am asking is that i can download 3rd party apps already...i allow them on my application settings and download a app downloader and works fine? Im lost someone please help.
Sent from my SAMSUNG-SGH-I896 using XDA App
dandroid123 said:
Hi all i am very lost here....i have tried for hours the last few days on how to root this i896 with the super one click method with no luck....anyways i was speaking to my brother earlier and he has done it with his bell vibrant no problem....anyways what i want to know is what is the purpose of rootindg the phone? I thought it was for downloading 3rd party apps or whats the purpose for superuser? The reason why i am asking is that i can download 3rd party apps already...i allow them on my application settings and download a app downloader and works fine? Im lost someone please help.
Sent from my SAMSUNG-SGH-I896 using XDA App
Click to expand...
Click to collapse
Take a look here. It answered alot of my questions.
http://www.androidcentral.com/rooting-it-me-some-qa
Also, if you only follow the second half of my post above you should be able to root it as well.
Thanks deacfire! The one click wouldn't work for me but the second method did.
I am having a really annoying problem though. The superuser.apk that you included just gave me a black screen. So I updated it to this one: http://forum.xda-developers.com/showthread.php?t=682828&highlight=no+apps+in+list
Which is newer. But now it just says "no apps in list". Tried installing it from the zip, tried from the market no different.
I do have apps that require superuser: ROM Manager, Root Explorer, Adfree. They all work, also have titanium backup but its is telling me it needs root access.
How can I fix this, it is a major issue.
EDIT:Thanks impulser91!! That work and was SUPER easy! Should probably get posted in the original post.
when i copy update.zip into the /sdcard and then try hitting reinstall packages, it results in an error and aborts. any suggestions?
Nevermind....it worked MUAHAHAHAHAHAH LET THE FUN BEGIN!
Sweet, 2 users. Not bad for under 10 posts
I'm glad its working for others. I had one heck of a time finding the right combination of files and process's for the I896. I am an IT professional and it took me a few days of fumbling around all the I896 and I897 posts.
Anyways, glad to hear it worked, and i hope other people find it useful as well. I will keep the originals, so if the links go down someone just PM me and i will load them somewhere else.
impulser91 said:
Well i cannot help you flash back to stock as i don't quite know how to do that yet myself. But i can help you unroot, re-root, and lag fix.
I have found the files again and uploaded them to rapid share with the necessary modifications.
Download and once downloaded, rename it to update.zip Be careful not to name it update.zip.zip by accident.
Place the file into the root of your sdcard.
Shutdown the phone with the power button, or pull the battery out and put it back in.
Enter recovery mode:
While holding the volume up and volume down buttons press and hold the power button until you see the white text that says SGH-I896, then release the power button only.
When in recovery mode use the volume down key to highlight reinstall packages, then press the power button. It should say completed and reboot the phone.
Once the phone has rebooted, do the exact same thing again, only use THIS FILE instead. Dont forget to rename the file again!
Then install the OCLF from market. Install the EXT2 tools first. Then run the lag fix installer.
I assume you already know how to enter recovery mode, but this way someone else searching for a fix will have all the info at their disposal here.
Click to expand...
Click to collapse
I could just about kiss you.... but I won't
Thanks for the update files they worked like a charm. I had a similar issue where the device didn't seem to be properly rooted, though it didn't give me any issues with most things when applying the lagfix it would die.
applied both your unroot and then root and it worked flawlessly the first time, lagfix then ran with no issues and my quadrant scores are 2250 now.
Not sure what you did exactly, I've tried rooting from update.zip from oneclick and neither worked I ended up rooting with the ADB and though it seemed to work it apparently did not.
Thanks again
I put cm7 onto my g1 but the slide out keyboard has some of the alt keys in the wrong place.
I will try to show you.
If I press
Wer
Sdf
Xcv
I get in return if I press alt
123
456
789
Instead I should have a load of symbols like _ all of the numbers across the top of the keyboard are in the correct place but all the symbols are wrong.
The keyboard worked fine with cm 6.1.0 I have upgraded the radio and hboot for cm7 but I'm not sure if it has anything to do with which country I'm in or if I can change the settings within the phones keyboard options.
Any help with this would be great or if its a bug then let me know what I can do to help.
I am in the UK
Thanks,
Dave.
Sent from my HTC Wildfire using XDA App
ok i have searched and searched and found that there is a file called qwerty.kcm within the cm7.zip rom file 2.3.2, i can edit this file within notepad to my correct key press when pressing alt! i will do this later on tonight for the english tmobile g1, if anyone wants the file once its finished then let me know! i jst hope i can edit it, save it, flash the rom and hopefully it works!
apart from that that is the only really issue im having with the phone within 2.3.2!
davidbbb said:
ok i have searched and searched and found that there is a file called qwerty.kcm within the cm7.zip rom file 2.3.2, i can edit this file within notepad to my correct key press when pressing alt! i will do this later on tonight for the english tmobile g1, if anyone wants the file once its finished then let me know! i jst hope i can edit it, save it, flash the rom and hopefully it works!
apart from that that is the only really issue im having with the phone within 2.3.2!
Click to expand...
Click to collapse
I am definitely having this issue with my G1 (English). Lost my question mark among other things due to the keyboard mapping. If you were able to fix this issue, let me know with a PM or something as I am in need to that file fix.
Thanks,
i wish i had the correct file! i have tried to edit the cm7 files by changing the keys via windows notepad but when i save the file and try to run the flash again it wont let me due to a verification error
if trout-keypad-v3.kcm.bin was in with cm7 like it was with cm6.1.0 then it might of worked but it doesn't look to me that the english version of the g1 has been added to 2.3.1 i would like to get in touch with the devs about this but i dont want to annoy them!
i also tried to copy and paste the correct files from cm6.1.0 to cm7 but there was also a verification error!
i have also just done a little bit of searching into creating my own rom and signing rom files for flashing but i am not that clever unfortunately!
maybe i can take the correct layout and post the zip file on here or email it to someone for it to be signed by someone else that knows what they are doing and then the signed.zip file could be returned?
DEVS! HELP! lol
philly2va you will be pleased to know that this post i will send you has the correct v3 keypad file within the rom, i haven't flashed it yet but i am about to. . .
i have downloaded the top one in that list.
http://forum.xda-developers.com/showpost.php?p=9987696&postcount=2
my keyboard works fine now
well after messing around with all of that and getting the keyboard working i thought i would freshen up the phone a bit, i put rc7 back on to make it stock android 1.0 (it was quick i must add) i formatted the sdcard put RA 1.7.0 on it again and then cm6.1.0 it works fine and i'm happy with the result, the phone is just for messing around with as i have a wildfire but i got bored, im just waiting for a root option for the hbooted 1.001.0010101.1.010.101.1. wildifre lol
An "easier" way to update the keys/keyboard layout...
I did :
1. Grabbed GINGERBREAD-DS-Alpha-20110129-1.zip from http://forum.xda-developers.com/showpost.php?p=9987696
2. Unzipped it to 'gingerbread' directory
3. cmd
>adb shell
# mount -o rw,remount -t yaffas2 /dev/block/mtdblock3 /system
# cd /system/usr
# mv keychars keychars_o
# mv keylayout keylayout_o
#mkdir keychars
#mkdir keylayout
# exit
> adb push gingerbread\system\usr\keychars system/usr/keychars
> adb push gingerbread\system\usr\keylayout system/usr/keylayout
Rebooted and works like a charm.
( I than went back and deleted the keychars_o and keylayout_o dirs...
When you move your software buttons to status bar, there is a problem with apps that cover full screen and don’t have “menu” or “back” button. For example “Gallery”. You have to push longer power buttons and switch to buttons mode to end application or get to menu. I have found this quite irritating so I prefer to have “one click” button to get this working. When you get lcd density to 130, your status bar is very small and is difficult to touch soft buttons.
By editing file /system/usr/keylayout/qwerty.kl you can remap your buttons.
Note that this require permanent root with rw access to system partition.
Ive tested this on Archos 70 rotted with OC kernel http://forum.xda-developers.com/showthread.php?t=897877 it should work with chulri method http://forum.xda-developers.com/showthread.php?t=930197 and UrukDroid http://forum.xda-developers.com/showthread.php?t=895599.
Thx guys for great work
Doesn’t work with Archangel because it needs rw acces to /system/.
Maybe some “magic” can make a script to force android to use keyboard layout from different location (sdcard for example).
Like with all operations on system files, you can broke your system when something goes wrong. Remember, I'm not responsible for anything.
If you use other keyboard than default you probably have to edit another file from /system/usr/keylayout/. I’ve tested this only for standard keyboard.
After made changes to qwerty.kl you have to restart device.
In this example I’ve remapped + button as “Menu” and Volume – as “Back”.
Remember that you will loose ability to control volume with hardware buttons.
To set to default mapping simply copy original file or edit it and restart device.
Before you start, make a backup of original file.
Go to terminal:
Code:
su
cp /system/usr/keylayout/qwerty.kl /system/usr/keylayout/qwerty.kl.org
Next, open /system/usr/keylayout/qwerty.kl file with text editor
And find line
key 115 VOLUME_UP
key 114 VOLUME_DOWN
key 116 POWER WAKE
These are our hard buttons.
Change it to
key 115 MENU
key 114 BACK
key 116 POWER WAKE
Restart android and you have Menu under volume+ and back under volume-
To reset to default, simply go to terminal and:
Code:
su
cp /system/usr/keylayout/qwerty.kl.org /system/usr/keylayout/qwerty.kl
and reboot.
Of course feel free to experiment to other button mapping. :]
very nice. Will be trying this out for sure. Was looking for a better way than button Savior / buttons panel.
Will test during my very busy Friday afternoon work day
Can't "thanks" from tapatalk but will be sure to get you later
Sent from my A101IT using Tapatalk
Nice added to the list of modifications possible with the different root methods here
diabel44 said:
When you move your software buttons to status bar, there is a problem with apps that cover full screen and don’t have “menu” or “back” button. For example “Gallery”. You have to push longer power buttons and switch to buttons mode to end application or get to menu. I have found this quite irritating so I prefer to have “one click” button to get this working. When you get lcd density to 130, your status bar is very small and is difficult to touch soft buttons.
By editing file /system/usr/keylayout/qwerty.kl you can remap your buttons.
Note that this require permanent root with rw access to system partition.
Ive tested this on Archos 70 rotted with OC kernel http://forum.xda-developers.com/showthread.php?t=897877 it should work with chulri method http://forum.xda-developers.com/showthread.php?t=930197 and UrukDroid http://forum.xda-developers.com/showthread.php?t=895599.
Thx guys for great work
Doesn’t work with Archangel because it needs rw acces to /system/.
Maybe some “magic” can make a script to force android to use keyboard layout from different location (sdcard for example).
Like with all operations on system files, you can broke your system when something goes wrong. Remember, I'm not responsible for anything.
If you use other keyboard than default you probably have to edit another file from /system/usr/keylayout/. I’ve tested this only for standard keyboard.
After made changes to qwerty.kl you have to restart device.
In this example I’ve remapped + button as “Menu” and Volume – as “Back”.
Remember that you will loose ability to control volume with hardware buttons.
To set to default mapping simply copy original file or edit it and restart device.
Before you start, make a backup of original file.
Go to terminal:
Code:
su
cp /system/usr/keylayout/qwerty.kl /system/usr/keylayout/qwerty.kl.org
Next, open /system/usr/keylayout/qwerty.kl file with text editor
And find line
key 115 VOLUME_UP
key 114 VOLUME_DOWN
key 116 POWER WAKE
These are our hard buttons.
Change it to
key 115 MENU
key 114 BACK
key 116 POWER WAKE
Restart android and you have Menu under volume+ and back under volume-
To reset to default, simply go to terminal and:
Code:
su
cp /system/usr/keylayout/qwerty.kl.org /system/usr/keylayout/qwerty.kl
and reboot.
Of course feel free to experiment to other button mapping. :]
Click to expand...
Click to collapse
diabel44 said:
I
Click to expand...
Click to collapse
I have edited .kl file using both ES File Explorer & adb shell , but edited file is restoring to previous on reboot. Is there a way to permanently change the .kl files
MASTER MC said:
I have edited .kl file using both ES File Explorer & adb shell , but edited file is restoring to previous on reboot. Is there a way to permanently change the .kl files
Click to expand...
Click to collapse
I got it. It should be edited and changed to /system using twrp recovery.
I mapped volume button to power. It works correctly only when device is powered on and it doesnot reboot when shutdown. Can u tell me where I should make changes to work to power on the device .
**Must have root**
As the title says, stop your home key from waking your device.....(then only power button wakes it up )
you can do this simply with root explorer
(THERE ARE OTHERS TO USE MAYBE EVEN FREE, THIS IS ALL I HAVE EVER USED IS ALL)
ONLY MODIFY THE FILE SPECIFIED!
OR PLAY AROUND AT YOUR OWN RISK AS NOTHING OTHER THAN MENTIONED FILE IS TESTED....
open root explorer
navigate to : system/usr/keylayout
now press the mount r/w button near the top of screen to enable read and write permissions
scroll down to: sec_keys.kl
press and hold until menu pops up, select: Open in Text Editor
locate line: key 172 HOME WAKE
tap behind the word WAKE and delete it so you see: key 172 HOME
press menu and select: Save and Exit
now press the button at the top of the screen to disable read and write permissions: Mount R/O
(once pressed should now read : Mount R/W again.
Exit root explorer
Reboot your phone
see if it works
Credit goes to Eric
I don't have that file in /system/usr/keylayout, i have wanamlite 1.8 rom.
Thank you very much!
This works on my T999 (TMO SIII)
Where is this mysterious keyboard layout file on a STOCK rom?
EDIT: nvm got it I suppose it's gpio-keys.kl
Just a quick info for people with Xiaomi Piston v3 headset, nothing new either:
As root you can assign all three keys in the file
Code:
/system/usr/keylayout/msm8226-tapan9302-snd-card_Button_Jack.kl
Buttons in order top->bottom when you wear the headset
Upper button: Keycode 115
Middle button: Keycode 226
Lower button: Keycode 217
(at least on Cyanogenmod 13)
For example:
Code:
key 226 HEADSETHOOK
key 115 VOLUME_UP
key 217 VOLUME_DOWN
You can get some inspiration on what actions are available in the "Generic.kl" file in the same folder
Todo: Write a little script in /persist so it stays accross system updates.
so how i'm supposed to enable those actions? please explain the process step by step
Thank you
cameravala said:
so how i'm supposed to enable those actions? please explain the process step by step
Thank you
Click to expand...
Click to collapse
Hope this works on your ROM.
First the /system parition needs to be writeable, you need root for that.
In a terminal emulator or in "adb shell" on your PC do:
Code:
mount -o remount,rw /system
Then you can edit it, for example go to the location with a root-explorer and open it from there in a text editor (most comfortable)
or you can transfer it to your PC and edit it there:
On the phone:
Code:
cp /system/usr/keylayout/msm8226-tapan9302-snd-card_Button_Jack.kl /sdcard
Then edit the file that is now in your internal storage that shows up on PCs over usb.
To put it back, on the phone:
Code:
cp /sdcard/msm8226-tapan9302-snd-card_Button_Jack.kl /system/usr/keylayout/msm8226-tapan9302-snd-card_Button_Jack.kl
chmod 644 /system/usr/keylayout/msm8226-tapan9302-snd-card_Button_Jack.kl
You need to reboot it after that. You can ask if you have other questions.
This won't work if your kernel doesn't include this patch: https://github.com/CyanogenMod/andr...mmit/9aecde9a7aaa7362ef7b4c04ad92d3873a90d8eb
fonz93 said:
This won't work if your kernel doesn't include this patch: https://github.com/CyanogenMod/andr...mmit/9aecde9a7aaa7362ef7b4c04ad92d3873a90d8eb
Click to expand...
Click to collapse
Damn, I was hoping this is universal.
Thanks for the clarification
fonz93 said:
This won't work if your kernel doesn't include this patch: https://github.com/CyanogenMod/andr...mmit/9aecde9a7aaa7362ef7b4c04ad92d3873a90d8eb
Click to expand...
Click to collapse
Thanks you guy
Will this work with CM13?
tiagp said:
Will this work with CM13?
Click to expand...
Click to collapse
Yes
I can't find msm8226-tapan9302-snd-card_Button_Jack.kl on root/system/usr/keylayout
Should i make that file named msm8226-tapan9302-snd-card_Button_Jack.kl on that location?
I'm on Cm13 with latest build.
giboto91 said:
I can't find msm8226-tapan9302-snd-card_Button_Jack.kl on root/system/usr/keylayout
Should i make that file named msm8226-tapan9302-snd-card_Button_Jack.kl on that location?
I'm on Cm13 with latest build.
Click to expand...
Click to collapse
Yeah, you'll need to create it in that location. Your keycodes might differ from the OP (mine did) so you might need to use the keytest.apk to make sure your mappings are correct. Other than that, you'll be fine.
Works me perfect
I didn't create the file, instead of that i modified the "Generic.kñ" file and after a fast reboot worked fine
Sent from my Moto G using XDA-Developers mobile app