Workaround to remap home key - Fire TV General

Hello! So I gave up a lot of time ago on having a custom launcher that was opened automatically instead of the stock launcher, but a while ago I thought about a way of using adb logcat to catch the events that launch the stock launcher and replace it with Wolf Launcher (or any other app, actually).
Disclaimer: this method requires a home server where you can run a docker instance or a bash script. It does not work directly inside FireTV.
I have not noticed any performance degradation in the firetv itself, and the latency is almost unnoticeable, to the point I can't even see a frame of the stock launcher (check video below).
I have put together a little script that will run a docker ubuntu instance, in which I then run this command:
./adb logcat '*:I' | grep --line-buffered "ActivityManager: START u0 {act=android.intent.action.MAIN cat=\[android.intent.category.HOME\] flg=0x10[0-9]00000 cmp=com.amazon.tv.launcher/.ui.HomeActivity_vNext" | xargs -I {} ./adb shell am start -n com.wolf.firelauncher/.screens.launcher.LauncherActivity
It will look for lines in the logcat that start the activity "com.amazon.tv.launcher/.ui.HomeActivity_vNext", which happens whenever you tap the home button or choose a firetv profile.
Then it sends a command to open the Wolf Launcher (am start -n com.wolf.firelauncher/.screens.launcher.LauncherActivity).
It can be modified to either listen to other action, or to launch any other app instead of the Wolf Launcher. Hope it's useful

The wallpaper goes to Amazon, for blocking every nice thing we find with updates

Hello @daavm , can you explain how to run that script? I mean, do i need to boot from Ubuntu and open a command window or can I run it on Windows 10?
I have a Fire Tv 4k Stick with wolf launcher, but there is no way i can delete the stock launcher and my son is always pressing the home button to find some videogames i dont want him to. The problem is that Amazon doesnt allow me to hide the recommendations so my only hope is to set the home button to launch the wolf launcher so the kid wont be able to find the %%%%% videogames.
Thank you

but there is no way i can delete the stock launcher a
Click to expand...
Click to collapse
I opened the remote and affixed cello tape on the place where home button is pressed.
Viola -- I also used KODI as default launch after boot using this https[://]f-droid[.]org/packages/news.androidtv.launchonboot/

Queaven said:
Hello @daavm , can you explain how to run that script? I mean, do i need to boot from Ubuntu and open a command window or can I run it on Windows 10?
I have a Fire Tv 4k Stick with wolf launcher, but there is no way i can delete the stock launcher and my son is always pressing the home button to find some videogames i dont want him to. The problem is that Amazon doesnt allow me to hide the recommendations so my only hope is to set the home button to launch the wolf launcher so the kid wont be able to find the %%%%% videogames.
Thank you
Click to expand...
Click to collapse
I guess you could adapt it for Windows, but this makes use of grep, which is a linux module, so you would need to rewrite the script... You can try Ubuntu WSL (https://ubuntu.com/wsl) and run it there I guess

alpenmmilch said:
I opened the remote and affixed cello tape on the place where home button is pressed.
Viola -- I also used KODI as default launch after boot using this https[://]f-droid[.]org/packages/news.androidtv.launchonboot/
Click to expand...
Click to collapse
Hey any idea if firestick supports external control protocols? I stumbled on a Siri shortcut that allows me to control my tcl tv with siri and I’m wondering if I can do the same with the firestick, there has to be a way tho because how else would the firestick app work?

Thanks for sharing!
From your video it looks very good.
I did something with Tasker, when I click on home it shows the Amazon launcher and jumps into Wolf Launcher, but you can clearly see the delay. Takes 1-2 seconds till Wolf Launcher is on.
Why do I need a Linux server with a Docker container?
The command is an ADB command?
Can I just run Remote ADB Shell on my smartphone and connect to my FireTV and copy & paste your code?

Falcon_X said:
Thanks for sharing!
From your video it looks very good.
I did something with Tasker, when I click on home it shows the Amazon launcher and jumps into Wolf Launcher, but you can clearly see the delay. Takes 1-2 seconds till Wolf Launcher is on.
Why do I need a Linux server with a Docker container?
The command is an ADB command?
Can I just run Remote ADB Shell on my smartphone and connect to my FireTV and copy & paste your code?
Click to expand...
Click to collapse
The docker container is just what I decided to use because I use Unraid on my home server. You can just do it on a linux machine without docker. It's just adb, yes.
Not sure how Tasker does it so can't help you with the delay. Haven't used Remote ADB Shell either, so I don't know. Sounds like it would work, but not sure how you would keep it in the background.

daavm said:
The docker container is just what I decided to use because I use Unraid on my home server. You can just do it on a linux machine without docker. It's just adb, yes.
Not sure how Tasker does it so can't help you with the delay. Haven't used Remote ADB Shell either, so I don't know. Sounds like it would work, but not sure how you would keep it in the background.
Click to expand...
Click to collapse
doesn't work. Sadly.
With your command, I got the error, that ./adb doesn't exist. Is adb a file or a folder?
I've tried to create this folder, but as I don't have root access I can't create a folder inside root.
I changed the paths in your command to /storage/emulated/0/adb but I get the error:
/storage/emulated/0/adb: can't execute: Is a directory
/storage/emulated/0/adb: Permission denied
Tried the same with creating a file called adb inside the adb folder - but the same Permission denied

Falcon_X said:
doesn't work. Sadly.
With your command, I got the error, that ./adb doesn't exist. Is adb a file or a folder?
I've tried to create this folder, but as I don't have root access I can't create a folder inside root.
I changed the paths in your command to /storage/emulated/0/adb but I get the error:
/storage/emulated/0/adb: can't execute: Is a directory
/storage/emulated/0/adb: Permission denied
Tried the same with creating a file called adb inside the adb folder - but the same Permission denied
Click to expand...
Click to collapse
? you are trying to run this in the fire tv directly, you have to run it from a linux machine. Download the platform-tools.zip for Android, unzip it, and you will have the adb file there. Again, run this in a linux machine, not inside the fire tv.

I have created a Docker container using the following command on my Synology nas:
sudo docker run -i -t --network=host ubuntu:latest /bin/bash -c "apt-get update && apt-get install -y android-tools-adb && /bin/bash"
With adb connect x.x.x.x:5555 I create a connection to the device and with adb shell I open a command line.
I have removed the ./ before the adb in the script.
But I don't know if it will work like this, I will get my Fire Cube tomorrow.
@daavm
I believe you have connected the device to the docker container via usb and are not running the script remotely.
I would have to find a way to build a Docker container that would automate this and run it remotely if it worked that way.

poyo1975 said:
I have created a Docker container using the following command on my Synology nas:
sudo docker run -i -t --network=host ubuntu:latest /bin/bash -c "apt-get update && apt-get install -y android-tools-adb && /bin/bash"
With adb connect x.x.x.x:5555 I create a connection to the device and with adb shell I open a command line.
I have removed the ./ before the adb in the script.
But I don't know if it will work like this, I will get my Fire Cube tomorrow.
@daavm
I believe you have connected the device to the docker container via usb and are not running the script remotely.
I would have to find a way to build a Docker container that would automate this and run it remotely if it worked that way.
Click to expand...
Click to collapse
No, I haven't connected the device via usb. I do the 'adb connect x.x.x.x:5555' as well. But that doesn't change anything.
You don't have to open the shell. Just run the script in the container.

I've created a Docker aswell, the same way poyo1975 did. Container is running.
I can connect via ADB to my FireTV in the shell from my server, but you said the script needs to run in the container and we don't have to open the shell.
I use Portainer for my Docker containers, I copied and pasted your command in the "command field" and clicked on "deploy container".
I get the error:
failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "./adb": stat ./adb: no such file or directory: unknown
Still to dumb to understand the whole thing, for me it's more like a trial and error. Hope to get another hint from you daavm

Hi Falcon_X,
I also use portainer, you can build yourself an image.
I have attached my dockerfile and 2 script files.
Just click in Portainer under image build new image and then in the web editor paste the content of the dockerfile.Under upload paste the two script files and click on build.You have to give the image a name for example ubuntu-adb.The adb-connect script file you have to edit with an editor and change the ip address of your firetv.After the image is built you can under the tab container create a new container with the name you gave when creating the image.
At every container restart a connection to the firetv is established and the script of daavm is started.
Should work, but I can only test it tomorrow.
Many thanks to daavm for his script

Falcon_X said:
I've created a Docker aswell, the same way poyo1975 did. Container is running.
I can connect via ADB to my FireTV in the shell from my server, but you said the script needs to run in the container and we don't have to open the shell.
I use Portainer for my Docker containers, I copied and pasted your command in the "command field" and clicked on "deploy container".
I get the error:
failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "./adb": stat ./adb: no such file or directory: unknown
Still to dumb to understand the whole thing, for me it's more like a trial and error. Hope to get another hint from you daavm
Click to expand...
Click to collapse
Again, ./adb will only work if you have downloaded platform-tools zip and unzipped it (which has adb inside). Alternatively, you can do apt install adb, and replace "./adb" by just "adb"

As an update, I now use the following script as a custom script in a linuxserver/webtop container (check linuxserver docs on how to use custom scripts):
Bash:
#!/bin/bash
echo "**** Installing ADB ****"
apt update && apt install -y adb
adb connect 192.168.0.97:5555
while true; do adb logcat | grep -G --line-buffered "ActivityManager: START u0 {act=\(com\.amazon\.tv\.action\.LAUNCH_PROFILE_PICKER\|android\.intent\.action\.MAIN cat=\[android\.intent\.category\.HOME\]\) flg=0x10\(0\|1\|2\)00000 cmp=com\.amazon\.\(tv\.launcher/\.ui\.HomeActivity_vNext\|ftv\.profilepicker/\.ui\.PickerActivity\)" | xargs -I {} adb shell am start -n com.wolf.firelauncher/.screens.launcher.LauncherActivity; done
I included the profile picker listener because I didn't want to have to select the profile every single time.

Awesome. Works flawlessly. Thank you!
Running on a old debian based raspberry pi zero.

Thanks again to daavm and poyo1875. Works!
Update: Only works until you shutdown the FireTV :-(

thanks
daavm said:
As an update, I now use the following script as a custom script in a linuxserver/webtop container (check linuxserver docs on how to use custom scripts):
Bash:
#!/bin/bash
echo "**** Installing ADB ****"
apt update && apt install -y adb
adb connect 192.168.0.97:5555
while true; do adb logcat | grep -G --line-buffered "ActivityManager: START u0 {act=\(com\.amazon\.tv\.action\.LAUNCH_PROFILE_PICKER\|android\.intent\.action\.MAIN cat=\[android\.intent\.category\.HOME\]\) flg=0x10\(0\|1\|2\)00000 cmp=com\.amazon\.\(tv\.launcher/\.ui\.HomeActivity_vNext\|ftv\.profilepicker/\.ui\.PickerActivity\)" | xargs -I {} adb shell am start -n com.wolf.firelauncher/.screens.launcher.LauncherActivity; done
I included the profile picker listener because I didn't want to have to select the profile every single time.
Click to expand...
Click to collapse
thanks! it's looks worked!
i have 2 questions
1. The adb log looks like this, is it normal?
2. Oops, when i press home, I can still see the Amazon home page, it will start after about 1 second.
Code:
Starting: Intent { cmp=com.wolf.firelauncher/.screens.launcher.LauncherActivity }
Warning: Activity not started, its current task has been brought to the front
Starting: Intent { cmp=com.wolf.firelauncher/.screens.launcher.LauncherActivity }
Warning: Activity not started, its current task has been brought to the front
Starting: Intent { cmp=com.wolf.firelauncher/.screens.launcher.LauncherActivity }
Warning: Activity not started, its current task has been brought to the front
...

SevenFXD said:
thanks
thanks! it's looks worked!
i have 2 questions
1. The adb log looks like this, is it normal?
2. Oops, when i press home, I can still see the Amazon home page, it will start after about 1 second.
Code:
Starting: Intent { cmp=com.wolf.firelauncher/.screens.launcher.LauncherActivity }
Warning: Activity not started, its current task has been brought to the front
Starting: Intent { cmp=com.wolf.firelauncher/.screens.launcher.LauncherActivity }
Warning: Activity not started, its current task has been brought to the front
Starting: Intent { cmp=com.wolf.firelauncher/.screens.launcher.LauncherActivity }
Warning: Activity not started, its current task has been brought to the front
...
Click to expand...
Click to collapse
The Adb log looks the same for me, too.
When I press home, I don't see the Amazon Launcher.
But when I shutdown the FireTV and my container is still running, it just shows: -- waiting for device --
When I turn the FireTV back on, it's still not recognized (IP is still the same).
Looks like I have to connect via ABD and re-run the script every time again, when I turn on the FireTV after a shutdown.
Can someone confirm this or is it just me?

Related

[Guide] ADB with Galaxy S in Ubuntu *Updated 9-10-10*

I still see a lot of people having trouble with ADB in ubuntu, so here is quick guide for anyone still having trouble.
The guide is located HERE and also can be viewed on post #12
*Updated 9-10-10* Thanks to xipher_zero for his very quick and easy guide (Much better than my original).
Hope this helps some people having issues.
If I install unbuntu it overrides my win7 correct?
Sent from my SGH-T959 using XDA App
Oh my!! I've been searched for this guide for a long time Thanks you so much MR.the3dman
Wykedx
Oh boy... where to get started. You could install Ubuntu without overwriting your W7 installation. Then you would "dual boot" your computer. As it boots up, you choose which OS to load. Or of course you could install Ubuntu on a computer by itself.
You don't need to install Ubuntu just to use ADB. ADB runs on both Win and Linux. What is it that you are trying to do? If you just want to learn linux, then make yourself a live CD and you won't have to worry about overwriting any operating systems.
But this is not a linux forum. If this is something that you are interested in, then google is your friend.
if you are interested in trying ubuntu, you might check this out: http://wubi-installer.org/. or just run a LiveCD, as already suggested.
Do you happen to have a HTC??
My output of lsusb:
Code:
Bus 002 Device 002: ID 04e8:681d Samsung Electronics Co., Ltd
Shouldn't /etc/udev/rules.d/51-android.rules contain 04e8 instead of 0bb4?
And no, even that didn't help me. I'm on Ubuntu Lucid Lynx 64 bit.
fantasyzer said:
Do you happen to have a HTC??
My output of lsusb:
Code:
Bus 002 Device 002: ID 04e8:681d Samsung Electronics Co., Ltd
Shouldn't /etc/udev/rules.d/51-android.rules contain 04e8 instead of 0bb4?
And no, even that didn't help me. I'm on Ubuntu Lucid Lynx 64 bit.
Click to expand...
Click to collapse
Thanks for noticing that! I have updated the rules with the correct ones. I have an htc also and uploaded the wrong rules. I am also on Ubuntu Lucid 64 bit and this is what worked for me. I also have done this on my netbook which runs 9.10 so I am really not sure what the issue is then. Did you use ADB from the sdk or from the app inventor adb in the guide?
If I read correctly when browsing for this topic, your instruction is to drop in these rule files, and then run adb using sudo
When using sudo to run adb, it'll always work, regardless of what's in your rules file
If you have your rules file correct, you don't need to do sudo adb
Just adb will work fine
animefans said:
If I read correctly when browsing for this topic, your instruction is to drop in these rule files, and then run adb using sudo
When using sudo to run adb, it'll always work, regardless of what's in your rules file
If you have your rules file correct, you don't need to do sudo adb
Just adb will work fine
Click to expand...
Click to collapse
I did try this, I removed my rules and reloaded my udev folder then tried adb with sudo and it was a no go (I get nothing listed under the list of devices). Also the only way I could get adb to recognize anything without sudo was by adding a line in the rules making my user as the owner, but even still without sudo under devices I get ???????????? no permissions. With sudo and the rules everything works fine which is why I wrote the guide that way.
If you don't want to run ADB as root you can follow the steps in this post
http://forum.xda-developers.com/showpost.php?p=7282335&postcount=4 - FOR SAMSUNG ONLY DEVICES!!!
after you installed SDK.
I also have adb in my path so I do not have to be in the tools directory, and can execute it from anywhere
In my .bashrc file (if you are using bash shell)
Code:
export PATH=$PATH:/path/to/android-sdk/tools
Thanks the3dman for the guide. Unfortunately I am still having problems as when I run the sudo ./adb devices nothing is listed. I followed the directions step by step and also confirmed my Vibrant is in debug mode (also confirms on the phone it is in debug mode when connected via usb. I even rebooted everything again, double checked everything and still no devices listed. I am running Ubuntu 10.04 Any ideas? Thanks so much!
-mG
Four Step ADB installation in Ubuntu
Here is a simple guide without using custom debs:
1. Download the SDK:
wget dl.google.com/android/android-sdk_r07-linux_x86.tgz
2. Extract the archive to the current directory and move into the extracted directory.
tar xvfz android-sdk_r07-linux_x86.tgz && cd android-sdk-linux_x86
3. Move the "tools" folder to your local system folder:
sudo mv tools /usr/local/share/android-tools
4. Create a symbolic link to the adb executable:
sudo ln -s /usr/local/share/android-tools/adb /usr/local/bin/
Done!
from a terminal type:
sudo adb devices (This will start the server and search for connected devices)
Are you running Ubuntu 64bit? If so you need to make sure that you have the 32bit compatibility libraries installed. From the command line run the following:
sudo apt-get install ia32-libs
This will allow you to run 32bit apps in 32bit mode. Not sure if this is whats causing your issue, but it might be worth a shot.
xipher_zero: Thank you, I followed your steps and it is working now.
Oh, I am running 32bit Ubuntu so that was not the problem.
lqaddict said:
If you don't want to run ADB as root you can follow the steps in this post
http://forum.xda-developers.com/showpost.php?p=7282335&postcount=4 - FOR SAMSUNG ONLY DEVICES!!!
after you installed SDK.
I also have adb in my path so I do not have to be in the tools directory, and can execute it from anywhere
In my .bashrc file (if you are using bash shell)
Code:
export PATH=$PATH:/path/to/android-sdk/tools
Click to expand...
Click to collapse
This is not working for some people that is what is being figured out. I am in the process of updating my guide and the new and better one should be up shortly.
xipher_zero said:
Here is a simple guide without using custom debs:
1. Download the SDK:
wget dl.google.com/android/android-sdk_r07-linux_x86.tgz
2. Extract the archive to the current directory and move into the extracted directory.
tar xvfz android-sdk_r07-linux_x86.tgz && cd android-sdk-linux_x86
3. Move the "tools" folder to your local system folder:
sudo mv tools /usr/local/share/android-tools
4. Create a symbolic link to the adb executable:
sudo ln -s /usr/local/share/android-tools/adb /usr/local/bin/
Done!
from a terminal type:
sudo adb devices (This will start the server and search for connected devices)
Click to expand...
Click to collapse
This version worked well also! Thanks its much shorter and easier than my method.
MrGibbage said:
Wykedx
Oh boy... where to get started. You could install Ubuntu without overwriting your W7 installation. Then you would "dual boot" your computer. As it boots up, you choose which OS to load. Or of course you could install Ubuntu on a computer by itself.
You don't need to install Ubuntu just to use ADB. ADB runs on both Win and Linux. What is it that you are trying to do? If you just want to learn linux, then make yourself a live CD and you won't have to worry about overwriting any operating systems.
But this is not a linux forum. If this is something that you are interested in, then google is your friend.
Click to expand...
Click to collapse
thanks for the response, and sorrry i didn't see this before lol,
what i am trying to do is be able to use adb, at the moment I can't seem to use it because my default.prop is not correct so i heard i have to use linux to be able to edit my default prop...when i try to adb push or remount i get permission denied and yet I have superuser permission and everything.
do you have to root your phone while being an administrator on the computer?
Wykedx said:
thanks for the response, and sorrry i didn't see this before lol,
what i am trying to do is be able to use adb, at the moment I can't seem to use it because my default.prop is not correct so i heard i have to use linux to be able to edit my default prop...when i try to adb push or remount i get permission denied and yet I have superuser permission and everything.
do you have to root your phone while being an administrator on the computer?
Click to expand...
Click to collapse
Try putting your phone in clockwork recovery then issuing the adb commands, and yes your phone has to be rooted.
Thanks for the excellent how to, however...
I've still got a problem:
after "sudo adb devices" (step 5) I always get this message:
List of devices attached
??????????? no permissions;
while "lsusb" gives me that:
Bus 002 Device 007: ID 04e8:681c Samsung Electronics Co., Ltd Galaxy Portal/Spica Android Phone
so how can I solve this?
(Kubuntu 10.10 is my current os)
RiverTam said:
I've still got a problem:
after "sudo adb devices" (step 5) I always get this message:
List of devices attached
??????????? no permissions;
while "lsusb" gives me that:
Bus 002 Device 007: ID 04e8:681c Samsung Electronics Co., Ltd Galaxy Portal/Spica Android Phone
so how can I solve this?
(Kubuntu 10.10 is my current os)
Click to expand...
Click to collapse
you'll need to edit a usb rule to "look" for the samsung phone. i forgot what file to edit and what to put in there, once i find the file, i'll post it from my laptop.
EDIT: lol, i found it.
http://forum.xda-developers.com/showpost.php?p=7343021&postcount=1

[Q] busybox throwing "precmd" errors after rooting ICS

Hello,
Thanks for looking at this post! I wanted to post it to the rooting thread, but I'm too much of a noob to have access to developer threads. I searched around (both here and google), but couldn't find any useful info on my problem.
I'll get right to the point. I rooted my Acer A500 (after doing an OTA update to 4.0.3), as per the instructions on this thread:
http://forum.xda-developers.com/showthread.php?t=1546593
Everything seems to have worked well (I have root access, etc), but there is something quirky with Busybox. Every time I type a command in terminal (it doesn't matter which - I use both connectbot and terminal emulator), I get a "precmd: not found" message (even for simple things like directory changes). The odd thing is: the commands work, but I still get the message. For instance, if I ask for a directory listing, I'll get the listing, and at the end, it will say precmd: not found (usually with the name of the command it's referencing, e.g. bash: precmd: not found).
It seems to be looking for it in /system/xbin/bash, but bash is in /data/local; I tried creating a symlink but it didn't work ("link failed Cross-device link"). This is really a nuisance, and I'd like to try installing some linux user-land tools, but I fear the outcome might be disastrous if the busybox tools are misconfigured somehow.
I'd appreciate and help/suggestions. Many thanks.
mdhobbes said:
"precmd: not found" message
Click to expand...
Click to collapse
Connectbot seems to set shell variable 'PS1' to "$(precmd)[email protected]$HOSTNAME:${PWD:-?} $ ".
It means your shell (the busybox's ash applet) will try to use output from 'precmd' as a part of a command prompt.
So when 'precmd' was not provided, error messages will be generated wenever a prompt was to be shown.
Though the messages should be safe to ignore, you may get rid of them by setting something harmless to PS1 like:
PS1="> "​, or reset PS1 by:
unset PS1​from your (busybox) shell.
# The same method should work for terminal emulator.
precmd is a shell function.
To display it run this from the default shell:
Code:
typeset -f
You will see something like
Code:
function precmd {
typeset e=$?
let " e " && print -n "$e|"
}
If you add that to one of your shell's startup files (".profile", ".bashrc", etc.) you will have a working precmd.
It works (function runs), but shows nothing neither 0 or error code. What is it?
[edit]
Nvm, my fault, figured it out

[Q] Rooting Nook Classic (Nook First Edition)

I know that this is for second edition but I don't seen a forum for the first edition so this seems to be the closest match. Anyway I am trying to root my Nook Classic (the one with a E-ink display on the top and color touch screen on the bottom). I am following the instructions on nookdevs for rooting the Nook Classic on all hardware and firmware versions (I can't post the link here as I am new but PM me and I can pass it that way if you need). The method is that sometimes when the web browser browses a certain type of website it crashes and sometimes starts adbd and you can connect adb at that point.
I have managed to get adb to connect, pull the init.rc file, make the needed change, but when I try to push the ratc.bin file adb says it goes though but then the second command $ cd /sqlite_stmt_journals (after starting adb shell) says it is not found. So I can't go any further. ratc.bin is what gives root access long enough to push the init.rc back and without being able to run that, well I am up a creek.
Any ideas?
dob43 said:
I know that this is for second edition but I don't seen a forum for the first edition so this seems to be the closest match. Anyway I am trying to root my Nook Classic (the one with a E-ink display on the top and color touch screen on the bottom). I am following the instructions on nookdevs for rooting the Nook Classic on all hardware and firmware versions (I can't post the link here as I am new but PM me and I can pass it that way if you need). The method is that sometimes when the web browser browses a certain type of website it crashes and sometimes starts adbd and you can connect adb at that point.
I have managed to get adb to connect, pull the init.rc file, make the needed change, but when I try to push the ratc.bin file adb says it goes though but then the second command $ cd /sqlite_stmt_journals (after starting adb shell) says it is not found. So I can't go any further. ratc.bin is what gives root access long enough to push the init.rc back and without being able to run that, well I am up a creek.
Any ideas?
Click to expand...
Click to collapse
>> http://www.mobileread.com/forums/forumdisplay.php?f=209
>> http://www.the-ebook.org/forum/viewforum.php?f=44&sid=e250da1c3a4967da22dae8ca2d104ac8
Thanks osowiecki, I did find a thread on Mobile read shortly after I posted this. The other is non-english I am afraid, and sadly I only speak english.
Anyway I did mange to root my nook today. And I am posting here as I hope it will help someone in the future:
Yessssssssssssssss! I finally hacked my Nook Classic (Nook First Edition called by some)! I followed most of the instructions at http://nookdevs.com/Rooting_B&N_revision_1.4_to_1.7_on_any_hardware
I only tweeked in a few places. Here is a general list of what I did:
1. Look at the site above and grab the linked file (ratc.bin). Then go to this thread http://forum.xda-developers.com/showthread.php?t=1474956 and at the top there grab the adb + fasboot + drivers.zip. The reason I used this is because it is much smaller than the full Andriod SDK (which is over 500mb btw) and I figured this would work since it works for Nook Tablets. I didn't install the drivers or anything though. Just used adb.
2. Went with nook browser to http://nookadb.suspended-chord.info/ to crash the browser. If this should ever be down I see on the nookdevs page there is a discussion with the code that is on the crash page so you can put it on any web server and still do this procedure.
3. Once it crashed I went to cmd (comand prompt) and navigated to the folder that had the adb package I downloaded and decompressed earlier. I suggest putting this folder on your desktop for easy use. I gave the command
adb connect yournookip:5555 please note that the nookdevs instructions are not specific in that you NEED the :5555 after the IP. If it doesn't connect, keep crashing the browser by going to that page until it connect.
4. extracted the init.rc file with the command
adb pull /init.rc then edited as per the instructions on nookdevs
5. Now here is where things are different. I tried to push the ratc.bin file and while that seemed to work the commands after it didn't. It would keep saying the file wasn't there. I was cut and pasting the commands direct from the website so I don't think that was the issue. So what I did was grab the bat file at www.mobileread.com/forums/showthread.php?t=121655&page=2 by Jackr and edit it slightly removing the bit about location of adb and placed the bat in the same folder as adb on my desktop and ran it.
6. This actually worked and the bat prompted me to crash the browser again. I kept trying it took a while but as soon as I did it pushed the modifyed init.rc to the nook. The another reason why I think the bat/script is important as my nook totally froze a second after I crashed it. I think that if I was trying to paste that command manually after connecting I would still be trying lol.
7. After reboot I was fully rooted and I installed a bunch of apps from nookdevs using adb. Just make sure the apk (app file) is in the same directory as adb and use the command install nameofapp.apk
8. If you want to use nookmarket app to install files by itself then you need to:
adb connect nookIP:5555
adb shell
then type this after the #
/system/xbin/sqlite3 /data/data/com.android.providers.settings/databases/settings.db "update secure set value=1 where name='install_non_market_apps'"
It will allow nookmarket to install apps on the fly over the net. If you ever want to turn it back off just change the value=1 to value=0 in the above command. Of course you can always use adb, but it can be handy.
Of all the apps I would definitely suggest Nooklibary and wifilocker along with Nooksync. There are several other good nook apps such as trook. Oh I should also mention that Nook Browser still works fine. I think using the batfile/script helped with that situation.
I hope this helps someone who is thinking of taking the plunge (and trying to find out HOW). I wouldn't have bothered if B&N actually continued to update the Nook Classic and add the features that we BEGGED for (and are in NookLibrary). Instead of spending time adding things we didn't like games.
I've tried a thousand times, but always get "failed to copy 'init.rc' to '//init.rc': Permission denied" so RATC must not be working. And I'm on mac, so no bat. Any ideas?
lolbutts said:
I've tried a thousand times, but always get "failed to copy 'init.rc' to '//init.rc': Permission denied" so RATC must not be working. And I'm on mac, so no bat. Any ideas?
Click to expand...
Click to collapse
I would suggest looking at the bat, and creating the equivalent in apple script. If I remember right Mac's still have that option. Another option would be to run say WinXP in emulation (with virtual box for example) and do it that way.
How to root the original Nook tablet (model number: BNRZ100)
dob43 said:
Yessssssssssssssss! I finally hacked my Nook Classic (Nook First Edition called by some)! I followed most of the instructions at http://nookdevs.com/Rooting_B&N_revision_1.4_to_1.7_on_any_hardware
Click to expand...
Click to collapse
Okay, since nookdevs.com has apparently been down for sometime now, I was checking out the mobileread.com link that was shared above and found out the info that I have been searching for to find out how to root the Nook. Be forewarned that I have not tried this yet, but I am about to, and afterwards I will post the results, I am just posting it as sort-of a guide for myself and anyone interested at this point. I will edit this post accordingly once I am successfully rooted.. Please see below for links / details.
Disclaimer: I am not responsible for any damage that is done by you to your Nook, either physically or otherwise. I am just showing you what I have researched and if you choose to follow these directions it is at your own risk.
Which Nook Device Do You Have?
click here to find out:
http://glyde.com/glydecast/how-to/which-nook-do-you-have/
Remember, this is for the first generation only (model number: BNRZ100)
Here is a visual aid that will help you find the SD card that you need to look for once you get the Nook opened up (yes, you will need to open your Nook and access the motherboard):
http://www.wired.com/2009/12/nook-torn-open-hacked-and-rooted/
How to open the Nook up:
https://www.youtube.com/watch?v=GEDqiNiQFHk
Hint: you don't need to take to front panel / bezel off, just the back section because all we need is access to the motherboard to be able to remove the internal SD card, which contains the file that we will be editing.
Finally, the info that you need to root the device (also posted below the link for quick reference, and just in case the link gets broken):
http://www.mobileread.com/forums/showthread.php?t=128210
How to root the Nook, after you figute out how to open it up:
Just you need a microSD Card reader + Linux (any linux ) !
just you should remove the System file MicroSD ( which is inside the Nook )
put it in your PC , change the "init" file with Any txt editor !
just find "service adbd /sbin/adbd" and change the "disable" to "enable" ...
you are done !
Wow I had no idea that Nookdevs went down. Thankfully I did archive all the information on that page. While the method you mentioned is great, and the best, only the earliest nook classic's had removable system SD cards. After the first batch they were soldered chips instead.
With that in mind I am posting what was contained in the link I posted before on NookDevs since it is not available on the internet archive.
------------
This method of rooting is known to work on B&N firmware revisions 1.4-1.7, on all hardware versions. Unlike the other rooting methods, this one involves an element of luck -- it takes advantage of a memory-corrupting bug in the web browser, and its success depends on the current contents of the memory which depends on more variables than we can control. As such, the method requires a little bit of (or more) patience. Warning: After this root is completed, the web browser will be irreversibly damaged.
Contents
1 Preparation
2 Enable adbd on the Nook
3 Pull and modify /init.rc
4 Getting root access
4.1 Keeping root access
5 Your rooted Nook
6 Notes
Preparation
Install Google's Android platform tools from developerdotandroiddotcom. These include many useful utilities, such as the ADB control software.
Open up a terminal to use ADB
Open a command prompt
Navigate to the directory that you installed, then go into the platform-tools subdirectory. This is where the adb executable lives.
Connect your nook to the same WiFi that your computer is on. You need direct (non-firewalled) access to the Nook's IP address to connect via ADB.
Find your Nook's IP address (How to find our your nook's IP address)
Write it down somewhere.
Enable adbd on the Nook
This is the luck portion of the root. adbd is the other half of ADB: ADB runs on your computer, and tries to connect with adbd on the nook. Once connected, you can issue commands, shuffle files, and install applications. Our final goal is to be able to start and stop adbd at will[1].
Open the Nook's web browser and navigate to the web site nookadb.suspended-chord.info. You may want to bookmark the page for a quicker access.
When you load this web page, the browser will crash. (It may automatically reload itself a few times first.) After it crashes, it might enable adbd.
Go back to the command prompt on your computer, and type:
adb connect <nook's IP>
One of two things will happen:
You will get the message unable to connect to <ip address>:5555.
In this case, restart your web browser and load the web page again (from the history or the bookmark). You may have to do this a dozen times or more, so keep at it!
You will get the message connected to <ip address>:5555.
Success!
At this point you have (temporarily) access the nook via ADB, can now enter commands on your PC for the Nook, and can move files back and forth. If you reboot the nook, adbd (the nook companion to ADB) will not be running.
Pull and modify /init.rc
If this isn't your first time through, and you have a modified copy of init.rc, skip this step.
Now that you can connect into the Nook, you will want to pull and edit the /init.rc file. This file is run when the nook turns on, and includes an option to enable adbd (disabled by default). Download the file to your PC with:
adb pull /init.rc
Open this file with Notepad (or a different plain text editor), and find the part the lines:
service adbd /sbin/adbd
disabled
Change 'disabled' to 'enabled' and save the file.
Getting root access
You got the web browser to launch adbd, but you only have the privilege level of the web browser's user - system. To install software and to start adbd when the Nook reboots, you need root access. Rage Against the Cage will give you root access. Next, you'll restart adbd, and push the modified init.rc back to the nook. After that, reboot the nook and you're done!
Download [ratc.zip].
Extract it to the same directory that adb is stored in, then go back to the command prompt:
adb push ratc.bin /sqlite_stmt_journals
adb shell
$ cd /sqlite_stmt_journals
$ /system/bin/chmod 777 ./ratc.bin
$ ./ratc.bin
(several lines of output follow -- don't do anything, a few seconds later adb will disconnect you.)
Keeping root access
If everything went well, you should have root access on the Nook. However, the Nook is now relatively unstable and may stop working at any point, so work quickly!
The nook may crash - just reboot, then restart the process from scratch. (Remember, you don't need to pull init.rc again.)
First, you need to stop your PC's ADB server. It still thinks that it's connected to the nook.
adb kill-server
Second, you need to re-establish the connection with adbd on the nook and then push init.rc file. You can do this by typing these commands[2]:
adb connect <nook IP>
adb push init.rc /
Perform the browser crash procedure again. After each attempt, check if the computer successfully transferred init.rc. If it did, you're done!
If the nook crashes before the transfer completes (so you are not able to connect to your nook), go back to "Enabling adbd on the Nook". You can skip "Pull and modify /init.rc", but do the other steps.
If the adb push gives a permission denied error, redo the "Getting root access", and try again. You may have to do this quite a few times until the whole process succeeds.
Your rooted Nook
Assuming everything worked, you now have a rooted Nook with adbd running on reboot, with root access. You should be able to establish the connection with adbd on the nook without jumping through any other hoops.
What's next? Browse the applications, and install to your heart's content.
Suggestions:
Mynook.ru Launcher A polished replacement launcher. You must replace the launcher to access additional applications with the nook.
Trook A RSS feed reader for the nook, and much more! It can install applications, too. Just go into the nookdevs feed.
NookLibrary A replacement library for the nook. If unifies sideloaded books with Barnes & Noble content, and offers other improvements.
NookMarket A program that allows you to easily install everything on nookdevs. Trook offers more functionality (imho)
Games There are a few games on the applications page.
Notes
↑ There's also a Python script to automate the process: root-nook-eink.tar.xz (Updated Jun 6 , 2011)
↑ You may want to run a script that automatically issues the following commands, reducing the chances of the nook crashing before init.rc has been pushed to it. In this case, extract this [batch file] to the same directory as ADB. Run it by typing:
push.bat
It will prompt you for your nook's IP address, then try connecting. Every few seconds, ADB will complain that it can't connect to the nook. Let's fix that.
------------------------------------------------
The above is from Nookdevs.com and I did not write it I am only posting it here as the site has went down.
I am also posting the html file that is needed to do this (although here it is in txt format). If the the site listed above ever dies you can put this on a website somewhere to use it. And the ratc.bin file needed.
And finally I am adding the apps that make rooting the nook classic worth while. The improved library definitely. Which btw are two parts, the library app and the nooksync which enables you to download from B&N directly. Otherwise you need to use the normal nook library app to download then you can read with the nookdev version. I am not sure which version of the library works best, been a while since I installed it so I included both.
Also wifilocker is great to turn wifi on/off not to mention lock it and keep the nook from going to sleep while you are connected to adb. I definitely suggest installing that as well. The others are handy. Trook can connect to calibre and download books from your desktop. The nook browser is a improved web browser for nook classic, although I never really bothered with it.
Nook notes is good for quick little notes when you don't have any other device handy. Txt reader reads txt files, not the best but it is handy. Personally I just make epubs of anything with calibre. But if you don't want to bother making a epub first, this is handy.
Hope this helps someone!
I downloaded files and rat.bin has malware in it.
I also have hard time understanding the ones that are explained above. Is there any easier way to do it? Does anybody have a good tutorial video or "fool-proof" instruction on this? I have Nook classic wifi version.
I would like to read kindle books on nook as well as the nook books. Is this even possible on this model?
Thanks for the help
kidollt said:
I downloaded files and rat.bin has malware in it.
I also have hard time understanding the ones that are explained above. Is there any easier way to do it? Does anybody have a good tutorial video or "fool-proof" instruction on this? I have Nook classic wifi version.
I would like to read kindle books on nook as well as the nook books. Is this even possible on this model?
Thanks for the help
Click to expand...
Click to collapse
Er of course rat.bin would be flagged as malware, because technically it is. You are hacking a system that is designed not to let you in. But in this case all rat.bin will do is let you in so you can get root of your own device, nothing else. No back doors for anyone else or making your device do odd things.
The problem you are having is not using rat.bin, without that you might as well not try. I also only managed to do it with a BAT file so that it would keep trying to push the init.rc RIGHT AFTER the rat.bin was used. Generally you can't type fast enough to do the push. The window of opportunity is very very small.
This does work but is tricky as the window of opportunity is very small. I tried for hours trying to get it to work, then I used the BAT file to make the push automatic and on the second try it worked. Rooting the Nook Classic is the toughest device to root that B&N made. If you have one of the really early models that has a removable internal SD card then you can pull that, made modifications (install a old version of the ROM, make a modification to init.rc), and reinstall the SD card. I forget the serial numbers of the models that this worked with, but I do know it was the first batch of Nooks B&N made. If you got yours after the first Christmas, then it is likely it doesn't have a internal SD card that you can remove. Later on they soldered them to the board.
As for reading kindle books, no. There isn't a mobi reading app that I have found, let alone kindle books with DRM. The better bet is to use Calibre calibre-ebook.com to convert your kindle books to epub. But they can't be encrypted/DRM. If they are, then you have to remove that. There are scripts for Calibre that can do it for nook and kindle. I use calibre to convert my mobi/kindle books to epub then side load them. Another benefit of rooting a nook classic, you can then browse and download wireless from your calibre library with the took app. Although I never bothered and just did the transfers via USB.
Hi!
I would like to ask for help in this case:
I followed all the instructions here, however for some reasons I wanted to install this app first using the command "adb push Home.apk /system/app" pushing the app found here: Github
Now it turns on/off, shows "Home", batter and time at the top bar, but everything else is black both the Eink screen and the touchscreen as well.
It does not connect to wifi automatically so I can't connect via ADB to switch back to the original Home apk
Please help me, what should I do?
Is 1.7 software not rootable?
I can't get adb to come on, no matter how many browser crashes I do. Even wrote a script for it:
@echo off & setlocal
set IP=192.168.0.119
set loopcount=0
set s
:loop
set /a loopcount=loopcount+1
echo Connecting %loopcount% time...
adb connect %IP% | find /i "connected to" > %s
if errorlevel 1 (
echo Not successful + %ERRORLEVEL% + %s%
goto loop
) else (
echo Successful + %ERRORLEVEL% + %s%
adb shell
goto exitloop
)
:exitloop
pause
Click to expand...
Click to collapse
Is OTA rooting (by redirect on sync.barnesandnoble.com) not possible any longer as well?
Sorry for the late response, for some reason the email telling me there was a post here just arrived TODAY lol.
It should be, I did it with 1.7. The script I have I modded a little from another one I found online here is mine:
Code:
@echo off
echo The website hack seems to work on the round right after it has an instant crash.
echo.
adb kill-server
adb start-server
set /p ip=Enter the IP here.
:CON
cls
echo Crash the browser.
echo.
adb connect %ip%
for /f "tokens=2" %%A in ('adb devices') Do (Set dev=%%A)
if %dev%==device goto INT
echo.
goto CON
:INT
if exist ratc.bin (set f1=1) else (set f1=0)
if exist init.rc (set f2=1) else (set f2=0)
if %f1%==%f2% (if %f1%==1 (goto RTT) else (goto 2fi)) else (goto 2fi)
:2fi
if %f1%==0 (echo "The ratc.bin file is not in the %cd% directory.") else (echo Ratc.bin file present.)
echo.
if %f2%==0 (echo "The init.rc file has not been pulled from the device to the %cd% directory, pulling now.") else (echo Init.rc file present.)
if %f2%==0 adb pull /init.rc
echo.
echo Please add the required files and restart this batch. If init.rc was just pulled, you will need to modify the file.
cmd
:RTT
adb push ratc.bin /sqlite_stmt_journals
adb shell cd /sqlite_stmt_journals
adb shell /system/bin/chmod 0777 /sqlite_stmt_journals/ratc.bin
adb shell /sqlite_stmt_journals/ratc.bin
adb kill-server
adb start-server
goto CO2
:CO2
cls
echo Re-crash the browser.
echo.
adb connect %ip%
for /f "tokens=2" %%A in ('adb devices') Do (Set dev=%%A)
if %dev%==device goto PSH
echo.
goto CO2
:PSH
adb push init.rc /
adb shell reboot
echo.
echo Congrats! The device is now rooted.
echo.
cmd
It is RANDOM on the browser crashes. Sometimes it happens fast, another time it look me a hour or two to get a good crash and root the nook. Also if it doesn't seem to be doing it for a long time, try rebooting the nook (hold down the power until the screen blanks then press the button again to restart it). In my opinion, this is the toughest Nook to root, but definitely worth it. Especially now that B&N ended support some time ago. Also make sure the ADB, this script, and the ratc.bin is in the same folder. I used a folder on the desktop as it made it much easier/faster to get to. Also after you get the init.rc and modded, that should be in the same folder as well.
As for OTA rooting, I have no idea if it will work or not. I never used that method. But if it depended on any sort of connection from B&N, I doubt it will work now since they have abandoned the Nook classic.
If you need any of the nook apps that were on the nook developer site let me know. I downloaded all the apps before the site went down.
dob43 said:
Sorry for the late response, for some reason the email telling me there was a post here just arrived TODAY lol.
It should be, I did it with 1.7. The script I have I modded a little from another one I found online here is mine:
Code:
@echo off
echo The website hack seems to work on the round right after it has an instant crash.
echo.
adb kill-server
adb start-server
set /p ip=Enter the IP here.
:CON
cls
echo Crash the browser.
echo.
adb connect %ip%
for /f "tokens=2" %%A in ('adb devices') Do (Set dev=%%A)
if %dev%==device goto INT
echo.
goto CON
:INT
if exist ratc.bin (set f1=1) else (set f1=0)
if exist init.rc (set f2=1) else (set f2=0)
if %f1%==%f2% (if %f1%==1 (goto RTT) else (goto 2fi)) else (goto 2fi)
:2fi
if %f1%==0 (echo "The ratc.bin file is not in the %cd% directory.") else (echo Ratc.bin file present.)
echo.
if %f2%==0 (echo "The init.rc file has not been pulled from the device to the %cd% directory, pulling now.") else (echo Init.rc file present.)
if %f2%==0 adb pull /init.rc
echo.
echo Please add the required files and restart this batch. If init.rc was just pulled, you will need to modify the file.
cmd
:RTT
adb push ratc.bin /sqlite_stmt_journals
adb shell cd /sqlite_stmt_journals
adb shell /system/bin/chmod 0777 /sqlite_stmt_journals/ratc.bin
adb shell /sqlite_stmt_journals/ratc.bin
adb kill-server
adb start-server
goto CO2
:CO2
cls
echo Re-crash the browser.
echo.
adb connect %ip%
for /f "tokens=2" %%A in ('adb devices') Do (Set dev=%%A)
if %dev%==device goto PSH
echo.
goto CO2
:PSH
adb push init.rc /
adb shell reboot
echo.
echo Congrats! The device is now rooted.
echo.
cmd
It is RANDOM on the browser crashes. Sometimes it happens fast, another time it look me a hour or two to get a good crash and root the nook. Also if it doesn't seem to be doing it for a long time, try rebooting the nook (hold down the power until the screen blanks then press the button again to restart it). In my opinion, this is the toughest Nook to root, but definitely worth it. Especially now that B&N ended support some time ago. Also make sure the ADB, this script, and the ratc.bin is in the same folder. I used a folder on the desktop as it made it much easier/faster to get to. Also after you get the init.rc and modded, that should be in the same folder as well.
As for OTA rooting, I have no idea if it will work or not. I never used that method. But if it depended on any sort of connection from B&N, I doubt it will work now since they have abandoned the Nook classic.
If you need any of the nook apps that were on the nook developer site let me know. I downloaded all the apps before the site went down.
Click to expand...
Click to collapse
Does this still work? I recently dug up my old nook 1st edition, I tried the website and it didn't crash my browser, it just sat there forever loading.. I looked at the site, now it's using TLS 1.3, but old nook 1st edition is stuck with TLS 1.2... I tried for many hours just couldn't "crash" the web browser at all...

[HOW-TO] Lenovo IdeaTab A1000 Rooting

HOW TO ROOT YOUR LENOVO IDEATAB A1000​
<DISCLAIMER>​
By attempting these steps, your warranty will be void. Even worse than that, it might cause crashes, freezes, random explosions, 2nd degree burns, or even turn your beloved tab into $100+ paperweight. What works on mine might not work on yours, so don't attempt if you don't know what you're doing. Do at your own risk. Corrections are welcome. I must admit that I'm not an expert, so any info I posted might be wrong, and I can't offer you much help. I'm not responsible for anything arising from the use of this how-to. I can only wish you good luck.
<WHY ROOT?>​
- Without root or OTA upgrades (at time of writing, Indonesian customers still can't get it), you'll be stuck with ~500MB internal memory. That's annoying.
- You're stuck with the default IO scheduler (cfq) and governor (hybrid, haven't heard that one..)
- You have an incredibly large amount of bloatware you can't get rid of, in that already cramped up internal storage
- Did I mention freedom?
<REQUIREMENTS>​
This method is originally used to root Acer Iconia B1-A71. Somehow I noticed that the two actually has the same chipset, MTK8317 (if it really was relevant ). So I tried the method, and through sheer n00b's luck, it worked like a charm!
Lenovo IdeaPad A1000-G --> 4GB storage, 2G/EDGE. This method haven't been tested on A1000-T/F, different storage cap (16GB, etc.) or other variants, but it should work with slight modification. Screenshots of my specs are attached below. Remember, proceed at your own risk!
A Linux System. Never tried on Windows or Mac. I personally used Linux Mint 15. The source post uses Ubuntu.
working ADB (android-tools-adb). You can get this from synaptics, apt-get, etc. If your system can detect adb devices, you should be fine.
Superuser Binary
Busybox Binary (You can get these two from the links on original post. XDA says noobs can't post links :'( )
ORIGINAL THREAD
<CREDITS>​
XDA Senior Member entonjackson, for writing such a noob-friendly how-to for rooting Acer Iconia B1-A71 and for allowing me to use it for this how-to.
XDA Member alba81, for discovering the method as acknowledged on the original post by entonjackson
All awesome gurus on XDA which I can't mention one by one.
<THE STEPS>​
1. Extract the android sdk to your home folder, e.g. a user named Bob will use like /home/bob
2. Open a terminal
3. Now plug your A1000 into your machine and turn on Debugging Mode (Go into Settings -> Developer Tools, turn on Developer tools, then turn on USB Debugging Mode)
4. Now back at the keyboard of your Linux machine in your terminal type:
Code:
sudo adb devices
The output should be something like:
Code:
123456789ABCDEF device
If it's not, google for it. Somehow your Linux hasn't detected the A1000, although the android sdk for Linux brings all needed drivers with it.
If your device was found, congratulations. The adb connection between your linux machine and your tablet is intact.
5. Now extract the downloaded busybox archive to your home folder, in it there should be a busybox binary. So Bob does:
Code:
sudo ./adb push /home/bob/busybox /data/local/tmp
Code:
sudo ./adb shell
Code:
chmod 755 /data/local/tmp/busybox
6. You should copy the busybox binary into a directory where you can access it as a plain non-root user on the tablet. We need this binary. so we can apply unix tools like telnet, dd, cat, etc. But for now we need it to establish a telnet session between our tablet and our linux machine.
(This point is written on original post. Seems important, but as soon as I finished step 5, I can use those tools)
7. Dial *#*#3646633#*#* to enter Engineer Mode
8. Go to Connectivity -> CDS Information -> Network Utility
9. type the following command:
Code:
/data/local/tmp/busybox telnetd -l /system/bin/sh -p 1234
Advice from original poster: copy and paste it from the browser on your tablet, because dependent on which keyboard app installed, this can be freakin tricky. In the next step you will learn, why it's so important why this command should be correct.
10. Tap on Run. You won't get any feedback, so you will never know if the entered command runs properly or not. That's why you should make sure the command is ok.
Now we have started our telnet server on the tablet.
11. Back in the terminal type:
Code:
/data/local/tmp/busybox telnet 127.0.0.1 1234
If you now get an error like couldn't find busybox or something, then either adb push failed or you forgot to chmod, in step 5
12. Now enter:
Code:
cat /proc/dumchar_info
You should get a bunch of lines, try to find a line containing the partition named android
{..... partition list .....}
android 0x0000000028A00000 0x00000000020E8000 2 /dev/block/mmcblk0p3
{..... partition list .....}
13. We will create a dump of our android system. This is the point where different variants *MIGHT* have different parameters. This step is important, as wrong parameter will result in unmountable image.
Stop. Take a deep breath. If you're not familiar with dd, find a good doc of it. There's a plethora of them.
Get yourself a programmer's calculator (Linux Mint 15 has one built in).
Here's what you'll do :
Convert the hex number on the 3rd column into decimal. In my case (0x20E8000) will yield 34504704. Divide by 4096. The result (8424) goes to the skip parameter.
Convert the hex number on the 2nd column. In my case (0x28A00000) will yield 681574400. Divide by 4096. The result (166400) goes to the count parameter.
So the full dd command will look like :
Code:
dd if=/dev/block/mmcblk0 bs=4096 skip=8424 count=166400 | gzip > /cache/system.img.gz
Do a full sanity check before hitting enter! It will take about 5 minutes.
14. After it's finished we must make the image readable for adb, so we do:
Code:
chmod 777 /cache
and
Code:
chmod 777 /cache/system.img.gz
15. Leave the telnet, and then adb shell session by:
Code:
exit
Code:
exit
16. Now we pull our image by
Code:
sudo adb pull /cache/system.img.gz
wait 1-2 minutes.
It should be then located inside /home/bob. It did for me. If not, do a search . It should be a .gz, extract it right there (or /home/bob if it isn't there)
17. Now we need to modify our system image by adding the tiny but helpful su binary. Extract the SU binary to /home/bob.
18. We create a folder where we will mount our system image to. To create it do:
Code:
sudo mkdir /media/a1000
19. Now we mount it:
Code:
sudo mount -o loop /home/bob/system.img /media/a1000
if it fails, then you entered wrong parameters on step 13
20. Now we copy our SU binary to our mounted system image:
Code:
sudo cp /home/bob/su /media/a1000/bin
21. the su binary needs to have the proper rights to make it usable, so we 'suid' it with:
Code:
sudo chmod 06755 /media/a1000/bin/su
22. Let's unmount our baby by:
Code:
sudo umount /media/a1000
and because bob doesn't like a messed up system, he does:
Code:
sudo rm -rf /media/a1000
because he hopefully won't need it anymore.
23. We have to gzip it again to bring it back to where it belongs to. this we do by:
Code:
cd /home/bob
Code:
gzip /home/bob/system.img
24. So here we are now, we made it to the final Boss fight! The next steps are dangerous and should be performed with caution. We copy back our modified system image, which can brick your device, if you do a mistake! Enter adb shell again :
Code:
sudo adb shell
25. Remove the old boring image:
Code:
rm /cache/system.img.gz
26. Leave adb shell
Code:
exit
27. copy our cool new system image containing the su binary:
Code:
sudo adb push /home/bob/system.img.gz /cache
28. Enter adb shell again
Code:
sudo adb shell
29. Usually the telnet server on the tablet is still running, at least in my case it's been like that. That's why we can directly connect to the telnet server with:
Code:
/data/local/tmp/busybox telnet 127.0.0.1 1234
If this doesn't work, then obviously your telnet server isn't running anymore. So on your tablet if the telnet command is still entered (see step 9), tap on Run again and repeat step 29.
30. Now this is the most dangerous step in this how to (no it wasn't the mkdir one). You can copy following command to make sure everything is fine and paste it into your telnet session on your linux terminal.
<WARNING! SANITY CHECK! MAKE SURE *ALL* THE DD PARAMETERS MATCH THE FIRST DD (STEP 13) OR YOUR A1000 WILL TURN INTO A VERY EXPENSIVE PAPERWEIGHT!>
Code:
[B]/data/local/tmp/busybox zcat /cache/system.img.gz | dd of=/dev/block/mmcblk0 bs=4096 seek=8424 count=166400[/B]
After 1-2 minutes you're done, if your tablet or pc or yourself didn't catch fire, everything's fine.
31. Leave telnet / adb shell by doing
Code:
exit
Code:
exit
32. Reboot your A1000 via ADB, then exit
Code:
sudo adb reboot
Code:
exit
33. Unplug your tablet from PC
34. Install Superuser (No, not SuperSU, cause it won't work!). I personally use Superuser by ChainsDD, from Play Store
35. Be lucky. Your tablet and thus you are now free!
Don't forget to hit thanks, if this helps ​
hi, after step 13 (i double checked the command), i get this error
Code:
/system/bin/sh: can't create /cache/system.img.gz: Permission denied
/dev/block/mmcblk0: cannot open for read: Permission denied
I have the WiFi 4G version
Im too stuck in step 13.....nothing wrong with the script, can u give me a solution?
Im using A1000G also
@ts
Your guide work perfectl, in windows enviroment but mount step still need linux,
I've question are you using DirectoryBinding? Mine always close when playing Real Racing, its very annoying
You have suggeztion or alternative for DirectoryBinding?
Root with Windows ?
Hi,
I am a new member because i bought this tblet but i can't root. I don't have a linux environment, so there is a solution with W8 Pro 64 ?
Thanks a lot for you help,
ulisez said:
hi, after step 13 (i double checked the command), i get this error
Code:
/system/bin/sh: can't create /cache/system.img.gz: Permission denied
/dev/block/mmcblk0: cannot open for read: Permission denied
I have the WiFi 4G version
Click to expand...
Click to collapse
have you chmod-ed the busybox (or is the chmod successful without error)? Try chmod-ing the /cache before attempting step 13. It seems that you still don't have access to the NAND device (mmcblk0). Have you updated firmware via OTA?
artonelico said:
Im too stuck in step 13.....nothing wrong with the script, can u give me a solution?
Im using A1000G also
Click to expand...
Click to collapse
Do you encounter the same error message like ulisez had? Could you post the screenshot of the partition list (the lines after you execute dumchar_info)?
rmage said:
@ts
Your guide work perfectl, in windows enviroment but mount step still need linux,
I've question are you using DirectoryBinding? Mine always close when playing Real Racing, its very annoying
You have suggeztion or alternative for DirectoryBinding?
Click to expand...
Click to collapse
I personally use Link2SD by Bulent Akpinar to link apps to 2nd partition on my SDcard.
Letsar said:
Hi,
I am a new member because i bought this tblet but i can't root. I don't have a linux environment, so there is a solution with W8 Pro 64 ?
Thanks a lot for you help,
Click to expand...
Click to collapse
The original developer who posted the method (entonjackson) plans to integrate the method in the next release his toolkit, the Acer Iconia Toolkit. I think you should check his thread : http://forum.xda-developers.com/showthread.php?t=2240029
sammymaddog said:
have you chmod-ed the busybox (or is the chmod successful without error)? Try chmod-ing the /cache before attempting step 13. It seems that you still don't have access to the NAND device (mmcblk0). Have you updated firmware via OTA?
Do you encounter the same error message like ulisez had? Could you post the screenshot of the partition list (the lines after you execute dumchar_info)?
I personally use Link2SD by Bulent Akpinar to link apps to 2nd partition on my SDcard.
The original developer who posted the method (entonjackson) plans to integrate the method in the next release his toolkit, the Acer Iconia Toolkit. I think you should check his thread : http://forum.xda-developers.com/showthread.php?t=2240029
Click to expand...
Click to collapse
Link2SD doesn't link app data, do you have any option?
yes i had same message with ulyses, by the way im from indonesia too can i contact you through chat client?
oh yeah im using windows 7 and using cmd as a terminal in linux
thx before bro
sammymaddog said:
The original developer who posted the method (entonjackson) plans to integrate the method in the next release his toolkit, the Acer Iconia Toolkit. I think you should check his thread : http://forum.xda-developers.com/showthread.php?t=2240029
Click to expand...
Click to collapse
Ok, i see his toolkit. It's very good. I'll wait
rmage said:
Link2SD doesn't link app data, do you have any option?
Click to expand...
Click to collapse
I'm not sure whether the stock kernel of our devices supports init.d, thus supports CronMod/Data2SD. Lenovo locked our bootloader, and currently there's no way around it. So I personally think, Link2SD method are the best option for now.
Let's give it several months until our dev gurus bring their miracles upon this device
The attached image shows mt6577 Hardware, can u provide the Soc details please
Hi, Can any one upload Lenovo ideatab A1000 system.img
in step 20, it appears you are writing to a /bin directory on the android system. However such a directory is not visible either through shell or the system telnet account.
Do I need to understand something else about android to make sense of this.
regards
vidya
one month gone past but the op seems to be in caves or has bricked the device
STOCK ROM
CAN ANY BODY PROVIDE ME A STOCK ROM OF THIS DEVISE
I HV ROOTED SUCCESSFULLY BY A VERY EASY METHOD
BUT SCREWED UP WHILE UPDATING IT SO PLZ PLZ HELP ME OUT
THE DEVICE BOOTS BUT ALL THE APP CRASHES :crying::crying:
VR.gtmini said:
The attached image shows mt6577 Hardware, can u provide the Soc details please
Click to expand...
Click to collapse
VR.gtmini said:
one month gone past but the op seems to be in caves or has bricked the device
Click to expand...
Click to collapse
sorry to make you wait. I'm a last grader university student, and final project stuffs have got me pinned down. Hope you understand
Actually the SoC is MT8317. For some god-knows reason Mediatek have made this SoC with signatures similar to MT6577. But somehow CPU tweaker correctly detects the SoC (MT8317). Maybe it's the CPU-Z bug?
unknown_world said:
Hi, Can any one upload Lenovo ideatab A1000 system.img
Click to expand...
Click to collapse
zod0070 said:
CAN ANY BODY PROVIDE ME A STOCK ROM OF THIS DEVISE
I HV ROOTED SUCCESSFULLY BY A VERY EASY METHOD
BUT SCREWED UP WHILE UPDATING IT SO PLZ PLZ HELP ME OUT
THE DEVICE BOOTS BUT ALL THE APP CRASHES :crying::crying:
Click to expand...
Click to collapse
I'm uploading the modified .img. Let's pray my old HSPA modem won't catch fire by the morning.
vidyadhara said:
in step 20, it appears you are writing to a /bin directory on the android system. However such a directory is not visible either through shell or the system telnet account.
Do I need to understand something else about android to make sense of this.
regards
vidya
Click to expand...
Click to collapse
I think you got it wrong. The write process does not take place on the device. It's on the loop-mounted .img in /mnt/a1000 on your computer (step 18-19). Cheers!
Here's the ALREADY BUSYBOX-ED .img for Ideapad A1000-G 4GB EDGE version. Hope it helps :
www dropbox com/s/rmpnz7c285t5sqz/system.7z
sammymaddog said:
Here's the ALREADY BUSYBOX-ED .img for Ideapad A1000-G 4GB EDGE version. Hope it helps :
www.dropbox.com/s/rmpnz7c285t5sqz/system.7z
Click to expand...
Click to collapse
Thanks for coming back, could u post the MD5 of the system.7z & system.zip.
Also could u provide simple way/steps to directly flash this .img without extracting existing stock system image
My tab A1000-G
do you have stockROM for lenovo A1000G
I need this :crying:
raffly said:
do you have stockROM for lenovo A1000G
I need this :crying:
Click to expand...
Click to collapse
Don't worry, the above link is a stock Lenovo A1000 G ROM, but with pre-root files having no superuser app. Just extract the .7z file
System.7z MD5: 658CA71AC8A230B244F267513857F9A5

launcher ?

Tryex to Change the launcher out for lawn chair...however b i still get that stupid Walmart button ! Must i really root and deblout ? Tryed to disable the stock launcher but no go !
first you need the fastboot driver software: MTK Fastboot Drivers: https://online.mediatek.com/Public Documents/MTK_Android_USB_Driver.zip
more info on how to install driver software here: https://forum.xda-developers.com/wa.../how-rooted-walmart-onn-tablets-twrp-t4011659
then get adb: ADB and Fastboot: https://www.xda-developers.com/what-is-adb/
copied from: https://forum.xda-developers.com/android/development/amazing-temp-root-mediatek-armv8-t3922213
Download the current mtk-su zip file to your PC and unzip it. Inside will be 2 directories: 'arm' & 'arm64' with an 'mtk-su' binary in each. Pick one for your device. Differences between the flavors:
arm64: 64-bit kernel and userspace
arm: 32-bit userspace on a 64-bit or 32-bit kernel (will also work in 64-bit userspace)
Connect your device to ADB and push mtk-su to your /data/local/tmp folder
i just used the arm not arm64 that seemed to do the trick.
Code:
adb push path/to/mtk-su /data/local/tmp/
Open an adb shell
Code:
adb shell
Change to your tmp directory
Code:
cd /data/local/tmp
Add executable permissions to the binary
Code:
chmod 755 mtk-su
At this point keep your device screen on and don't let it go to sleep. Run the command
Code:
./mtk-su
keep this terminal/command prompt session open then go to...
download this batch file this user made in this post: https://forum.xda-developers.com/wa...s-general/root-walmart-bloat-remover-t4011639
open it inside making sure it is in your adb folder.
it will remove the sams club, walmart app etc.
mine did not remove the walmart button BUT a user posted on how to do so in the comments this is how you do so.
cd into your directory for adb to do so just open cmd/terminal window type this without quotes "cd filepath" replace filepath with where your adb folder is i usually just drag my folder into my terminal/cmd window and it should just put the proper directory into the window.
now type
adb shell
settings put secure sysui_nav_bar "space,back;home;recent,space"
if that does not work also try going into that window you have open with mtk-su and run
settings put secure sysui_nav_bar "space,back;home;recent,space"
sorry if this post is not descriptive enough first post so go easy on me dont hate me too much just trying to help if you have any questions about this that are confusing please ask ill try to fix them trying to help another user of this tablet as i think that the bloatware on these android tablets is ridiculous and makes the experience terrible so id like to help in anyway possible. Thank you.
Slys13 said:
Tryex to Change the launcher out for lawn chair...however b i still get that stupid Walmart button ! Must i really root and deblout ? Tryed to disable the stock launcher but no go !
Click to expand...
Click to collapse
You can use Custom Navigation Bar without root to remove the Walmart button, but I recommend root so you could use QuickSwitch, and some root tweaks with Lawnchair.
Pix12 said:
You can use Custom Navigation Bar without root to remove the Walmart button, but I recommend root so you could use QuickSwitch, and some root tweaks with Lawnchair.
Click to expand...
Click to collapse
I installed that custom navigation app .apk from a third party website because playstore said app was not compatible with device still right away it asks for root, xposed, or to conect to computer to grant permission when I did use the comand prompt and input the command it said device was not compatible. Cool idea though
Sent from my 100015685-E using Tapatalk

Categories

Resources